我可以使用不同的端口和不同的用户分离 SCP 和 SSH 登录吗?

我可以使用不同的端口和不同的用户分离 SCP 和 SSH 登录吗?

我想将 SCP 分离到与常规端口 22 不同的 TCP 端口上。

使用此端口,用户只能运行 SCP 命令,而不能进行常规 SSH 登录。该用户将无法在端口 22 上进行常规 SSH 登录,反之亦然。

那可能吗?

答案1

只需启动第二个 ssh 守护进程,并使用单独的sshd_配置配置文件,您可以运行两个 sshd 实例,每个实例的配置都不同。

例如,在一个 sshd_config 中使用Port customportAllowUsers username1关键字,并且仅允许用户登录自定义端口username1

在其他 sshd_config 中,例如使用Port 22DenyUsers username1关键字,并且禁止用户在默认 sshd 端口 22 上登录username1


据我所知,scp 长期受到安全问题的困扰,并且限制用户scp仅访问似乎总是不简单的并且需要相当多的解决方法。

因此,Red Hat 完全放弃对 SCP 的支持,如下所述:https://www.redhat.com/en/blog/openssh-scp-deprecation-rhel-9-what-you-need-know 现在提供了一个scp在底层使用 SFTP 协议的版本。

使用关键字将用户限制为仅限 SFTP 在 OpenSSHd 中是本机支持的:

ForceCommand internal-sftp 

所以这也可能是你最好的选择。

相关内容