我正在尝试通过使用库 golang.org/x/crypto/ssh 将动态端口转发到 socks5。
我想像图书馆:https
://www.example-code.com/golang/sshTunnel_dpf.asp
例如:连接到 SSH -> 创建 Socks5 -> 发送 http 请求 -> 获取正文 -> 关闭 Socks -> 关闭 SSH 连接.
但是当我连接到 ssh 时,我如何使用这个 ssh 客户端来请求?
我认为与拨号连接(golang.org/x/net/proxy)一起使用,但我做不到。
每个人都可以帮助我吗?
这是我连接ssh的代码:
func Connect(mSSH Models.SSH) ssh.Conn {
sshConfig := &ssh.ClientConfig{
Timeout: time.Second * 5,
User: mSSH.Username,
Auth: []ssh.AuthMethod{
ssh.Password(mSSH.Password),
},
HostKeyCallback: ssh.HostKeyCallback(func(hostname string, remote net.Addr, key ssh.PublicKey) error { return nil }),
}
conn, err := ssh.Dial("tcp", mSSH.Ip+":"+mSSH.Port, sshConfig)
if err != nil {
return nil
}
return conn
}