Завдання: вивчити на практиці роботу з Iptables (файерволом в Linux) для реалізації політик безпек
Порядок виконання
- Запустити віртуально машину Debian.
- Локально автентифікуватись в системі.
- Виконати наступні конфігурації Iptables:
# Переглянути записи Iptables:
iptables –L
# Обнулення усіх записів Iptables (за умови що є попередні налаштування):
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle –X
# Зміна правил по-замовчуванням з «Дозволити ВСЕ» (policy ACCEPT) на «Заборонити ВСЕ» (policy DROP) в усіх ланцюгах: вхідному, вихідному та скрізному.
### Дія виконується виключно у вікні гіпервізора исключительно в окне гипервизора, в іншому випадку вам відразу обірве зєднання.
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
# Дозволимо прийом вхідних пакетів та передачу вихідних пакетів в таблицах INPUT та OUTPUT
# Дозволяємо довірений трафік за інтерфейс loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Дозволяємо службовий трафік icmp
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
# Більш жорсткий спосіб дозволу проктоколу icmp – дозволяє лише вхідні та вихідні ехо-пакети.
iptables -A INPUT -p icmp –icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp –icmp-type 8 -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
# Захистимо з’єднання по ssh до серверу:
iptables -A INPUT -p tcp -m tcp -s 127.0.0.1 –dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -s 192.168.10.0/24 –dport 22 -j ACCEPT
### Замість мережі 192.168.10.0/24 вказується мережа або хост з якого буде здійснюватись підключення по ssh.
# Заборона іншим хостам підключення по ssh до нашого серверу:
iptables -A INPUT -p tcp -m tcp –dport 22 -j DROP
# Забороняємо все інше для ланцюга INPUT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
# Дозвіл доступу до веб-сайтів по портам 80, 443 (http, https):
iptables -A INPUT -p tcp -m tcp –sport 80 -j ACCEPTiptables -A OUTPUT -p tcp -m tcp –dport 80 -j ACCEPT iptables -A INPUT -p tcp -m tcp –sport 443 -j ACCEPTiptables -A OUTPUT -p tcp -m tcp –dport 443 -j ACCEPT
# Дозвіл вихідних з’єднань з діапазону безпечних портів:
iptables -A OUTPUT -p TCP –sport 32768:61000 -j ACCEPT
iptables -A OUTPUT -p UDP –sport 32768:61000 -j ACCEPT
# Розширене відображення записів Iptables:
iptables -n -L -v dx