Portál AbcLinuxu, 12. května 2025 07:28
#!/bin/sh # proměnné LO=lo LAN=eth1 WAN=eth0 # vyresetování pravidel iptables -F -t mangle iptables -F -t nat iptables -F -t filter iptables -F iptables -Z iptables -X # politika firewalu - byla by lepší DROP, ale takle to funguje iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -P POSTROUTING ACCEPT # definice tabulek iptables -N Spolnet-BADFILTER # špatné pakety iptables -N Spolnet-BANNED # zakázané pakety iptables -N Spolnet-FORWARD # průchozí do natu iptables -N Spolnet-INCOMING # průchozí iptables -N Spolnet-INPUT # přístupy iptables -N Spolnet-MACFILTER # kontrola mac adresy # pravidla pro INPUT iptables -A INPUT -j Spolnet-BADFILTER iptables -A INPUT -j Spolnet-BANNED iptables -A INPUT -j Spolnet-INPUT # pravidla pro FORWARD iptables -A FORWARD -j Spolnet-BADFILTER iptables -A FORWARD -j Spolnet-MACFILTER iptables -A FORWARD -j Spolnet-INCOMING iptables -A FORWARD -j Spolnet-FORWARD # špatné pakety iptables -A Spolnet-BADFILTER -m state --state INVALID -j DROP iptables -A Spolnet-BADFILTER -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP iptables -A Spolnet-BADFILTER -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j DROP iptables -A Spolnet-BADFILTER -p tcp -m tcp -m multiport --dports 135,136,137,138,139,445 -m state --state NEW -j DROP iptables -A Spolnet-BADFILTER -p udp -m udp -m multiport --dports 135,136,137,138,139,445 -m state --state NEW -j DROP # routing iptables -A Spolnet-FORWARD -p icmp -m icmp --icmp-type any -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 53 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -p tcp -m tcp --dport 15152 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -p tcp -m tcp --dport 3389 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp -m multiport --dports 143,110,443,995,993,80,20,21,22,25,5190,1024 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp -m multiport --dports 11571,27342,26000,29999 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p udp -m udp -m multiport --dports 11571,27342,26000,29999 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 1024 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 3781 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 2280 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 26000:29999 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p udp -m state --state NEW -m udp --dport 26000:29999 -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 6667:7777 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -i eth1 -p tcp -m tcp --dport 60000:65534 -m state --state NEW -j ACCEPT iptables -A Spolnet-FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A Spolnet-FORWARD -j REJECT --reject-with icmp-host-prohibited # průchozí pakety iptables -A Spolnet-INCOMING -d 193.0.0.162 -m state --state NEW -j ACCEPT iptables -A Spolnet-INCOMING -d 193.0.0.160/255.255.255.240 -m state --state NEW -j ACCEPT # input iptables -A Spolnet-INPUT -i lo -j ACCEPT iptables -A Spolnet-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT iptables -A Spolnet-INPUT -i eth1 -p udp -m udp --sport 67:68 --dport 67:68 -j ACCEPT iptables -A Spolnet-INPUT -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT iptables -A Spolnet-INPUT -p tcp -m tcp --dport 60000:65534 -m state --state NEW -j ACCEPT iptables -A Spolnet-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A Spolnet-INPUT -i eth1 -p tcp -m tcp -m multiport --dports 25,53,15151,15152,143,110,443,995,993,80,2280,2279 -m state --state NEW -j Spolnet-MACFILTER iptables -A Spolnet-INPUT -p tcp -m tcp -m multiport --dports 25,53,15151,15152,143,110,443,995,993,80,2280,2279,3389 -m state --state NEW -j ACCEPT iptables -A Spolnet-INPUT -j REJECT --reject-with icmp-host-prohibited # macfilter iptables -A Spolnet-MACFILTER -p udp -m state --state NEW -m udp --dport 53 -j RETURN iptables -A Spolnet-MACFILTER -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 80 -m state --state NEW -j RETURN iptables -A Spolnet-MACFILTER -s 192.168.2.0/255.255.255.0 -p tcp -m tcp --dport 80 -m state --state NEW -j RETURN iptables -A Spolnet-MACFILTER -s 192.168.10.251 -m mac --mac-source 00:20:ED:88:EA:1E -m state --state NEW -j ACCEPT # vloží MACFILTER záznamy z databáze # INCLUDE --------------------- chmod +x /etc/iptables/iptables_mac_lhotska /etc/iptables/iptables_mac_lhotska chmod -x /etc/iptables/iptables_mac_lhotska # ---------------------------- # Značkování paketů podle záznamů z databáze # INCLUDE --------------------- chmod +x /etc/iptables/iptables_mangle_lhotska /etc/iptables/iptables_mangle_lhotska chmod -x /etc/iptables/iptables_mangle_lhotska # ---------------------------- # nastavení jádra echo "1" > /proc/sys/net/ipv4/ip_forward # povolí routování echo 65528 >/proc/sys/net/ipv4/ip_conntrack_max echo 113000 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established iptables -t nat -A POSTROUTING -s 192.168.10.0/255.255.255.0 -j SNAT --to-source 193.0.0.162 # Konec a vypsání pravidel
193.0.0.160 * 255.255.255.240 U 0 0 0 eth1 193.0.0.160 * 255.255.255.240 U 0 0 0 eth0 192.168.10.0 * 255.255.255.0 U 0 0 0 eth1 default 193.0.0.161 0.0.0.0 UG 0 0 0 eth0ifconfig
eth0 Link encap:Ethernet HWaddr 00:40:F4:8B:51:57 inet addr:193.0.0.162 Bcast:193.179.65.175 Mask:255.255.255.240 inet6 addr: fe80::240:f4ff:fe8b:5157/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:130662391 errors:0 dropped:0 overruns:0 frame:0 TX packets:122939940 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:111573388854 (103.9 GiB) TX bytes:61657008880 (57.4 GiB) Interrupt:58 eth1 Link encap:Ethernet HWaddr 00:0E:2E:56:FA:7F inet addr:192.168.10.250 Bcast:192.168.10.255 Mask:255.255.255.0 inet6 addr: fe80::20e:2eff:fe56:fa7f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:157725661 errors:4 dropped:32 overruns:2 frame:0 TX packets:152409814 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:77950913746 (72.5 GiB) TX bytes:125454307691 (116.8 GiB) Interrupt:50 Base address:0x4c00 eth1:1 Link encap:Ethernet HWaddr 00:0E:2E:56:FA:7F inet addr:193.0.0.163 Bcast:193.179.65.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:50 Base address:0x4c00 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1265 errors:0 dropped:0 overruns:0 frame:0 TX packets:1265 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:141180 (137.8 KiB) TX bytes:141180 (137.8 KiB)
ifconfig eth0 193.0.0.162 ifconfig eth0:1 193.0.0.164a z druhé strany
ifconfig eth1: 192.168.1.1A do pravidel IPTables si dejte, že co přijde na eth0 a má IP 192.0.0.164 se bude přesměrovávat na IP adresu 192.168.1.10. Nejsem expert na IPTables, ale takhle nějak by to mělo jít. Každopádně tak máte adresy z jednoho rozsahu v jedné síti.
ifconfig
…
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.