linux 端口转发使用代理ip远程访问ssh [已关闭]

9fkzdhlc  于 2023-03-01  发布在  Linux
关注(0)|答案(1)|浏览(159)

**已关闭。**此问题为not about programming or software development。当前不接受答案。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题有关,您可以留下评论,说明在何处可以回答此问题。
6天前关闭。
Improve this question
我正尝试用我的公共IP通过ssh远程访问我的机器。常规的方法是在我的路由器上允许端口转发,然后执行以下操作:ssh ubuntu@myPublicIp,但我的ISP使用CGNAT,所以我无法使用分配给我的公共IP进行端口转发,所以我在AWS示例上使用tinyproxy,并将我的本地计算机连接到代理IP地址,这意味着我通过本地计算机发出的每个请求都要经过代理IP。我的问题是如何在启用了代理的本地Linux机器上设置端口转发,以便使用ssh远程连接到机器,如下所示:ssh ubuntu@我的代理IP.

vc9ivgsu

vc9ivgsu1#

ssh -N -D 1080 ubuntu@myProxyIp

在另一个终端窗口中,现在可以使用SSH连接到本地计算机,并使用-o ProxyCommand选项通过SOCKS代理转发流量。例如,要使用用户名ubuntu连接到本地计算机,请运行以下命令:

ssh -o ProxyCommand='nc -x localhost:1080 %h %p' ubuntu@localhost

此命令告知SSH使用nc命令(Netcat)作为代理连接到本地计算机上的SSH服务。-x localhost:1080选项告知Netcat使用端口1080上的SOCKS代理,%h %p参数是本地计算机上SSH服务的主机名和端口的占位符。
出现提示时,请输入密码以使用本地计算机上的SSH服务进行身份验证。

相关问题