运行两个SSH服务器

上面提到的标题可能吗? 我想为SFTP客户端运行一个SSH服务器(在ex 2121的某个其他端口上),并且希望为SSH客户端运行其他SSH服务器,这些SSH客户端只能使用密钥login。 任何人有想法如何实现这一点?

TNX

使用单独的configuration文件并启动指定configuration文件的服务器之一。 要使用其他文件,请使用-f选项,然后使用您要使用的configuration文件。

如果你想持久化,你将需要创buildinit.d脚本的一个副本,启动sshd并修改它以使用不同的pid和新的configuration文件。 更现代的发行版使用systemd ,它使用不同的控制文件,为此您需要创build新的副本。

有可能通过单个sshd和Match块来实现你想要的。 (如joschi所述)。 您需要将其他端口和/或地址添加到configuration中。 匹配只会允许一些属性被改变。 请参阅man sshd_config命令输出的sshd.config文档。 你匹配的行可能看起来像:

 Match LocalPort 1022 

对于BillThor发布的解决scheme(使用两个单独的configuration文件),您可能需要检查sshd_config(5)中的Match指令,该指令可以针对每个用户/组/客户端IP地址应用不同的configuration。