Я попал в ситуацию, когда мне нужно было получить доступ к машине Linux через puTTY. Я делал различные попытки SSH, но не смог подключиться к машине. Затем я понял, что мой коллега обращается к той же машине Linux, что и пользователь root, и я тоже хотел получить доступ как пользователь root. Я попросил его выйти из системы, чтобы я мог войти в систему как root. Есть ли способ ограничить количество входов SSH в ОС Linux? Это какая-то функция безопасности, которая отличает ОС на базе Windows от ОС на основе Linux.
14
Ответы:
Да, можно ограничить количество одновременных сеансов входа в систему, хотя большинство дистрибутивов Linux не устанавливают такие ограничения в своих настройках по умолчанию.
Linux - это подходящая многопользовательская система, и обычно у вас не должно быть проблем с наличием нескольких одновременных сессий SSH для одного и того же пользователя.
Сервер SSH может наложить такие ограничения с помощью
MaxSessions
опции в файле конфигурации. Через PAM вы можете устанавливать такие ограничения, как уже указали другие.источник
У вас, вероятно, есть ограничения, установленные
/etc/security/limits.conf
такИзмените предел (1) на что-то более высокое, если это необходимо.
источник
Попытка убедить автономного
sshd
демона ограничить количество сеансов чревата лазейками. Такие вещи, какMaxSessions
ограничение, ограничивают то, о чем говорит ОП. Иsshd
игнорируетlimits.conf
в linux (аналогичноlogin.conf
во FreeBSD), если вы не настроите все правильно для маршрутизации всех входящих сессий через PAM и не будете использовать соответствующим образом настроенный модуль PAM для проверки таких вещей, как limit.conf. Трудно заставить его работать правильно.С другой стороны, если вы не начинаете
sshd
как отдельный демон, вы можете использовать ограничивающие функции в «вещи», которая появляетсяsshd
по требованию.Например,
inetd
иxinetd
имеют функцию ограничения соединения (которая по умолчанию обычно не устанавливает никаких ограничений на количество разветвленных дочерних элементов). В классикеinetd
это называется «Макс-ребенок». С помощьюxinetd
найдитеinstances
ручку настройки. Например,inetd
стиль:Это ограничивает количество одновременных соединений SSH до 3.
Для тех, кто так склонен,
systemd
может заменить функциюinetd
, и я считаю, что есть способ ограничить количество экземпляров службы. Упражнение оставлено читателю (или добавьте комментарий с подробностями!).источник