Как я могу разрешить аутентификацию по паролю SSH только с определенных IP-адресов?

Я бы хотел разрешить аутентификацию по паролю SSH только из определенной подсети. Я вижу возможность запретить его глобально в /etc/ssh/sshd_config:

# Change to no to disable tunnelled clear text passwords#PasswordAuthentication yes

Есть ли способ применить эту конфигурацию к выбранному диапазону IP-адресов?

Используйте Match блок в конце от /etc/ssh/sshd_config:

# Global settings…PasswordAuthentication no…# Settings that override the global settings for matching IP addresses onlyMatch address 192.0.2.0/24    PasswordAuthentication yes

Затем попросите службу sshd перезагрузить свою конфигурацию:

service ssh reload

вы можете добавить:

AllowUsers user1@192.168.*.*, user2@192.168.*.*

это изменяет поведение по умолчанию, действительно запрещая всем другим пользователям доступ ко всем хостам.Блок совпадений доступен на OpenSSH версии 5.1 и выше.