为了训练我的网络技能,我正在尝试让 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_config
Host
sshd_config
Match Host
(但是,如果您想在一个端口上接受来自某些源主机的连接,并在另一端口上接受来自其他主机的连接,则可能需要使用防火墙/数据包过滤器。)