【问题标题】:OSX SSH to server through SOCKS5 proxyOSX SSH 通过 SOCKS5 代理服务器
【发布时间】:2016-03-24 18:08:00
【问题描述】:

我正在尝试通过 SOCKS5 代理连接到服务器。我尝试使用 -o 并编辑我的 ~/.ssh/config 文件,但无济于事。

这是我尝试过的 SSH 命令:

ssh -v -o 'ProxyCommand=nc -X 5 -x proxyhost:1080 %h %p' -p22 username@serverhost

问题似乎是我的代理主机需要用户名和密码,而我看不到如何在 ProxyCommand 中传递用户/密码。

【问题讨论】:

    标签: macos ssh proxy socks


    【解决方案1】:

    您需要将用户名和密码传递给正在做代理的nc 命令。关于它的所有内容都写在ncat(1)的手册页中:

    --proxy-auth user[:pass](指定代理凭据)。

    在连接模式下,提供将用于连接到代理服务器的凭据。在侦听模式下,提供连接客户端所需的凭据。与 --proxy-type http 一起使用时,表单应为 user:pass。对于 --proxy-type socks4,它应该只是一个用户名。

    【讨论】:

    • 谢谢,但我认为这行不通... ncat 支持 http 连接和 socks4 代理 -- 不支持 socks5。我将寻找 ncat 的 OSX 版本,但据记录它不支持 socks5。在OSX上,nc是netcat工具,支持socks5,但好像不支持proxy auth
    • 更新:成功(终于)早期版本的 ncat 不支持 socks5(在线手册页较旧)但 v7+ 支持... 1. ncat 默认在 OSX 上不可用,并且不是直接在自制软件中,您可以brew install nmap 获取流行的网络扫描仪应用程序,并且安装包括支持 socks5 的 ncat 2. ssh 字符串(或 ~/.ssh/config)应该是:ssh -v -o 'ProxyCommand=ncat --proxy-type socks5 --proxy proxyhost:proxyport --proxy-auth proxyuser:proxypass %h %p' -p22 username@serverhost
    猜你喜欢
    • 2020-10-12
    • 1970-01-01
    • 2016-08-20
    • 2020-10-23
    • 2019-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多