首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >允许多个远程连接到ssh动态转发端口

允许多个远程连接到ssh动态转发端口
EN

Unix & Linux用户
提问于 2014-07-12 14:46:07
回答 2查看 3.4K关注 0票数 4

假设我有三台机器

我要去的服务器

B-我所来自的客户

C-B子网中的另一个客户

现在,通过在客户机B中执行此操作,为端口1235设置了动态端口转发。

代码语言:javascript
复制
ssh -D 1235 a@A

其中,A是服务器A上的用户名。

现在,我只能从B连接到这个端口1235,因为它绑定到本地主机。如果我将命令修改为

代码语言:javascript
复制
ssh -D C:1235 a@A

然后只有C才能连接到B的端口1235,而不能连接B本身。还有第三种选择,那就是

代码语言:javascript
复制
ssh -D 0.0.0.0:1235 a@A

这样B和C都可以连接到B的端口1235,但是B和C子网中的所有其他机器也可以连接到B和C。我真正想要的是一种绑定动态端口的方法,只允许B和C连接到它,而不是任何其他机器。我怎样才能做到这一点?

EN

回答 2

Unix & Linux用户

发布于 2014-07-12 14:57:36

使用带有SSH的-g选项,然后将防火墙规则配置为只允许C连接到端口。

代码语言:javascript
复制
-g      Allows remote hosts to connect to local forwarded ports.

然后命令如下:

代码语言:javascript
复制
ssh -g -D 1235 a@A
票数 2
EN

Unix & Linux用户

发布于 2014-07-12 15:12:57

据我所知,SSH本身不会在任何情况下检查源IP地址(它们无论如何都可能被欺骗)。因此,您可能必须在B上使用数据包筛选器(例如iptables)并设置它,以便具有目的地端口1235的传入TCP数据包必须有B作为它们的源地址。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/144181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档