Налаштування iptables для безпеки на Ubuntu/Debian

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

Чому важливо використовувати iptables?

  • Фільтрація трафіку: Дозволяє управляти вхідними і вихідними з'єднаннями.
  • Обмеження доступу: Обмежує доступ до важливих служб і портів.
  • Захист від атак: Допомагає захистити сервер від різних мережевих атак, таких як DDoS.

Попередні вимоги

  • Сервер з Ubuntu або Debian: Переконайтесь, що у вас є сервер з встановленою ОС Ubuntu або Debian.
  • Доступ по SSH: Має бути доступ по SSH для налаштування.

Основні команди iptables

Перед початком налаштування ознайомтесь з основними командами iptables:

  • iptables -A — додавання правила.
  • iptables -I — вставка правила.
  • iptables -D — видалення правила.
  • iptables -L — перегляд списку правил.
  • iptables -F — видалення всіх правил.

Крок 1: Встановлення iptables

У більшості систем Ubuntu/Debian iptables встановлений за замовчуванням. Для перевірки або установки виконайте:

bash
sudo apt update && sudo apt install iptables

Крок 2: Очищення існуючих правил

Перед початком налаштування рекомендується очистити існуючі правила:

bash
sudo iptables -F && sudo iptables -X && sudo iptables -t nat -F && sudo iptables -t nat -X && sudo iptables -t mangle -F && sudo iptables -t mangle -X

Крок 3: Налаштування базових правил

Блокування всіх вхідних з'єднань

Почнемо з блокування всіх вхідних з'єднань, крім тих, які ми явно дозволимо:

bash
sudo iptables -P INPUT DROP && sudo iptables -P FORWARD DROP && sudo iptables -P OUTPUT ACCEPT

Дозволення локальних з'єднань

Дозволимо локальні з'єднання (loopback):

bash
sudo iptables -A INPUT -i lo -j ACCEPT

Дозволення існуючих з'єднань

Дозволимо всі вхідні з'єднання, ініційовані зсередини:

bash
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Крок 4: Дозволення SSH

Для віддаленого доступу до сервера необхідно дозволити з'єднання по SSH (порт 22):

bash
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

Крок 5: Дозволення інших важливих сервісів

Додайте правила для інших необхідних сервісів, наприклад, для HTTP (порт 80) і HTTPS (порт 443):

bash
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT && sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Крок 6: Захист від DDoS атак

Додайте правила для захисту від DDoS атак:

bash
sudo iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT && sudo iptables -A INPUT -p tcp --dport 443 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

Крок 7: Збереження налаштувань

Після налаштування iptables збережіть правила, щоб вони застосовувалися при перезавантаженні:

bash
sudo sh -c "iptables-save > /etc/iptables/rules.v4"

Для Debian/Ubuntu збережіть правила за допомогою пакета iptables-persistent:

bash
sudo apt install iptables-persistent && sudo netfilter-persistent save

Крок 8: Перевірка правил

Перевірте застосовані правила за допомогою команди:

bash
sudo iptables -L -v

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

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

  • vps, ubuntu, iptables
  • 0 Користувачі вважають це корисним
Ця відповідь вам допомогла?

Схожі статті

Корпоративная почта на базе собственного домена

Корпоративная почта на собственном домене не только придаёт профессиональный...

Установка и настройка Rclone

Rclone — это мощный инструмент командной строки для управления файлами на облачных хранилищах....

Apache vs Nginx: У чому різниця, як встановити і що обрати?

Коли ви обираєте веб-сервер для вашого проекту, Apache та Nginx часто опиняються в центрі уваги....

HTTP Помилки: часті причини і як їх виправити

  Помилка 403: ForbiddenОпис: Сервер розуміє запит, але відмовляється його виконати. Це зазвичай...

Let's Encrypt без панелі управління

SSL-сертифікати Let's Encrypt: безкоштовне автоматичне шифрування для вашого сайту. Як встановити...

Powered by WHMCompleteSolution