Кількість з'єднань SSH на одній машині Linux


14

Я приземлився в ситуації, коли мені довелося отримати доступ до машини Linux через puTTY. Я робив різні спроби до SSH, але не зміг підключитися до машини. Потім я зрозумів, що мій колега отримує доступ до тієї самої машини Linux, що і користувач root, і мені теж хотілося отримати доступ як користувач root. Я попросив його вийти з системи, щоб я міг увійти як root. Чи є спосіб обмежити кількість входу в SSH в ОС Linux? Це якась функція захисту, яка відрізняє ОС на базі Windows з ОС на базі Linux.


1
Ти кажеш, що ти можеш увійти як root, коли він вийшов? І ви хочете знати, як і де може бути встановлена ​​ця межа?
Метт

так, я можу увійти як root, як тільки він вийшов
turmoilawaits

Відповіді:


8

Так, можна обмежити кількість одночасних сеансів входу, хоча більшість дистрибутивів Linux не встановлюють таких обмежень у своїх налаштуваннях за замовчуванням.

Linux є належною багатокористувацькою системою за дизайном, і зазвичай у вас не повинно виникнути проблем із одночасним сеансом SSH для одного користувача.

Сервер SSH може накладати такі обмеження за допомогою MaxSessionsпараметра у файлі конфігурації. Через PAM ви можете накладати такі межі, як і інші, які вже вказали.


Я використовую Cent OS 6.4. Чи обмежує це паралельні сеанси SSH?
turmoilawaits

Не за замовчуванням.
HBruijn

7

У вас, ймовірно, встановлені /etc/security/limits.confтакі обмеження

root hard maxlogins 1

Змініть ліміт (1) на щось вище, якщо потрібно.


Цей параметр не впливає на паралельні входи SSH в Centos6
bbaassssiiee

Це межа, яку PAM підніме. Якщо ви дозволяєте ввійти в систему через клавіші ssh, то ...
Мт

2

Спроба переконати окремий sshdдемон обмежити кількість сеансів загрожує лазівками. Такі речі, як MaxSessionsобмеження чогось іншого, ніж те, про що йдеться в ОП. І sshdігнорує limits.confна linux (аналогічно login.confна FreeBSD), якщо ви не налаштуєте речі належним чином для маршрутизації всіх вхідних сеансів через PAM та не використовуєте належним чином налаштований модуль PAM для перевірки речей, таких як limit.conf. Важко змусити це правильно працювати.

З іншого боку, якщо ви не починаєте sshdяк окремий демон, то ви можете використовувати обмежувальні функції у "речі", яка породжується sshdна вимогу.

Наприклад, inetdі xinetdмають функцію обмеження підключення (яка зазвичай за замовчуванням не застосовує жодного обмеження кількості дітей, що розщедрилися). У класиці inetdйого називають "макс-дитина". З xinetd, знайдіть instancesрегулятор налаштування. Наприклад, inetdстиль:

ssh  stream  tcp  nowait/3  root  /usr/sbin/sshd  sshd -i -4

Це обмежує кількість одночасних ssh-з'єднань до 3.

Для тих, хто так схильний, systemdможна замінити функцію inetd, і я вважаю, що існує спосіб обмежити кількість примірників служби. Вправа, що залишилася читачеві (або додайте коментар із деталями!).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.