Portál AbcLinuxu, 10. května 2025 07:32
Potrebujem nastavit firewall (Debian), ktorý predpokladá, že máme 2 sieťové rozhrania eth0 a eth1, kde eth0 má nastavenú verejnú IP adresu s priamym prístupom na internet, t.j. má IP adresu napr. 158.197.43.20/24 a eth1 má privátnu IP adresu vo vnútornej sieti organizácie, t.j. má IP adresu 10.20.30.1/24.
Nastavenie firewallu:
1. cez eth0 je z internetu dostupná sieťová služba DHCP a tiež je možné z internetu overiť dostupnosť stroja cez ping. Žiadna iná komunikácia iniciovaná z internetu (cez eth0) nie je povolená. Z vonku (t.j. z internetu) povoľte len overenie dostupnosti stroja cez ping;
iptables –F
iptables -A OUTPUT -p udp --dport 68 -j ACCEPT
iptables -P OUTPUT DROP
iptables -A INPUT -p udp --dport 67 -j ACCEPT
iptables -P INPUT DROP
2. cez eth1 a loopback je možné pristupovať k všetkým portom cez ľubovoľný protokol;
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
iptables -P INPUT ACCEPT
3. Nakonfigurovaný server je schopný komunikácie na internete bez obmedzenia, t.j. s ľubovoľnou vzdialenou sieťovou službou;
iptables -P FOWARD ACCEPT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
Kde to mam nastavene zle?
#!/bin/sh echo 1 > /proc/sys/net/ipv4/ip_forward iptables -F iptables -P INTPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -p udp --dport 67 -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT iptables -A OUTPUT -j ACCEPTTato sluzba neruci za nic.
iptables -P INTPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -i eth0 -p udp --dport 67 -j ACCEPT iptables -A OUTPUT -j ACCEPT2]
iptables -A INPUT -i lo -j ACCEPT3]
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -F iptables -P INTPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -p icmp -m limit --limit 100/sec -j ACCEPT iptables -A INPUT -p icmp -j DROP2)
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -F iptables -P INTPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -i eth1 -j ACCEPT3)
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -F iptables -P INTPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.