25. maj 2003 - 20:37Der er
8 kommentarer og 1 løsning
iptables 2 netkort og adsl m/ruter
Jeg har følgende opsætning:
*ADSL modem (simens) * * * ************** *Linksys ruter * ************** * * * (eth1) IP= ? Ja hvad skal den værer. ************** *Linux RH 7.3 * ************** * (eth0) IP= 192.168.1.1 * * ************** *Ethernet switch* ************** * ********************************* * * * * * * ******* ******* ******* * PC002* * PC003* * PC004* Windows PC'er IP = 192.168.1.X X = 2..4 ******* ******* *******
Hvordan opsætter jeg masqurating og firewall med iptables/netfilter? Både linux-serveren og win'maskinerne skal have adgang til internet bag firewall. Jeg ville have ruteren taget fra, men det haster ikke. Hvilke ip-adresser skal henholdsvis ruter og eth1 have? 192.168.1.1 netværker er satop med DNS/HTTPD og samba og virker tilsyneladende ok. Begge netkort virker og er opsat med: DEVICE='eth0' BOOTPROTO='none' BROADCAST='192.168.1.255' IPADDR='192.168.1.1' NETMASK='255.255.255.0' NETWORK='192.168.1.0' ONBOOT='yes' GATEWAY='192.168.1.254' TYPE='Ethernet' USERCTL='no' **************** og: DEVICE='eth1' BOOTPROTO='none' BROADCAST='192.168.2.255' IPADDR='192.168.2.1' NETMASK='255.255.255.0' NETWORK='192.168.2.0' ONBOOT='yes' TYPE='Ethernet' USERCTL='no'
> Og så skal RH maskinen route al eksterne traffik over på > 192.168.2 nettet ....
Den konklution var jeg også kommet til derfor har ruteren også addressen 192.168.2.254 og gatewat på eth0 ændres til 192.168.2.1 når jeg forsøger.... Men hvordan får jeg RH til at rute....?
Jeg afviste fordi du ikke havde nævnt noget om: Hvordan opsætter jeg masqurating og firewall med iptables/netfilter? Men kun om: Hvilke ip-adresser skal henholdsvis ruter og eth1 have?
ipv4/ip_forward er sat til 1 i /etc/sysctl.conf så forward er enable.
Jeg bruger nedenstående. Jeg bruger min linuxbox som firewall/router/webserver ved at sætte det ene ntkort op med dhcp og et localnet (192.168.0.0/255.255.255.192 - har ikke brug for mere end 64 ip på lan) på det andet. sciptet giver alle mine maskiner bagved adgang til nettet.
#!/bin/bash
#--------------------------------------------------------------- # Load modules for FTP connection tracking and NAT ÃYou may need # them later #---------------------------------------------------------------
modprobe ip_conntrack_ftp modprobe iptable_nat
#--------------------------------------------------------------- # Initialize all the chains by removing all the rules # tied to them #---------------------------------------------------------------
#--------------------------------------------------------------- # Now that the chains have been initialized, the user defined # chains should be deleted. We'll recreate them in the next step #---------------------------------------------------------------
iptables --delete-chain iptables -t nat --delete-chain iptables -t mangle --delete-chain #--------------------------------------------------------------- # If a packet doesn't match one of the built in chains, then # The policy should be to drop it #---------------------------------------------------------------
iptables --policy INPUT DROP iptables --policy OUTPUT DROP iptables --policy FORWARD DROP #--------------------------------------------------------------- # The loopback interface should accept all traffic # Necessary for X-Windows and other socket based services #---------------------------------------------------------------
iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
#--------------------------------------------------------------- # Allow outbound DNS queries from the FW and the replies too # # - Interface eth0 is the internet interface # # Zone transfers use TCP and not UDP. Most home networks # / websites using a single DNS server wonÕ require TCP statements # #--------------------------------------------------------------- iptables -A OUTPUT -p udp -o eth0 --dport 53 --sport 1024:65535 -j ACCEPT iptables -A INPUT -p udp -i eth0 --sport 53 --dport 1024:65535 -j ACCEPT
#--------------------------------------------------------------- # Allow previously established connections # - Interface eth0 is the internet interface #--------------------------------------------------------------- iptables -A OUTPUT -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
#--------------------------------------------------------------- # Allow port 80, 443 (www) and 22 (SSH) and 20,21 (FTP) connections to the firewall #--------------------------------------------------------------- iptables -A INPUT -p tcp -i eth0 --dport 22 --sport 1024:65535 -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 80 --sport 1024:65535 -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 20 --sport 1024:65535 -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 21 --sport 1024:65535 -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 443 --sport 1024:65535 -m state --state NEW -j ACCEPT #--------------------------------------------------------------- # Allow port 80 (www) and 443 (https) connections to the firewall #--------------------------------------------------------------- iptables -A OUTPUT -j ACCEPT -m state --state NEW -o eth0 -p tcp
#--------------------------------------------------------------- # Allow previously established connections # - Interface eth0 is the internet interface #--------------------------------------------------------------- iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED -i eth0 -p tcp
#--------------------------------------------------------------- # Allow all bidirectional traffic from your firewall to the # protected network # - Interface eth1 is the private network interface #---------------------------------------------------------------
iptables -A INPUT -j ACCEPT -p all -s 192.168.0.0/255.255.255.192 -i eth1 iptables -A OUTPUT -j ACCEPT -p all -d 192.168.0.0/255.255.255.192 -o eth1
#--------------------------------------------------------------- # Load the NAT module #--------------------------------------------------------------- modprobe iptable_nat #--------------------------------------------------------------- # Allow masquerading # Enable routing by modifying the ip_forward /proc filesystem file # - Interface eth0 is the internet interface # - Interface eth1 is the private network interface #--------------------------------------------------------------- iptables -A POSTROUTING -t nat -o eth0 -s 192.168.0.0/255.255.255.192 -d 0/0 \ -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward #--------------------------------------------------------------- # Prior to masquerading, the packets are routed via the filter # table's FORWARD chain. # Allowed outbound: New, established and related connections # Allowed inbound : Established and related connections #--------------------------------------------------------------- iptables -A FORWARD -t filter -i eth1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -t filter -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.