在我的办公室 Windows XP 笔记本电脑上,我使用一个名为 Bitvise Tunnelier 的程序来建立到内部 MySQL 数据库的 ssh 隧道。在 Tunnelier 程序中,我还需要提供公司 http 代理服务器的地址才能建立隧道。
在我的个人 Mac 笔记本电脑上,我使用 Cisco Anywhere 客户端建立与公司网络的 VPN 连接。但我无法使用 ssh 建立到 mysql 数据库的 ssh 隧道。如何在 ssh 命令中指定代理服务器地址?
补充一点,当我使用办公室笔记本电脑时(无论是在家里还是办公室),我可以成功 ping 到 Tunnelier 程序中指定的服务器地址。但我无法使用我的 Mac 机器 ping 同一台服务器(即使通过 VPN 连接)。
所以基本上我无法理解发生了什么以及我可以采取什么步骤来调试这个问题。
答案1
但我无法使用 ssh 建立到 mysql 数据库的 ssh 隧道。如何在 ssh 命令中指定代理服务器地址?
SSH 隧道的使用方法有很多种。我毫无顾忌地使用它们,甚至用于疯狂的事情。我发现它们在 OSX 和 Linux 上的运行方式完全相同。我知道如果您尝试打开 1000 以下的本地端口号(这需要管理员权限),您可能会遇到问题。
您可以告诉 ssh 打开一个 SOCKS 代理到另一端,本地端口为 5000,如下所示:
ssh [email protected] -D 5000
打开该代理后,你可以告诉本地客户端使用 SOCKS 代理127.0.0.1:5000。
我通常使用 ssh 进行端口转发,如下所示:
ssh [email protected] -L 5000:192.168.1.10:3389
在这种情况下,我会尝试打开一个本地端口 (127.0.0.1:5000),然后指向本地客户端,然后该客户端将连接到本地 IP 192.168.1.10 上的 RDP 端口(按照惯例)。thebowlingalley.com。这就是我如何远程桌面进入 Windows 机器。如果您的远程 SSH 主机可以理解它们,您也可以使用 DNS 名称而不是 IP。因此,最后一个看起来像:
ssh [email protected] -L 5000:donnyscomputer:3389
我想这回答了你的问题??