Во время установки домашнего сервера (рабочий Kubuntu 10.04), я создал admin
пользователь для выполнения задач администрирования, которые могут потребовать размонтированного дома. У этого пользователя есть корневой каталог на корневом разделе поля.
Машина имеет стоящий с Интернетом сервер SSH, и я ограничил группу пользователей, которые могут соединиться через SSH, но я хотел бы ограничить его далее путем создания admin
только доступный от моего ноутбука (или возможно только от локального диапазона 192.168.1.0/24).
Я в настоящее время имею только
AllowGroups ssh-users
со мной и admin
как члены ssh-users
группа.
То, что я хочу, является чем-то, что работает как Вы, может ожидать, что эта установка будет работать (но она не делает):
$ groups jonathan
... ssh-users
$ groups admin
... ssh-restricted-users
$ cat /etc/ssh/sshd_config
...
AllowGroups ssh-users ssh-restricted-users@192.168.1.*
...
Существует ли способ сделать это? Я также попробовал это, но это не работало (admin
мог все еще войти в систему удаленно):
AllowUsers admin@192.168.1.* *
AllowGroups ssh-users
с admin
член ssh-users
.
Я также согласился бы только с разрешением admin
для входа в систему с ключом и запрещающими логинами пароля но я не мог найти общую установку для sshd
; существует установка, которая требует root
логины для использования ключа, но не для обычных пользователей.
Стандарт pam_access.so
Модуль PAM может ограничить логины удаленным адресом и может быть применен ко всем сервисам, не просто ssh
.
Это должно быть возможное использование Match
директива в sshd_config
. Предотвратить admin
от входа в систему вне Вашей локальной сети что-то вроде этого должно работать:
Match User="admin",Host="!192.168.1.0/24"
MaxAuthTries 0 # a hack — is there a better way?
Для отключения встроенной аутентификации по паролю ssh для пользователя (хотя, если я понимаю документацию правильно, Вы не можете настроить аутентификацию PAM этот путь, только встроенная аутентификация по паролю sshd):
Match User="admin"
KbdInteractiveAuthentication No