为什么我无法在多个端口上启用 SSH?

为什么我无法在多个端口上启用 SSH?

为了训练我的网络技能,我正在尝试让 Raspberry Pi 侦听端口22和上的 ssh 连接2222。我的最终目标是练习使用,ufw以便仅允许22来自我的 WAN 的端口和2222来自以太网连接的端口上的连接。目前,ufw已禁用,我只是尝试设置sshd侦听上述两个端口。以下是我的/etc/ssh/ssh_config文件中唯一未注释的行:

Host *
    Port 22
    Port 2222
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes

但是,无论原始计算机如何,Connection refused尝试在 port 上进行 ssh 时都会收到错误。2222由于某些我无法解释的原因,ssh 似乎没有监听端口22

paupaulaz@pi2:~ $ ss -tlnp | grep 22
LISTEN    0         128                0.0.0.0:22               0.0.0.0:*
LISTEN    0         128                   [::]:22                  [::]:*

我当然尝试了重新启动 sshd 和重新启动 Raspberry Pi,并且我没有用户特定的 ssh 配置文件。

非常感谢您的帮助!

答案1

ssh_config是SSH的配置文件客户。在那里,该Port选项告诉它要连接到哪个端口。对于不同的服务器,这可能会有所不同,因此您可能希望在一个Host块中指定一个端口,在另一个块中指定另一个端口。但一次只能与一个端口建立连接,所以我认为后一个指令会生效。 (不过记得不太清楚。)

如果你想使服务器侦听特定端口或多个端口,您需要将Port指令放入(d 代表守护程序)。我认为没有指令,但有.sshd_configHostsshd_configMatch Host

(但是,如果您想在一个端口上接受来自某些源主机的连接,并在另一端口上接受来自其他主机的连接,则可能需要使用防火墙/数据包过滤器。)

相关内容