将 SSH 限制为一个接口

wow*_*ick 11 ssh sshd ubuntu network-interface

如何将传入的 SSH 连接请求限制为仅一个接口?我正在使用 Ubuntu Server 10.04 LST。

我想将 SSH 的访问权限锁定到只有一个接口,因为我使用服务器作为到我的家庭网络的网关。一个接口连接到 DSL 调制解调器/路由器,另一个连接到家庭网络。我只想允许访问家庭网络内的 SSH 表单。

在这种情况下将 SSH 限制为一个 IP 就足够了吗?还是我必须将其锁定到一个界面?

Pau*_*aul 13

在以下文件中:

 /etc/ssh/sshd_config 
Run Code Online (Sandbox Code Playgroud)

你会看到这样一行:

#ListenAddress 0.0.0.0
Run Code Online (Sandbox Code Playgroud)

这已被注释掉,但它是默认设置,用于列出 ssh 请求的所有 IP 地址。您可以更改它,使其成为您要接受连接的接口的 IP 地址,因此只有该 IP 地址将接受 ssh 连接:

ListenAddress 111.222.111.222
Run Code Online (Sandbox Code Playgroud)

更改后重新启动 sshd 服务。

  • 这不会限制 SSH 可以运行的接口,只会限制目标 IP 地址。(这可能是 OP 真正想要的。但这不是 OP 要求的。) (4认同)
  • 转发仅指一个接口接收到的数据包必须由另一个接口转发。不需要接受在其目标地址分配到的接口以外的接口上接收的数据包。Linux 使用的模型中,IP 地址属于系统,而不属于接口——所有接口都连接单个主机。 (2认同)