wiki/HowtoIPTables.md

65 lines
1.8 KiB
Markdown
Raw Normal View History

2016-12-29 11:25:39 +01:00
**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
# Howto IPTables
<http://netfilter.org/>
_netfilter_ est la couche de firewalling sous Linux, gérable via la commande *iptables*.
## Firewall sur un serveur
Sur un serveur, nous gérons le firewall avec le script *minifirewall*.
### minifirewall
<https://forge.evolix.org/projects/minifirewall>
Cela s'installe ainsi :
~~~
# [ -e /etc/firewall.rc ] && cp /etc/firewall.rc /etc/firewall.rc.bak
# cd /etc && wget "<https://forge.evolix.org/projects/minifirewall/repository/revisions/master/raw/firewall.rc"> -O firewall.rc
# cd /etc/init.d && wget "<https://forge.evolix.org/projects/minifirewall/repository/revisions/master/raw/minifirewall"> -O minifirewall
# chmod 700 /etc/init.d/minifirewall
# chmod 600 /etc/firewall.rc
~~~
On peut ensuite gérer les règles via le fichier _/etc/firewall.rc_ et on peut ainsi :
~~~
# /etc/init.d/minifirewall restart
# /etc/init.d/minifirewall stop
~~~
### Divers
En cas de besoin de bannir temporairement une adresse IP :
~~~
# iptables -I INPUT -s IP_PIRATE -j DROP
~~~
## NAT bidirectionnel
~~~
# iptables -t nat -A PREROUTING -i eth0 -d IP_publique -j DNAT --to-destination 10.1.2.3
# iptables -t nat -A POSTROUTING -o eth0 -s 10.1.2.3 -j SNAT --to-source IP_publique
~~~
2017-03-21 11:38:04 +01:00
## Exemples
### Autoriser toute une interface
Lorsqu'un serveur dispose de plusieurs interfaces, dont une pour un réseau local privé, on peut autoriser tout le trafic sur cette interface (ici "eth1") :
~~~
/sbin/iptables -A INPUT -i eth1 -j ACCEPT
2017-12-26 15:24:12 +01:00
~~~
### Autoriser la sortie sur un port
Exemple si on a un serveur Munin centralisé, il a besoin de joindre les "munin-node" :
~~~
/sbin/iptables -A INPUT -p tcp --sport 4949 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
2017-03-21 11:38:04 +01:00
~~~