# Iptables non appelé au démarrage

**URL:** <https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863>\
**Category:** Support Debian\
**Tags:** iptables\
**Created:** [Février 8, 2018, 11:05 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863 "2018-02-08T23:05:13Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 8, 2018, 11:05 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/1 "2018-02-08T23:05:14Z")

</div>

J’ai suivi [ce tutoriel](https://www.debian-fr.org/t/pare-feu-ipv4-ipv6-versions-bureau-et-serveur/68665?source_topic_id=70428) pour créer mes préférences iptables, pour un serveur.  
Malgré `update-rc.d init_firewall defaults`, `iptables -L -v` me sort au reboot :

```
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target prot opt in out source destination 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target prot opt in out source destination 

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target prot opt in out source destination 

```

Si je lance `/etc/init.d/init_firewall start`, mes règles s’activent conformément au script :

```
 Chain INPUT (policy DROP 5 packets, 280 bytes)
 pkts bytes target prot opt in out source destination
   17 1116 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
    0 0 ACCEPT all -- lo any anywhere anywhere
    0 0 ACCEPT icmp -- any any anywhere anywhere
    1 104 ACCEPT tcp -- any any anywhere anywhere tcp dpt:50886
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:http
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:https
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:domain
    0 0 ACCEPT udp -- any any anywhere anywhere udp dpt:domain

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target prot opt in out source destination
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp flags:FIN,SYN,RST,ACK/SYN limit: avg 1/sec burst 5
    0 0 ACCEPT udp -- any any anywhere anywhere limit: avg 1/sec burst 5
    0 0 ACCEPT icmp -- any any anywhere anywhere icmp echo-request limit: avg 1/sec burst 5
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp flags:FIN,SYN,RST,ACK/RST limit: avg 1/sec burst 5

Chain OUTPUT (policy DROP 6 packets, 1200 bytes)
 pkts bytes target prot opt in out source destination
   21 5336 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
    0 0 ACCEPT all -- any lo anywhere anywhere
    0 0 ACCEPT icmp -- any any anywhere anywhere
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:50886
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:http
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:https
    0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:domain
    0 0 ACCEPT udp -- any any anywhere anywhere udp dpt:domain
    1 76 ACCEPT udp -- any any anywhere anywhere udp dpt:ntp

```

Qu’est-ce qui peut être à l’origine d’une absence d’exécution au démarrage ?

---

<div class="post-metadata">

**Author:** ![mattotop](https://www.debian-fr.org/user_avatar/www.debian-fr.org/mattotop/32/3942_2.png) [@mattotop](https://www.debian-fr.org/u/mattotop)\
**Post date:** [Février 9, 2018, 9:51 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/2 "2018-02-09T09:51:22Z")

</div>

Le probléme, c’est qu’on est passé en systemd, depuis le tuto, et le fonctionnement des scripts de démarrage ne se fait plus juste en mettant un script init dans /etc/init.d et en appelant update-rc.d  
Je n suis pas un pro de la config des scripts de démarrage de systemd et un peu pressé, mais j’ai trouvé ça que tu peux lire:

[http://linuxfr.org/news/systemd-pour-les-administrateurs-parties-3-4-et-5#partie-3-convertir-un-script-dinit-sysv-en-fichier-de-service-systemd](http://linuxfr.org/news/systemd-pour-les-administrateurs-parties-3-4-et-5#partie-3-convertir-un-script-dinit-sysv-en-fichier-de-service-systemd)

---

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 9, 2018, 10:13 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/3 "2018-02-09T10:13:14Z")

</div>

Merci pour ta réponse.  
Je vais essayer de me plonger dedans dès que j’ai un peu de temps.  
Cette documentation a l’air fournie.  
Autre option : migrer chez Devuan ! 😉

---

<div class="post-metadata">

**Author:** ![AnonymousCoward](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f9ae1b/32.png) [@AnonymousCoward](https://www.debian-fr.org/u/AnonymousCoward)\
**Post date:** [Février 9, 2018, 2:59 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/4 "2018-02-09T14:59:48Z")

</div>

Un moyen de faire c’est d’installer le paquet [iptables-persistent](https://packages.debian.org/stretch/iptables-persistent) .

Ensuite, on peut sauvegarder manuellement les règles avec `iptables-save` redirigé vers `/etc/iptables/rules.v4` ou via une commande du genre `service netfilter-persistent save` .

Ce n’est pas parfait. Mais ça marche.

–  
AnonymousCoward

---

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 9, 2018, 4:14 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/5 "2018-02-09T16:14:20Z")

</div>

> [@AnonymousCoward](#):
>
> Ce n’est pas parfait.

Pourquoi ?

---

<div class="post-metadata">

**Author:** ![AnonymousCoward](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f9ae1b/32.png) [@AnonymousCoward](https://www.debian-fr.org/u/AnonymousCoward)\
**Post date:** [Février 9, 2018, 4:49 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/6 "2018-02-09T16:49:41Z")

</div>

- La sauvegarde des règles est à faire de manière manuelle.
- Quand on utilise un logiciel qui touche à iptables / ip6tables comme fail2ban, cela sauvegarde aussi les règles de fail2ban ou alors il faut arrêter le service fail2ban pour faire la sauvegarde.
- On devrait pouvoir préciser si l’on souhaite sauvegarder seulement les règles en IPv4 ou en IPv6.
- Parce-que, de base, les compteurs (de paquet et d’octets) ne sont pas sauvegardés ou restaurés.
- Parce-que, de base, cela ne sauvegarde pas les jeux d’adresses IP mis en place avec ipset.

Et je suis sûr que l’on peut trouver encore plein de petits défauts / limites.

–  
AnonymousCoward

---

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 9, 2018, 5:09 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/7 "2018-02-09T17:09:38Z")

</div>

OK, compris !

---

<div class="post-metadata">

**Author:** ![grandtoubab](https://www.debian-fr.org/user_avatar/www.debian-fr.org/grandtoubab/32/4505_2.png) [@grandtoubab](https://www.debian-fr.org/u/grandtoubab)\
**Post date:** [Février 9, 2018, 6:42 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/8 "2018-02-09T18:42:19Z")

</div>

Salut  
j’utilise ufw et son interface graphique gufw  
[https://wiki.debian.org/Uncomplicated%20Firewall%20(ufw)](https://wiki.debian.org/Uncomplicated%20Firewall%20%28ufw%29)  
bien intégré a systemd

```auto
systemctl status *ufw*
● ufw.service - Uncomplicated firewall
   Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enabled)
   Active: active (exited) since Fri 2018-02-09 10:30:49 CET; 9h ago
     Docs: man:ufw(8)
  Process: 219 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SUCCESS)
 Main PID: 219 (code=exited, status=0/SUCCESS)

févr. 09 10:30:49 debian systemd[1]: Started Uncomplicated firewall.
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

```

ça me suffit amplement

```auto
 ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To Action From
-- ------ ----
192.168.0.22 ALLOW IN 192.168.0.15              
192.168.0.15 ALLOW IN 192.168.0.22              
6566/tcp ALLOW IN Anywhere                  
1718/udp ALLOW IN Anywhere                  
1900/udp ALLOW IN Anywhere                  
8200/tcp ALLOW IN Anywhere                  
6566/tcp (v6) ALLOW IN Anywhere (v6)             
1718/udp (v6) ALLOW IN Anywhere (v6)             
1900/udp (v6) ALLOW IN Anywhere (v6)             
8200/tcp (v6) ALLOW IN Anywhere (v6)             

192.168.0.22 ALLOW OUT 192.168.0.15              
192.168.0.15 ALLOW OUT 192.168.0.22              
1718/udp ALLOW OUT Anywhere                  
1900/udp ALLOW OUT Anywhere                  
8200/tcp ALLOW OUT Anywhere                  
1718/udp (v6) ALLOW OUT Anywhere (v6)             
1900/udp (v6) ALLOW OUT Anywhere (v6)             
8200/tcp (v6) ALLOW OUT Anywhere (v6)             

```

---

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 9, 2018, 9:57 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/9 "2018-02-09T21:57:41Z")

</div>

ufw semble être le choix le plus prudent compte tenu de mon manque d’expérience dans Debian.  
@grandtoubab : je suppose qu’ufw génère automatiquemeent un script rangé par exemple dans `/etc/init.d/firewall`, n’y a-t-il pas risque de conflit avec mes scripts que j’ai créés selon [le tutoriel de ce forum](https://www.debian-fr.org/t/pare-feu-ipv4-ipv6-versions-bureau-et-serveur/68665?source_topic_id=70428) ?  
Merci pour votre aide.

---

<div class="post-metadata">

**Author:** ![grandtoubab](https://www.debian-fr.org/user_avatar/www.debian-fr.org/grandtoubab/32/4505_2.png) [@grandtoubab](https://www.debian-fr.org/u/grandtoubab)\
**Post date:** [Février 10, 2018, 8:12 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/10 "2018-02-10T08:12:57Z")

</div>

ufw n’est qu’un logiciel frontal pour iptables

si je liste iptables, je retrouve les règles créées par ufw

exemple

```auto
iptables -L
.
.
.
Chain ufw-user-input (1 references)
target prot opt source destination         
ACCEPT all -- 192.168.0.15 192.168.0.22        
ACCEPT all -- 192.168.0.22 192.168.0.15        
ACCEPT tcp -- anywhere anywhere tcp dpt:sane-port
ACCEPT udp -- anywhere anywhere udp dpt:1718
ACCEPT udp -- anywhere anywhere udp dpt:1900
ACCEPT tcp -- anywhere anywhere tcp dpt:8200

```

pour faciliter la mise en place de règles personnelles utiliser gufw  
[https://doc.ubuntu-fr.org/gufw](https://doc.ubuntu-fr.org/gufw)

[http://gufw.org/](http://gufw.org/)

---

<div class="post-metadata">

**Author:** ![Xisqu4re](https://www.debian-fr.org/user_avatar/www.debian-fr.org/xisqu4re/32/6278_2.png) [@Xisqu4re](https://www.debian-fr.org/u/Xisqu4re)\
**Post date:** [Février 10, 2018, 5:11 UTC](https://www.debian-fr.org/t/iptables-non-appele-au-demarrage/75863/11 "2018-02-10T17:11:27Z")

</div>

OK. Ce qui compte pour moi c’est d’avoir un pare-feu fiable, que je peux régler facilement et contrôler.  
Pour gufw je n’ai pas d’environnement graphique sur cette bécane donc je ne peux pas m’en servir.
