Hallo Zusammen,
ich habe mir einen Internet-Rechner besorgt, das auch soweit super funktiniert...
Ich stehe vor dem großem Problem das NUR die zwei Dienste HTTP und Mail (POP-SSL und SMTP-SSL) ins web dürfen, dazu habe ich folgendes Script (Teilausschnitt):
....
echo "Iptables: Firewall is starting ..."
echo "Iptables: flush ... "
/sbin/iptables -F
echo "Iptables: Delete user rules ... "
/sbin/iptables -X
#DROP all Traffic - default filter policy
echo "Iptable: Default policy INPUT/OUTPUT = Drop ... "
/sbin/iptables -P INPUT DROP
#/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT DROP
#Accept established connections
echo "Iptables: Rules in ... "
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#LOCAL ADAPTER CONNECTIONS
/sbin/iptables -I INPUT -i lo -p tcp -j ACCEPT
/sbin/iptables -I INPUT -i lo -p udp -j ACCEPT
/sbin/iptables -I OUTPUT -o lo -p tcp -j ACCEPT
/sbin/iptables -I OUTPUT -o lo -p udp -j ACCEPT
#Allow HTTP-Traffic
/sbin/iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p udp -i eth0 --dport 80 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -o eth0 --sport 80 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -o eth0 --sport 80 -j ACCEPT
...
Kann mir jemand auf die Sprünge helfen, wo ich den Fehler begehe!
Grüße
iptables - nur http
Re: iptables - nur http
Hi,
Aber vorab gleich, dir ist klar, das du mit den Firewall Regeln eben nicht nur Http und Mail zulaesst! Was du einschraenkst sind die Port's, wenn auf einem beliebigen Server im INet auf Port 80 z.B. ein XYZ Server (z.B. ssh) laeuft, kommt der durch deine Firewall.
wie's aussieht ist mein Kristallkugel ein wenig beschlagen, aber wie waer's denn, wenn du deinen Fehler erstmal beschreibst? Raten ist meinst nicht zielfuehrend.freaki_kf hat geschrieben:Kann mir jemand auf die Sprünge helfen, wo ich den Fehler begehe!
Aber vorab gleich, dir ist klar, das du mit den Firewall Regeln eben nicht nur Http und Mail zulaesst! Was du einschraenkst sind die Port's, wenn auf einem beliebigen Server im INet auf Port 80 z.B. ein XYZ Server (z.B. ssh) laeuft, kommt der durch deine Firewall.
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
Mir ist bewusst, dass ich nur damit die Ports blocken kann, daher habe ich auch geschrieben Dienste
Mein Problem ist wenn ich nur Port 80 (OUTPUT) offen lasse kann ich nicht mehr auf Webseiten zugreifen. Daher wollte ich wissen welche Ports ich zum surfen auch noch benötige ...
Der Port 80 (INPUT) war nur für Testzwecke ...
Mein Problem ist wenn ich nur Port 80 (OUTPUT) offen lasse kann ich nicht mehr auf Webseiten zugreifen. Daher wollte ich wissen welche Ports ich zum surfen auch noch benötige ...
Der Port 80 (INPUT) war nur für Testzwecke ...
Hi und willkommen im Forum!
Es wäre hilfreich wenn du das komplette skript nach http://nopaste.debianforum.de/ posten würdest und den link hier postet.
Was mich wunderst ist, dass du anscheinend keine DNS-Portfreigabe gemacht hast und dementsprechend keine Namen auflösen könntest.
Ohne INPUT sollte das eigentlich durchaus funktionieren wegen
Andere Frage: Du versuchst aber nur von diesem Rechner aus über HTTP zu gehen oder versuchst du über einen anderen Rechner, über diesen als Firewall auf HTTP zu gehen?
Dann müsstest du Forwarding aktivieren.
Es wäre hilfreich wenn du das komplette skript nach http://nopaste.debianforum.de/ posten würdest und den link hier postet.
Was mich wunderst ist, dass du anscheinend keine DNS-Portfreigabe gemacht hast und dementsprechend keine Namen auflösen könntest.
Ohne INPUT sollte das eigentlich durchaus funktionieren wegen
Code: Alles auswählen
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Dann müsstest du Forwarding aktivieren.
Hi danke für die Antwort, echt super von euch!!!
Ach stimmt vielen Dank das hab ich im Eifer total vergessen, dass ich die DNS Anfragen auch freigeben muss ^^ Manchmal hat man echt ein Brett vor dem Kopf =)
Also der Rechner ist zum surfen gedacht, daher bräuchte ich bei Input die Freigabe gar nicht…
Es ist router davor (auch debian, aber in Minimalkonfiguration)
Ist es überhaupt sinnvoll all OUTPUT-Ports zu droppen?
Weiß das gehört jetzt nicht hier rein, aber wie sehr kann ich die benutzerrechte einschränken das es fast ein readonly system wird?
Danke!!
Grüße
Ach stimmt vielen Dank das hab ich im Eifer total vergessen, dass ich die DNS Anfragen auch freigeben muss ^^ Manchmal hat man echt ein Brett vor dem Kopf =)
Also der Rechner ist zum surfen gedacht, daher bräuchte ich bei Input die Freigabe gar nicht…
Es ist router davor (auch debian, aber in Minimalkonfiguration)
Ist es überhaupt sinnvoll all OUTPUT-Ports zu droppen?
Weiß das gehört jetzt nicht hier rein, aber wie sehr kann ich die benutzerrechte einschränken das es fast ein readonly system wird?
Danke!!
Grüße