如何配置允许 SFTP 但不允许 SSH(以启动 bash)的 sshd_config?

如何配置允许 SFTP 但不允许 SSH(以启动 bash)的 sshd_config?

Ubuntu 16 服务器用作 SFTP 服务器。该服务器位于 DMZ VLAN 中。

必须配置该服务器以便:

  • 从外部互联网只能使用 SFTP 登录,但不能使用 ssh(启动 bash)。

  • 从内部网络,必须能够使用 SFTP 和 SSH 登录(以启动 bash)。

sshd为此可以启动两个,每个都有自己的sshd_config文件和自己的端口号。

如何sshd_config配置才能使用 SFTP 登录但不能使用 ssh 登录(启动 bash)?

答案1

注意:我目前无法完全测试这一点 - 希望它能有所帮助

这应该可以通过单个 sshd 实例实现,方法是使用Match服务器文件底部的块sshd_config

Match Address *,!192.168.1.0/24
        ForceCommand internal-sftp

替换192.168.1.0/24为您自己的 LAN CIDR 地址范围。

也可以看看sshd_config 中的 Match 条件块中的 Address 条件如何被否定?

相关内容