Ssh управління обмеженнями доступу до сервера по ssh, rtfm linux, devops і системне

Ssh управління обмеженнями доступу до сервера по ssh, rtfm linux, devops і системне
Наведені приклади підходять для всіх серверів з SSH.

Перший варіант - обмежити доступ до сервера за допомогою фаєрвола, наприклад - IPFW. Для цього, в файлі конфігурації, заданому у файлі /etc/rc.conf у вигляді рядка:

додаємо запис такого виду:

$ Cmd 00280 allow tcp from ALLOWED_IP to me 22 in via $ pif

де ALLOWED_IP - це IP сервера, з якого треба хотів дозволити доступ до сервера.

Однак, є й інші способи, що дозволяють налаштувати більш гнучкі правила. Полягають вони в установках обмежень через файл настройки самого демона ssh - / etc / ssh / sshd_config.

Ось деякі з найбільш корисних властивостей цього файлу.

Дозволимо доступ тільки з локальної мережі:

Не найкращий варіант дозволити віддалений доступ під користувачем root. закриємо його (під FreeBSD він і так закритий):

Можна дозволити доступ тільки певним користувачам:

AllowUsers setevoy tester otheruser

Або дозволити доступ тільки певній групі:

AllowGroups wheel ssh

створимо певну групу, якій буде доступ до ssh:
#pw groupadd ssh
# Pw groupshow ssh
ssh: *: 1003:

і додамо в неї користувачів tester і setevoy:
#pw groupmod ssh -m tester setevoy
# Pw groupshow ssh
ssh: *: 1003: tester, setevoy

заодно перевіримо всі групи користувача:
# Id setevoy
uid = 1001 (setevoy) gid = 1001 (setevoy) groups = 1001 (setevoy), 0 (wheel), 1003 (ssh)

А можна заборонити доступ певним користувачам:

DenyUsers setevoy tester otheruser

Або заборонити доступ цілій групі:

Ще варіант - змінити стандартний порт SSH. це зменшить активність деяких ботів, можна вказати кілька портів:

Port 2222
Port 2525

Корисно підредагувати параметр часу очікування введення пароля, за замовчуванням цілих 2 хвилини:

Розірвемо з'єднання, якщо немає активності більше 20 хвилин:

ClientAliveInterval 1200
ClientAliveCountMax 0

Так само, його можна поставити і в вигляді:

Тобто спочатку максимальне число сесій 5, якщо це число перевищується, то половина з'єднань буде відкинуто (50%) і з ростом числа сесій все більше число з'єднань буде відкидатися, і, нарешті, якщо число сесій перевищить 10, то всі подальші з'єднання до sshd будуть відсічені . Будьте обережні з цим параметром.

Після будь-яких змін в / etc / sshd_config перезавантажте демон:

# /etc/rc.d/sshd onerestart
Stopping sshd.
Starting sshd.