Netzwerk/Serverdienste: Unterschied zwischen den Versionen
Apo (Diskussion | Beiträge) |
Apo (Diskussion | Beiträge) |
||
Zeile 15: | Zeile 15: | ||
iptables -F #alle Regeln löschen | iptables -F #alle Regeln löschen | ||
iptables -A INPUT -i eth2 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #eingehende Verbindungen auf Port 80 zulassen | iptables -A INPUT -i eth2 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #eingehende Verbindungen auf Port 80 zulassen | ||
iptables -A OUTPUT -o eth2 -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #ausgehende Verbindungen | iptables -A OUTPUT -o eth2 -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #ausgehende Verbindungen von Port 80 zulassen | ||
iptables -A INPUT -i eth2 -s 0.0.0.0/0 -j DROP #alle eingehenden Verbindungen fallen lassen | iptables -A INPUT -i eth2 -s 0.0.0.0/0 -j DROP #alle eingehenden Verbindungen fallen lassen | ||
iptables -A OUTPUT -o eth2 -s 0.0.0.0/0 -j DROP #alle ausgehenden Verbindungen fallen lassen | iptables -A OUTPUT -o eth2 -s 0.0.0.0/0 -j DROP #alle ausgehenden Verbindungen fallen lassen | ||
ip6tables -F #alle Regeln löschen | |||
ip6tables -A INPUT -i eth2 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #eingehende Verbindungen auf Port 80 zulassen | |||
ip6tables -A OUTPUT -o eth2 -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #ausgehende Verbindungen von Port 80 zulassen | |||
ip6tables -A INPUT -p icmpv6 -j ACCEPT | |||
ip6tables -A OUTPUT -p icmpv6 -j ACCEPT #Pings erlauben | |||
ip6tables -A INPUT -i eth2 -j DROP #alle eingehenden Verbindungen fallen lassen | |||
ip6tables -A OUTPUT -o eth2 -j DROP #alle ausgehenden Verbindungen fallen lassen | |||
Iptables Regeln werden von oben nach unten abgearbeitet. Sobald eine Regel auf ein Paket zutrifft, wird der Vorgang beendet. Alle Pakete auf Port 80 landen daher bei "ACCEPT". Die übrigen Pakete landen bei "DROP" und werden somit verworfen. | Iptables Regeln werden von oben nach unten abgearbeitet. Sobald eine Regel auf ein Paket zutrifft, wird der Vorgang beendet. Alle Pakete auf Port 80 landen daher bei "ACCEPT". Die übrigen Pakete landen bei "DROP" und werden somit verworfen. | ||
Für IPv6 gibt es hier noch ein elegantes Script: [http://www.cyberciti.biz/faq/ip6tables-ipv6-firewall-for-linux/] | |||
=== Es gibt verschiedene Möglichkeiten, um die Regeln nach einem Neustart automatisch anzuwenden. === | === Es gibt verschiedene Möglichkeiten, um die Regeln nach einem Neustart automatisch anzuwenden. === |
Version vom 17. Dezember 2014, 07:51 Uhr
Hier soll eine Anleitung zum Aufsetzen eigener Server im FF Netzwerk entstehen.
todo Ziele:
- Domains erstellen namedesdienstes.ffrg
- Filesharing auf der eigenen Infratstruktur im mesh, ohne die VPN Knoten zu belasten
Iptables Regeln zur Freigabe einzelner Ports
Hier wird beispielhaft Port 80 (Webserver) im Freifunk Netz freigegeben. Alle anderen Verbindungen werden "fallengelassen". Dieser PC verwendet 2 LAN Anschlüsse. Eth1 ist für das eigene Netzwerk zuhause. Eth2 ist an das Freifunk-Netzwerk angeschlossen. Alle IPtables-Regeln beziehen sich daher auf das Interface "eth2". Alle Iptables Befehle müssen als root (sudo) ausgeführt werden.
iptables -F #alle Regeln löschen iptables -A INPUT -i eth2 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #eingehende Verbindungen auf Port 80 zulassen iptables -A OUTPUT -o eth2 -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #ausgehende Verbindungen von Port 80 zulassen iptables -A INPUT -i eth2 -s 0.0.0.0/0 -j DROP #alle eingehenden Verbindungen fallen lassen iptables -A OUTPUT -o eth2 -s 0.0.0.0/0 -j DROP #alle ausgehenden Verbindungen fallen lassen
ip6tables -F #alle Regeln löschen ip6tables -A INPUT -i eth2 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #eingehende Verbindungen auf Port 80 zulassen ip6tables -A OUTPUT -o eth2 -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #ausgehende Verbindungen von Port 80 zulassen ip6tables -A INPUT -p icmpv6 -j ACCEPT ip6tables -A OUTPUT -p icmpv6 -j ACCEPT #Pings erlauben ip6tables -A INPUT -i eth2 -j DROP #alle eingehenden Verbindungen fallen lassen ip6tables -A OUTPUT -o eth2 -j DROP #alle ausgehenden Verbindungen fallen lassen
Iptables Regeln werden von oben nach unten abgearbeitet. Sobald eine Regel auf ein Paket zutrifft, wird der Vorgang beendet. Alle Pakete auf Port 80 landen daher bei "ACCEPT". Die übrigen Pakete landen bei "DROP" und werden somit verworfen.
Für IPv6 gibt es hier noch ein elegantes Script: [1]
Es gibt verschiedene Möglichkeiten, um die Regeln nach einem Neustart automatisch anzuwenden.
1. Folgendes Paket installieren:
sudo apt-get install iptables-persistent
Die Regeln werden dann in /etc/iptables/rules.v4 und /etc/iptables/rules.v6 gespeichert.
Dann muss der Dienst noch aktiviert werden und schon sind die Iptables-Regeln auch über einen Neustart hinweg aktiv.
sudo service iptables-persistent start
2. Autostart durch die /etc/rc.local
Hier kann vor dem "exit 0" der gesamte Block an Iptables Regeln eingefügt werden. Die Datei wird bei jedem Start als root ausgeführt und aktiviert so die in Ihr stehenden Regeln.