[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

iptables girdigim kurallari kabul etmiyor



Öncelikle mail listesine yeni katıldığımdan dolayı herkese selamlarımı iletirim :) Ve umarım mailide doğru yere yolluyorumdur zira bu adres olduğundan tam olarak emin değilim...

Şimdi gelelim sorunuma
Debian etch üzerine squid ve dansguardian kurulumunu yaptım.
ayrıntıya girmek gerekirse daha evvelden dansguardian kurulumlarımda ClamAV'ı otomatik yüklediğini ve bu yüklenen ClamAV'ında eski sürüm olduğu için sorunlar çıkarttığını gördüm. bu nedenle unstable repodan son sürüm ClamAV yükledikten sonra DG kurulumunu yaptım...

DG kurduktan sonra squid ve dg ile alakalı bir sürü sorunla karşılaştım ancak bunları bir şekilde çözmeyi başardım

internetteki dökümanlardan okuduğum ve anladığım kadarıyla eğer dg kullanılacaksa squid config dosyasında kendi ağımı hiç bir şekilde tanımlamamam ve böylecede gelen tüm isteklere direkt olarak DG nin cevap vereceği yönündeydi. bende bunu aynen uygulayıp config dosyasında ağımı tanımlamadım. bu noktada ilk sorunumla karşılaştım, squid hiçbir şekilde dışarıya çıkmama izin vermiyordu. daha sonra kendi ağımı ekleyerek bir şekilde de olsa internete çıkmayı başardım. gelen isteklere direkt olarak DG nin cevap vermesini sağlamak için aşağıdaki sh dosyasıyla iptables'a kuralları girdim
--------------------------------------------------------------------------------------------------
#!/bin/sh
# dansguardian server IP
DG_SERVER='192.168.1.100'
# Interface connected to Internet
INTERNET='eth1'
# Interface connected to LAN
LAN_IN='eth0'
# Squid port
DG_PORT='8080'
# DO NOT MODIFY BELOW
# Clean old firewall

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

# Load IPTABLES modules for NAT and IP conntrack support

modprobe ip_conntrack
modprobe ip_conntrack_ftp

# For win xp ftp client
modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward

# Setting default filter policy

#iptables -P INPUT DROP
#iptables -P OUTPUT ACCEPT

# Unlimited access to loop back

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Allow UDP, DNS and Passive FTP
iptables -A INPUT -i $INTERNET -m state --state ESTABLISHED,RELATED -j ACCEPT

# set this system as a router for Rest of LAN
iptables --table nat --append POSTROUTING --out-interface $INTERNET -j MASQUERADE
iptables --append FORWARD --in-interface $LAN_IN -j ACCEPT

# unlimited access to LAN
iptables -A INPUT -i $LAN_IN -j ACCEPT
iptables -A OUTPUT -o $LAN_IN -j ACCEPT

# DNAT port 80 request comming from LAN systems to dansguardian 8080 ($DG_PORT) aka transparent proxy iptables -t nat -A PREROUTING -i $LAN_IN -p tcp --dport 80 -j DNAT --to $DG_SERVER:$DG_PORT

# if it is same system
iptables -t nat -A PREROUTING -i $INTERNET -p tcp --dport 80 -j REDIRECT --to-port $DG_PORT

# DROP everything and Log it
#iptables -A INPUT -j LOG
#iptables -A INPUT -j DROP
--------------------------------------------------------------------------------------------------

tüm bu ayrıntıları verdikten sonra nihayi sonuca geliyorum...
server'ı reboot ettiğimde clientlar üzerinden web hariç hiçbir şekilde internete çıkamıyorum... Webmin üzerinden kontrol ettiğimde iptables kurallarının düzgün bir şekilde hala durduğunu görüyorum ancak sonuç olarak ftp, mail, msn.... hepsi bloklanıyor. sh dosyasını tekrar çalıştırdığımda herşey normale dönüyor ve tekrardan ftp, mail, msn... çalışmaya başlıyor...

bu konu hakkında bir fikri olan yada nerede yanlış yaptığımı söyleyebilirseniz beni çok büyük bir dertten kurtarmış olacaksınız.
ilgi alaka ve cevaplarınız için şimdiden çok teşekkür ederim

Erdem Uyguner



Reply to: