Linux 如何在AllowTcpForwarding设置为no的情况下进行ssh转发?
有一些开发需要在一些远程设备上完成。幸运的是,我可以访问shell,但我需要通过一个将AllowTcpForwarding设置为false的网关 我在文档中看到了一个高峰,上面写着: AllowTcpForwarding指定是否允许TCP转发。这个 默认值为“是”。请注意,禁用TCP转发不会 提高安全性,除非用户也被拒绝shell访问,因为 可以随时安装自己的货代 我将如何安装(或建造)自己的货运代理?我这里的目标是通过SSH设置一个,并将其绑定到一些本地端口,这些数据通过SSH提供,通过网关提供,然后绑定到实际运行代码的开发框 我知道我可以通过执行以下操作ssh到我的远程机箱:Linux 如何在AllowTcpForwarding设置为no的情况下进行ssh转发?,linux,git,shell,ssh,portforwarding,Linux,Git,Shell,Ssh,Portforwarding,有一些开发需要在一些远程设备上完成。幸运的是,我可以访问shell,但我需要通过一个将AllowTcpForwarding设置为false的网关 我在文档中看到了一个高峰,上面写着: AllowTcpForwarding指定是否允许TCP转发。这个 默认值为“是”。请注意,禁用TCP转发不会 提高安全性,除非用户也被拒绝shell访问,因为 可以随时安装自己的货代 我将如何安装(或建造)自己的货运代理?我这里的目标是通过SSH设置一个,并将其绑定到一些本地端口,这些数据通过SSH提供,通过网关提
ssh -t user1@gateway ssh user2@devbox
但显然,pycharm中没有此选项。我必须在当地开一个这样的港口
ssh -p 12345 localhost
(or variant)
请帮我接user2@devbox. 这将允许我将远程解释器配置为使用
localhost
上的端口12345
连接到远程框。如果您有合法的需要通过此网关服务器进行隧道连接,您应该试着与网关管理员交谈,以找到一种可接受的方式来完成工作。找到一种解决服务器配置问题的方法不会改变这样一个事实,即您可能违反了预期遵循的策略。尽管如此:
客户端和服务器之间的SSH连接支持多个独立的数据流,称为通道。端口转发使用名为的通道类型。端口转发操作包括四个部分:
一种可行的方法是,自定义ssh客户端为每个转发的连接打开一个通道,然后在远程系统上调用类似的程序。Netcat需要连接到正向操作的目标,然后在其标准输入/输出和正向目标之间中继数据。如果无法在网关上安装netcat,可以使用perl、python、java、C或网关上可用的任何其他语言编写自定义程序,并允许打开TCP连接。网关上可能安装了一些程序,可用于将stdio转发到远程网络端口。例如,查找
corkscrew
、netcat
、nc
、socat
或proxytunnel
然后,如果网关上有Perl可用,您可以使用我不久前编写的一个可用的行程序来解决相同的问题(代码已解释)
最后,您还可以使用
ProxyCommand
设置或PyCharm使用的一些等效设置运行到目标机器的SSH连接。编程问题也是如此,而不是关于使用或配置Linux的问题。SuperUser.com或unix.stackexchange.com是回答此类问题的更好地方。标题是allowtcpfrowarding
,该问题指的是AllowAgentForwarding
。这是一篇内容丰富的帖子。谢谢你提供的全面信息。