Блог компанії 3v-Hosting
10 найчастіше вживаних прикладів для IPTABLES
4 хв.
Коли справа доходить до захисту вашого Linux-сервера від несанкціонованого доступу та шкідливих дій, iptables виділяється як потужний інструмент в арсеналі мережевих адміністраторів. iptables – це універсальна утиліта брандмауера для систем Linux, що дозволяє користувачам визначати правила та політики для фільтрації пакетів та трансляції мережевих адрес.
Звичайно, ми знаємо, що зараз на зміну iptables приходить nftables, але тисячі серверів досі використовують саме iptables.
І щоб допомогти вам використовувати весь потенціал iptables, ми склали список з 10 прикладів, які найчастіше використовуються, які можуть підвищити безпеку вашого сервера.
Дозволити доступ SSH. Забезпечте безпечний віддалений доступ до вашого сервера, дозволивши з'єднання SSH і заблокувавши при цьому весь решту трафік:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -j DROP
Увімкнути трафік HTTP та HTTPS. Дозвольте веб-трафік через порти 80 (HTTP) та 443 (HTTPS) для хостингу веб-сайтів:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Блокувати певну IP-адресу: заборонити доступ з певної IP-адреси, відкидаючи вихідні пакети:
sudo iptables -A INPUT -s <IP_Address> -j DROP
Дозволити вихідні з'єднання: Дозволити всі вихідні з'єднання, блокуючи трафік за замовчуванням:
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
Переадресація портів: перенаправлення вхідного трафіку з одного порту на інший, що корисно для таких сервісів, як перенаправлення HTTP-трафіку на певний порт:
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port <New_Port>
Обмежити швидкість з'єднання. Запобігайте DoS-атакам, обмеживши швидкість вхідних з'єднань:
sudo iptables -A INPUT -p tcp --dport 80-m limit --limit 25/minute --limit-burst 100-j ACCEPT
Журнал відкинутих пакетів: реєструйте відкинуті пакети для аналізу та усунення несправностей:
sudo iptables -A INPUT -j LOG --log-prefix "Dropped: "
Дозволити трафік ICMP: дозволити запити ICMP (ping) для усунення несправностей мережі:
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
Блокуйте атаки SYN Flood: Пом'якшуйте атаки SYN Flood, обмежуючи кількість одночасних напіввідкритих з'єднань:
sudo iptables -A INPUT -p tcp --syn-m limit --limit 5/s -j ACCEPT
Очистити правила: Очистіть всі існуючі правила, щоб почати з чистого листа:
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
sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
Ці приклади є основою для створення надійних конфігурацій брандмауера за допомогою IPTABLES. Не забудьте налаштувати правила відповідно до конкретних вимог вашої мережі та регулярно перевіряти налаштування брандмауера для забезпечення оптимальної безпеки. За допомогою IPTABLES можна ефективно захистити свій сервер від кіберзагроз.
Якщо прочитавши цей короткий мануал, Ви захочете глибше ознайомитися з усією потужністю даного інструменту - Ви завжди можете звернутися до офіційного мануала IPTABLES.
Також Ви можете ознайомитися з іншими статтями на тему безпеки, наприклад - Як зробити свій сайт безпечнішим за менші гроші?