Пост #222436

     
сохранен 24.09.2021 11:18
Текст поста
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/bin/bash
FW="/sbin/iptables"
#INET_IFACE="eth0" # здесь имя инетовского интерфейса
LAN_IP="10.0.0.10"
LAN_IP_RANGE="10.0.0.0/24"
LAN_IFACE="eth1"  # интерефейс локальной сети
BROADCAST_NET="0.0.0.0/32"
LO_IFACE="lo"
LO_IP="127.0.0.1"

# Очистка всех цепочек iptables
${FW} -F
${FW} -X
${FW} -Z
# Политики для трафика, не соответствующего ни одному правилу
${FW} -P INPUT DROP
${FW} -P FORWARD DROP
${FW} -P OUTPUT ACCEPT
# Разрешаем Ping
${FW} -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
# Прочие настройки
${FW} -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
${FW} -A INPUT -i lo -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type 3 -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type 11 -j ACCEPT
${FW} -A INPUT -p icmp --icmp-type 12 -j ACCEPT
${FW} -A INPUT -p tcp --syn --dport 113 -j REJECT --reject-with tcp-reset
# Доступ по ssh
${FW} -A INPUT -p TCP --dport 22 -j ACCEPT
# dhcp 
${FW} -A INPUT -s ${BROADCAST_NET} -p udp -m udp --dport 67 -j ACCEPT
${FW} -A INPUT -s ${LAN_IP_RANGE} -p udp -m udp --dport 67 -j ACCEPT
# Доступ dns
${FW} -A INPUT -p udp --dport 53 -j ACCEPT
${FW} -A INPUT -p tcp --dport 53 -j ACCEPT
# Доступ tftp
${FW} -A INPUT -p udp --dport tftp -j ACCEPT
${FW} -A INPUT -p tcp --dport tftp -j ACCEPT
# Доступ к webserver по http и https
${FW} -A INPUT -p TCP --dport 80 -j ACCEPT
${FW} -A INPUT -p TCP --dport 443 -j ACCEPT
#Сохраняем правила
# Calculate/Gentoo хранит в /var/lib/iptables/rules-save
rc-service iptables save
Добавить комментарий
Автор