如何将传入的 SSH 连接请求限制到一个接口?我正在使用 Ubuntu Server 10.04 LST。
我想将 SSH 访问权限锁定在一个接口上,因为我将服务器用作家庭网络的网关。一个接口连接到 DSL 调制解调器/路由器,另一个接口连接到家庭网络。我只想允许从家庭网络内部访问 SSH。
在这种情况下,将 SSH 限制到一个 IP 是否足够?还是我必须将其锁定到一个接口?
答案1
在以下文件中:
/etc/ssh/sshd_config
你会看到如下一行:
#ListenAddress 0.0.0.0
这条注释掉了,但这是默认设置,列出所有用于 ssh 请求的 IP 地址。您可以将其更改为您想要接受连接的接口的 IP 地址,这样只有该 IP 地址才会接受 ssh 连接:
ListenAddress 111.222.111.222
更改后重新启动 sshd 服务。
答案2
尝试安装防火墙并仅允许一个接口上的 SSH。我首选的是 Shorewall,它是 Ubuntu 上的可安装包。您需要先对其进行配置才能启动,但它有详尽的文档,并附带了几个示例配置。
我使用几乎封闭的防火墙,只打开需要的端口。如果您只想限制允许 SSH 的接口,则可以对其他接口上的 ssh 使用 REJECT 或 DROP 操作。如果您正在构建防火墙,我建议至少限制面向 Internet 的接口上的访问。