如何在不使用其他软件的情况下将 SSH 访问限制为主机名而不是 IP 地址?

如何在不使用其他软件的情况下将 SSH 访问限制为主机名而不是 IP 地址?

我目前正在设置和强化运行 Debian 11 的小型 VPS。我已经关注本指南,这涉及一些基本的安全措施。但是,我还想限制 SSH 对我家 IP 地址的访问,也许还有 1 或 2 个其他 IP 地址。问题是我的家庭 IP 随时可能发生变化。

我想要将一个或多个主机名(而不是 IP 地址)列入白名单,以便通过 SSH 进行访问。这样,每当我的家庭 IP 发生变化时,我只需更新我的某个域的 DNS 记录,即可恢复对 VPS 的访问。

如何在不安装其他软件包的情况下在 Debian 中执行此操作?非常感谢。

—科林

答案1

尝试 hosts.deny 和 hosts.allow 文件。您可以同时使用 ip 通配符以及 dns 名称通配符。

#FILE: /etc/hosts.deny(it will deny requests from 192.168.1.* and *.abc.com for ssh)
sshd : 192.168.1. , .abc.com

#FILE: /etc/hosts.allow(it will allow requests from 192.16.1.* and *.myabc.com for ssh)
sshd : 192.16.1. , .myabc.com

相关内容