/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Iptables-script, ping og samba
Fra : Steffen Fischer


Dato : 22-02-02 12:11

Hej alle

Jeg har netop sat en 2.4.17 kerne i min debian potato, som fungerer nat-boks
for lokalnettet. I samme omgang fandt jeg det naturligt at erstatte ipchains
med iptables, og det nedenstående script er mit allerførste... så I skal
ikke grine alt for højt :)

Det lokale net, hvorfra folk gerne vil på internettet er 192.168.1.0 på
eth0, og externt interface er eth1. Der kører af og til webserver og
ftpserver på maskinen så disse porte er forsøgt åbnet.

#! /bin/sh

case "$1" in
start)
echo -n "Starting firewall"

# Turn on IP forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward

# Flush all tables
iptables -F
iptables -t nat -F
iptables -X

# Sæt default policies
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING DROP

# Tillad input fra denne og fra lokalnettet
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Åben for ftp og http
iptables -A INPUT -p tcp --syn --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --syn --dport 80 -j ACCEPT
# Åben for icq
iptables -A INPUT -p tcp --syn --dport 5190 -j ACCEPT

# Tillad ping replies
iptables -A INPUT -p ICMP -s 0/0 --icmp-type echo-request -j ACCEPT

# Forward til og fra lokalnet
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/24 -j ACCEPT

# Masquerading
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

echo "."
;;

stop)
echo -n "Stopping firewall"
iptables --flush
# så åbner vi den på vid gab
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
# og sætter masquerading til
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
echo "."
;;

restart)
$0 stop
sleep 1
$0 start
;;

reload)
$0 restart
;;

*)
echo "Usage: /etc/init.d/firewall {start|stop}"
exit 1
;;
esac

exit 0

Jeg har nu følgende spørgsmål:

1. Ser dette script fuldstændig tosset ud - eller sagt på en anden måde:
hvad skal ændres eller tilføjes?

2. Hvorfor kan jeg ikke pinge mig selv fra maskinen? Altså at bl.a. "ping
localhost" fejler med denne besked:
PING debian (127.0.0.1): 56 data bytes
ping: sendto: Operation not permitted
ping: wrote debian 64 chars, ret=-1

3. Hvorfor kan jeg ikke længere se mit samba-share?

4. Er der nogle hjælpesomme sjæle, der kan hjælpe mig?

Med venlig hilsen
Steffen Fischer

PS.: Spørgsmål 4 er snarere en opfordring end et spørgsmål





 
 
Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408879
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste