# Iptables au démarrage, ne se lance pas

**URL:** <https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972>\
**Category:** Support Debian\
**Tags:** iptables\
**Created:** [Juillet 17, 2017, 10:24 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972 "2017-07-17T10:24:50Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Toinar](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/t/73ab20/32.png) [@Toinar](https://www.debian-fr.org/u/Toinar)\
**Post date:** [Juillet 17, 2017, 10:24 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/1 "2017-07-17T10:24:51Z")

</div>

Salut all,

Je galère un peu à lancer mon script au démarrage voici la manip :

J’ai créé un fichier /etc/init.d/firewall

contenant :

```
    #!/bin/sh

# Vider les tables actuelles
iptables -t filter -F

# Vider les règles personnelles
iptables -t filter -X

# Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

# ---

# Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT

# ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT

# ---

# SSH In
iptables -t filter -A INPUT -p tcp --dport 2222 -j ACCEPT

# SSH Out
iptables -t filter -A OUTPUT -p tcp --dport 2222 -j ACCEPT

# DNS In/Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT

# NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

# HTTP + HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT

# HTTP + HTTPS In
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT

# FTP Out
iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT

# FTP In
modprobe ip_conntrack_ftp # ligne facultative avec les serveurs OVH
iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

```

Ensuite la commande :

```
 chmod +x /etc/init.d/firewall

```

Et ensuite :

```
 update-rc.d firewall defaults

```

Redémarrage du serveur et pas de script firewall lancé au démarrage…

Aurais-je oublié qqchose ?

---

<div class="post-metadata">

**Author:** ![PascalHambourg](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pascalhambourg/32/5837_2.png) [@PascalHambourg](https://www.debian-fr.org/u/PascalHambourg)\
**Post date:** [Juillet 17, 2017, 3:33 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/2 "2017-07-17T15:33:39Z")

</div>

Il ne manquerait pas l’en-tête LSB ?

---

<div class="post-metadata">

**Author:** ![Toinar](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/t/73ab20/32.png) [@Toinar](https://www.debian-fr.org/u/Toinar)\
**Post date:** [Juillet 17, 2017, 4:12 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/3 "2017-07-17T16:12:17Z")

</div>

Ha! Une piste !

Je vais regarder de coté la !  
Chaque en-tête diffère en fonction du script ?

---

<div class="post-metadata">

**Author:** ![PascalHambourg](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pascalhambourg/32/5837_2.png) [@PascalHambourg](https://www.debian-fr.org/u/PascalHambourg)\
**Post date:** [Juillet 17, 2017, 4:18 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/4 "2017-07-17T16:18:32Z")

</div>

Oui, il faut l’adapter.

---

<div class="post-metadata">

**Author:** ![Toinar](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/t/73ab20/32.png) [@Toinar](https://www.debian-fr.org/u/Toinar)\
**Post date:** [Juillet 17, 2017, 4:30 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/5 "2017-07-17T16:30:44Z")

</div>

Problème résolu avec l’ajout du code suivant en début de script :

```
#!/bin/bash

### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Démarre les règles iptables
# Description: Charge la configuration du pare-feu iptables
### END INIT INFO

```

Merci pour ces infos Pascal !

Résolu

---

<div class="post-metadata">

**Author:** ![PascalHambourg](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pascalhambourg/32/5837_2.png) [@PascalHambourg](https://www.debian-fr.org/u/PascalHambourg)\
**Post date:** [Juillet 18, 2017, 10:25 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/6 "2017-07-18T10:25:19Z")

</div>

Tu peux cocher la case qui va bien pour marquer le sujet comme résolu.

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Juillet 19, 2017, 9:22 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/7 "2017-07-19T09:22:33Z")

</div>

Bonjour,  
Il existe le paquet `iptables-persistent`, issu de la suite `netfilter-persistent`, qui te permet de gérer l’application des règles iptables au démarrage.  
Une fois le paquet installé, tu ajoutes tes règles dans le fichier `/etc/iptables/rules.v4` et `/etc/iptables/rules.v6`.  
À l’installation du paquet, tu peux même générer automatiquement le fichier de configuration avec les règles actuellement appliquées.

---

<div class="post-metadata">

**Author:** ![Toinar](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/t/73ab20/32.png) [@Toinar](https://www.debian-fr.org/u/Toinar)\
**Post date:** [Juillet 19, 2017, 7:07 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/8 "2017-07-19T19:07:02Z")

</div>

Ok almtesh, mais alors quel interret de générer un script si un paquet le fait ?

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Juillet 21, 2017, 6:29 UTC](https://www.debian-fr.org/t/iptables-au-demarrage-ne-se-lance-pas/73972/9 "2017-07-21T18:29:15Z")

</div>

Oui, exactement !
