Як обмежити можливості входу користувачів на Ubuntu

Система Ubuntu має широкий спектр інструментів для ефективного керування доступом користувачів. Правильне налаштування обмежень входу є критично важливим для забезпечення безпеки системи, запобігання несанкціонованому доступу та відповідності вимогам безпеки. Ця стаття надає повну інструкцію з налаштування різноманітних обмежень входу в Ubuntu, щоб досягти необхідного рівня захисту.

Навіщо обмежувати можливості входу?

Впровадження обмежень на вхід користувачів дає кілька важливих переваг:

  • Підвищення безпеки: Мінімізація ризиків несанкціонованого доступу та захист конфіденційної інформації.
  • Відстеження дій: Забезпечення можливості відстеження дій користувачів, що сприяє підвищенню відповідальності.
  • Відповідність стандартам: Дотримання галузевих стандартів безпеки, таких як HIPAA та PCI DSS.
  • Керування ризиками: Зменшення вразливостей, пов’язаних з неналежним доступом.
  • Детальний контроль: Налаштування доступу користувачів до конкретних розділів системи та програм.

Обмеження доступу до графічного інтерфейсу

Поширений метод обмеження доступу користувачів – це запобігання їхньому входу через графічний інтерфейс (GUI).

1. Деактивація служби LightDM

LightDM є менеджером дисплея, який відповідає за відображення графічного екрану входу. Щоб його деактивувати, виконайте наступні кроки:


$ sudo systemctl disable lightdm
$ sudo systemctl stop lightdm

2. Модифікація файлу /etc/pam.d/common-auth

Відкрийте файл /etc/pam.d/common-auth за допомогою текстового редактора, наприклад nano:


$ sudo nano /etc/pam.d/common-auth

Додайте наступний рядок у файл:


auth required pam_succeed_if.so user != root quiet

Ця зміна змусить всіх користувачів, окрім root, проходити автентифікацію через командний рядок.

Обмеження доступу до командного рядка

Запобігання доступу до командного рядка робить неможливим вхід незалежно від наявності графічного інтерфейсу.

1. Зміна оболонки користувача

Щоб змінити стандартну оболонку користувача (зазвичай /bin/bash) на оболонку, яка забороняє вхід, виконайте:


$ sudo usermod -s /sbin/nologin <ім'я_користувача>

Замініть <ім'я_користувача> на ім’я користувача, доступ якого потрібно обмежити.

2. Редагування файлу /etc/shells

Відкрийте файл /etc/shells за допомогою текстового редактора:


$ sudo nano /etc/shells

Видаліть або закоментуйте усі оболонки, доступ до яких не повинен мати користувач. Наприклад, видалення рядка:


/bin/bash

Налаштування обмежень з використанням sudo

Команда sudo надає користувачам можливість виконувати команди з правами адміністратора (суперкористувача).

1. Налаштування файлу /etc/sudoers

Відредагуйте файл /etc/sudoers за допомогою редактора visudo:


$ sudo visudo

Додайте рядок, що обмежує права користувача ім'я_користувача певними командами:


ім'я_користувача ALL=(ALL) /usr/bin/команда1, /usr/bin/команда2

Замініть ім'я_користувача, команда1 та команда2 на відповідні значення.

2. Застосування sudoers.d

Файли у каталозі /etc/sudoers.d також використовуються для визначення правил sudo. Можна створити окремий файл для кожної групи користувачів чи окремого користувача.

Наприклад, щоб обмежити права групи admins і заборонити їм виконувати команду rm -rf, створіть файл admins у каталозі /etc/sudoers.d:


%admins ALL = !/bin/rm -rf

Перевірка застосованих обмежень

Після налаштування обмежень, проведіть їхню перевірку:

  • Перезавантажте систему та спробуйте ввійти під обмеженим користувачем.
  • Спробуйте виконати команди або дії, які були заборонені.

Якщо обмеження працюють правильно, користувач не зможе виконувати заборонені дії.

Підсумки

Ефективне обмеження можливостей входу користувачів є важливим аспектом забезпечення безпеки та відповідності вимогам в Ubuntu. Цей посібник надає покрокові інструкції щодо налаштування параметрів входу, що дозволяє запобігти несанкціонованому доступу і відповідати вимогам безпеки. Ретельно дотримуйтесь цих кроків, щоб захистити дані та ресурси вашої системи Ubuntu.

Питання та відповіді

П: Які наслідки деактивації LightDM?

В: Це вимкне графічний інтерфейс для входу, що змусить користувачів входити через термінал.

П: Як налаштувати виняток з обмежень для конкретного користувача?

В: Створіть файл .pam_environment в домашньому каталозі користувача та додайте:


TMOUT=0

П: Що відбудеться, якщо користувач спробує ввійти після налаштування обмежень?

В: Користувач побачить повідомлення про помилку і не зможе отримати доступ до системи.

П: Як перевірити, чи діють обмеження для конкретного користувача?

В: Скористайтеся командою sudo visudo -u ім'я_користувача, щоб переглянути правила sudo для цього користувача.

П: Як повністю заблокувати користувача?

В: Видаліть користувача за допомогою команди sudo userdel ім'я_користувача.

П: Які ще інструменти можна використовувати для обмеження входу?

В: Можна застосовувати такі інструменти, як Fail2ban та DenyHosts.

П: Як застосувати обмеження на кількох системах одночасно?

В: Рекомендується використовувати засоби керування конфігурацією, такі як Ansible або Puppet.

П: Чи є графічні інтерфейси для налаштування обмежень входу?

В: Існують інструменти, наприклад, Synaptic Policy, що надають графічний інтерфейс для керування параметрами входу.

П: Які додаткові поради щодо посилення безпеки входу?

В: Застосовуйте двофакторну автентифікацію, надійні паролі, а також моніторинг спроб входу за допомогою журналювання та syslog.