Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
/
З В І Т
до лабораторної роботи №11
з курсу «Безпека інформації в інформаційно-комунікаційних системах»
на тему:
«Фільтрація мережевого трафіку в iptables»
Мета роботи: навчитися керувати всім трафіком який проходить по мережі в якій знаходиться конкретна робоча станція за допомогою iptables.
Виконання роботи
Для виконання усіх поставлених перед мною завданнями я скористався терміналом, а також графічною надбудовою над iptables, а саме: gufw.
/
/
/
Потрібно замінити ACCEPT на DROP, щоб заблокувати порт або навпаки.
## ssh tcp port 22 ##iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPTiptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT## cups (printing service) udp / tcp port 631 для локальної мережі ##iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j ACCEPTiptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j ACCEPT## time sync via NTP для локальної мережі (udp port 123) ##iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT## tcp port 25 (smtp) ##iptables -A INPUT -m state --state NEW -p tcp --dport 25 -j ACCEPT# Dns server ports ##iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPTiptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT## http / https www server port ##iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPTiptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT## tcp port 110 (pop3) ##iptables -A INPUT -m state --state NEW -p tcp --dport 110 -j ACCEPT## tcp port 143 (imap) ##iptables -A INPUT -m state --state NEW -p tcp --dport 143 -j ACCEPT## Samba file server для локальної мережі ##iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 137 -j ACCEPTiptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 138 -j ACCEPTiptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 139 -j ACCEPTiptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 445 -j ACCEPT## proxy server для локальної мережі ##iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 3128 -j ACCEPT## mysql server для локальної мережі ##iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
Дозволити або заборонити ICMP Ping запити.Щоб заборонити ping:# Iptables -A INPUT -p icmp --icmp-type echo-request -j DROP# Iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -j DROPДозволити для певних мереж / хостів:# Iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j ACCEPTДозволити лише частина ICMP запитів:### ** передбачається, що політики за замовчуванням для вхідних встановлені в DROP ** #### Iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT# Iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT# Iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT## ** дозволимо відповідати на запит ** ### Iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
Щоб скидати все не ініційовані вами вхідні пакети, але дозволити вихідний трафік:
Пакети вихідні і ті, які були збережені до в рамках встановлених сесій - дозволені.# Iptables -P INPUT DROP# Iptables -P FORWARD DROP# Iptables -P OUTPUT ACCEPT# Iptables -A INPUT -m state --state NEW, ESTABLISHED -j ACCEPT# Iptables -L -v -nЩоб заборонити ping:# Iptables -A INPUT -p icmp --icmp-type echo-request -j DROP# Iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -j DROPДозволити для певних мереж / хостів:# Iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j ACCEPTДозволити лише частина ICMP запитів:### ** передбачається, що політики за замовчуванням для вхідних встановлені в DROP ** #### Iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT# Iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT# Iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT## ** дозволимо відповідати на запит ** ### Iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
Висновки: на цій лабораторній роботі навчився керувати Ip-пакетами які проходять у певній мережі. Хочу сказати, що Iptables це досить зручна утиліта для користування. Її функціонал вражає, а універсальність немає меж. Також мене здивувало, що для цієї утиліти існує графічний інтерфейс, який досить добре зроблений від оптимізації закінчуючи зовнішнім виглядом.