Запретить доступ к SSH через IP сервера

Запретить доступ к SSH через IP сервера

Всегда есть много ботов, пытающихся получить доступ к каждому VPS, даже если он только что зарегистрирован, и неважно, сколько IP-адресов вы забаните, они будут продолжать попытки.

так могу ли я просто разрешить доступ по ssh, введя домен, который указывает на мой vps, вместо ввода IP? что-то похожее на то, что работает virtualhosts.

Я сомневаюсь в этом, так как даже при подключении с вводом домена он разрешает указанный IP-адрес, поэтому он не подключится, если я отклоню соединение по IP...

так есть ли другой способ воплотить мою идею в жизнь?

решение1

Я не совсем уверен, что вы имеете в виду, но да, вы можете определить разрешенные клиентские хосты по имени хоста.

Вариант 2 — использовать AllowUsersв sshd_config, он поддерживает необязательное имя хоста, здесь мы разрешаем кому-либо доступ только из foo.bar.com:

AllowUsers [email protected]

(ssh_config(5)документирует разрешенные шаблоны имен хостов)

Другой вариант — использовать hosts.allowи hosts.deny(tcpwrapper). Чтобы разрешить ssh только из foo.bar.com.

# hosts.allow
sshd: foo.bar.com

# hosts.deny
sshd: ALL

Я думаю, что, по крайней мере, sshdследует проверить, что обратный поиск домена клиентского IP-адреса совпадает с прямым поиском для этого имени, но я в этом не уверен.

Связанный контент