Backbrain   Archive

Iptables

find blocking rule and delete it

iptables -L -n -v --line-numbers | grep -v " 0 DROP"
iptables -D bannedDownloader [LINE_NUMBER]

clean iptables

completely clean iptables

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

nat rules

iptables -t nat -L --line-numbers -n
ip6tables -L -n -v -t nat --line-numbers

delete

sudo iptables -D INPUT <<number here>>

1.202.241.214 <– china :D

How can I check the hit count for each rule in iptables?

inspecting iptables / usage

iptables -L -nvx
sudo apt-get install -y iptables-persistent
sudo service iptables-persistent start

sudo iptables-save > /etc/iptables/rules.v4
sudo service iptables-persistent restart

“Unsichtbarmachen”

Das System “unsichtbar” zu machen, indem man Pakete nicht regelgerecht abweisen, sondern kommentarlos verwerfen lässt (DROP), ist ebenfalls nicht sinnvoll. Ein System, das keine Ports offen hat, wie ein Standard-Ubuntu-Desktop, hat keinen einzigen Grund, “unsichtbar” zu sein. Im Gegenteil: Sendet ein System eine Verbindungsanfrage (bspw. weil es sich vor kurzem mit einem anderen System ausgetauscht hat, das zu dem Zeitpunkt diese IP-Adresse hatte) weiß es sofort, dass es dort keinen Dienst gibt, und bricht ab (wenn es sauber programmiert ist). Bei “unsichtbaren” Systemen versucht es dagegen noch eine halbe Ewigkeit, die Daten zuzustellen. Wenn ein Rechner aber sowieso einen Dienst offen hat, bspw. ssh, dann kann keine “Firewall” der Welt diesen Port “unsichtbar” machen.

“Unsichtbarmachen” kann sogar Probleme verursachen. Bspw. versuchen einige FTP- und IRC-Server, bei jedem Login eine ident-Abfrage zu machen (Port 113). Wenn dieser Port auf dem Client nun “unsichtbar” ist, wird der Login verzögert, bis der Timeout kommt. Andere Probleme kann man bekommen, wenn irgendeine Software wahllos ICMP-Pakete verwirft, wie es viele Windows-Firewalls machen. Dann funktioniert nämlich unter Umständen die sogenannte Path-MTU-Discovery nicht mehr, und es kann zu “rätselhaften” Verbindungsproblemen kommen, die sich der Laie nicht erklären kann.


What do the three rules do?

Those 3 rules seem pretty self-explanatory:

sudo iptables -A INPUT -p tcp --dport 3306 -j REJECT --reject-with tcp-reset
sudo iptables -A INPUT -p tcp --dport 9999 -j REJECT --reject-with tcp-reset
sudo iptables -I INPUT 1 -p ICMP --icmp-type timestamp-request -j DROP
sudo iptables -I INPUT 1 -p ICMP --icmp-type timestamp-reply -j DROP
sudo iptables -A INPUT -p icmp --icmp-type 13 -j DROP