JavaRush /Курси /Docker SELF /Основи безпеки в Linux

Основи безпеки в Linux

Docker SELF
Рівень 5 , Лекція 0
Відкрита

1. Принципи безпеки в Linux

Безпека в Linux — це перш за все стратегія "мінімізації привілеїв" та надійного контролю доступу. Уявіть Linux як багатошарову захист фортеці: чим далі ви заходите, тим більше перевірок. Але для початку розберемо три основи, на яких тримається безпека системи.

Розподіл прав доступу: користувачі, групи та root

Секрет стабільності та безпеки Linux — суворий розподіл прав доступу. У системі три типи об’єктів:

  • Користувачі (users): індивідуальні облікові записи. Це як учасники на сімейній вечірці — кожен зі своїм пропуском.
  • Групи (groups): набори користувачів. У деяких завдань один пропуск на всю групу — наприклад, для доступу до спільного каталогу "Фотографії бабусі".
  • Root: суперкористувач з усіма правами. Root — це як Супермен у вашому світі Linux. Він може все, і це несе як суперсилу, так і супервідповідальність.

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

Мінімізація привілеїв

Не треба роздавати root-доступ усім підряд. Уявіть, що кожен співробітник вашого офісу має ключі від сейфу з грошима. Хтось точно їх загубить. У Linux працює правило: надавайте користувачам лише ті права, які необхідні для виконання їхніх завдань.

Основні загрози безпеці

  • Віруси: так-так, Linux теж не ідеально захищений, але тут віруси зустрічаються рідше завдяки архітектурі системи.
  • Атаки через мережу: злом SSH, DDoS-атаки, підміна DNS.
  • Вразливості ПЗ: старі пакети та незахищені бібліотеки можуть бути дверима для зловмисників.

2. Профілактика загроз

А тепер давайте розберемо важливі кроки, щоб ваш Linux-сервер продовжував працювати надійно і не став інструментом хакерів.

Регулярне оновлення системи

Актуальний приклад: оновлення системи — це як оновлення антивірусу. Без нього навіть найсучасніший захист виявиться марним проти нових загроз. Команда:

sudo apt update && sudo apt upgrade

допомагає тримати ваш Linux у формі.

Контроль доступу до важливих файлів

Є файли, які краще заховати від сторонніх очей. Наприклад, файл /etc/sudoers — це список користувачів із доступом до адміністративних привілеїв. Редагувати його можна тільки через visudo, щоб уникнути випадкових помилок.

Обмеження доступу root

Ви знаєте, що root — це сила, але не варто зловживати нею. Краще працювати під звичайним користувачем і за потреби використовувати sudo, щоб тимчасово отримати привілеї.


3. Інструменти безпеки

Які інструменти в Linux допоможуть у боротьбі за безпеку? Давайте поглянемо на вбудовані та сторонні рішення.

Вбудовані механізми

  • firewalld і iptables: міжмережеві екрани для управління мережевим трафіком. Звучить складно, але ми розберемо!
  • SELinux (Security-Enhanced Linux): спеціальне доповнення, яке перевіряє, які процеси мають право на доступ до файлів.
  • ACL (Access Control Lists): розширена версія стандартних прав доступу.

Зовнішні інструменти

  • Lynis: інструмент для аудиту безпеки.
  • OpenSCAP: набір інструментів для перевірки відповідності систем стандартам безпеки.

Налаштування політики паролів

Наскільки складний у вас паро... ой, не кажіть! Краще одразу забезпечити надійну політику паролів. Мінімальна довжина та складність пароля налаштовуються за допомогою PAM.

sudo nano /etc/security/pwquality.conf

Приклад параметрів:

minlen = 12
minclass = 3

4. Практичний приклад: базове налаштування безпеки

Тепер закочуйте рукава! Налаштуємо просту політику безпеки для тестової системи.

Реєстрація користувачів

Створимо двох користувачів: адміністратора і звичайного користувача.

sudo adduser admin
sudo adduser user1
sudo usermod -aG sudo admin

Тепер admin має адміністративні права, а user1 — ні.

Контроль доступу до важливих файлів

Обмежимо доступ до конфігурації Nginx:

sudo chmod 600 /etc/nginx/nginx.conf

Робота з брандмауером

Встановимо і налаштуємо ufw (Uncomplicated Firewall), щоб захистити наш сервер:

sudo apt install ufw
sudo ufw enable

Дозволимо тільки SSH і HTTP-трафік:

sudo ufw allow 22
sudo ufw allow 80

Увімкнемо перевірку:

sudo ufw status

5. Типові помилки

Коли мова йде про безпеку, важливо не лише знати, що робити, а й розуміти, чого уникати.

Помилка 1: Робота під root

Багато новачків лінуються і працюють під root-аккаунтом. Це небезпечно: будь-яка помилка чи злом буде фатальним для системи.

Помилка 2: Неоновлені пакети

Як казав один адміністратор: "Єдиний хороший сервер — це оновлений сервер". Старе ПЗ — ідеальна мішень для атак.

Помилка 3: Небезпечні паролі

"password123" — один із найпопулярніших паролів. Не будьте тим, хто його використовує.


6. Практичне застосування: навіщо це потрібно?

Налаштування безпеки Linux знадобиться вам не тільки на роботі, але й на співбесіді. Знання основ роботи з брандмауерами, SELinux і налаштуванням прав доступу справляє враження на роботодавців. Наприклад, ви зможете захистити сервер компанії від DDoS-атак або налаштувати права для командної роботи над проектами.

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

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ