Налаштування 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
встановлений за замовчуванням. Для перевірки або установки виконайте:
sudo apt update && sudo apt install iptables
Крок 2: Очищення існуючих правил
Перед початком налаштування рекомендується очистити існуючі правила:
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: Налаштування базових правил
Блокування всіх вхідних з'єднань
Почнемо з блокування всіх вхідних з'єднань, крім тих, які ми явно дозволимо:
sudo iptables -P INPUT DROP && sudo iptables -P FORWARD DROP && sudo iptables -P OUTPUT ACCEPT
Дозволення локальних з'єднань
Дозволимо локальні з'єднання (loopback):
sudo iptables -A INPUT -i lo -j ACCEPT
Дозволення існуючих з'єднань
Дозволимо всі вхідні з'єднання, ініційовані зсередини:
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Крок 4: Дозволення SSH
Для віддаленого доступу до сервера необхідно дозволити з'єднання по SSH (порт 22):
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
Крок 5: Дозволення інших важливих сервісів
Додайте правила для інших необхідних сервісів, наприклад, для HTTP (порт 80) і HTTPS (порт 443):
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT && sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Крок 6: Захист від DDoS атак
Додайте правила для захисту від DDoS атак:
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
збережіть правила, щоб вони застосовувалися при перезавантаженні:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
Для Debian/Ubuntu збережіть правила за допомогою пакета iptables-persistent
:
sudo apt install iptables-persistent && sudo netfilter-persistent save
Крок 8: Перевірка правил
Перевірте застосовані правила за допомогою команди:
sudo iptables -L -v
Налаштування iptables
є важливим кроком для захисту вашого сервера. Дотримуючи ці інструкції, ви зможете налаштувати базові правила для фільтрації трафіку і захисту від мережевих атак. Якщо у вас виникнуть питання або проблеми, команда підтримки QCKL завжди готова допомогти вам.
Налаштування iptables
допоможе вам контролювати доступ до вашого сервера і захистити його від несанкціонованих дій, забезпечуючи безпеку ваших даних і систем.