是否可以让 sshd 仅在某些端口上接受密码?

Lau*_*ves 24 ssh

我知道可以sshd通过使用多个Port指令来监听多个端口。但是,是否可以独立调整每个端口的设置?特别是,是否可以让一个端口允许密码验证,而另一个端口不允许?

Lau*_*ves 34

这可以通过Match指令完成。

在 中/etc/sshd_config,声明多个端口:

Port 22
Port 2222
Run Code Online (Sandbox Code Playgroud)

然后,在文件的最后,添加以下内容:

Match LocalPort 2222
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)

除了在端口 2222 上禁用密码验证外,所有设置都将在端口之间共享。


Joh*_*ohn 0

我不相信是一个sshd进程,但设置第二个配置文件并运行两个sshd侦听器应该相当容易,一个在密码端口上,另一个在非密码端口上。

  • 我发现实际上有一种方法可以使用 sshd 的单个实例来执行此操作。请参阅我发布的答案。不管怎么说,还是要谢谢你。 (4认同)