Носки с динамическим туннелем Golang SSH5

Я пытаюсь использовать ssh для динамической переадресации портов на socks5, используя библиотеку golang.org/x/crypto/ssh.
Я хочу быть как библиотека: 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
}

0 ответов

Другие вопросы по тегам