Résolu. Problème firewall

salut,
Je passe a coté de quelques chose depuis quelques que le FW ne fonctionne plus avec cette erreur à la cmd

/etc/init.d/mon_parefeu clean
==>
ligne 1: #!/bin/sh: Aucun fichier ou dossier de ce type

De plus, a chaque extinction, le FW se réinitialise , il ne gqrde pas les règles nouvellement mises en place, meme après le “STOP”

C’est quoi ce déterrage, il y a une épidémie aujourd’hui ?
Ouvre ton propre fil pour décrire ton problème, il y a bien des problèmes d’iptables à règler, celui là n’est peut être même pas lié au tien.

Je viens de scinder l’ancien fil, merci de faire attention à la nécromancie.

Bon, sinon, c’est moi qui ai prototypé le script sur lequel Ricardo s’est basé pour construire son script de parefeu, donc je devrais pouvoir, maintenant que je regarde un peu moins vite ton problème ( :smiley: ), t’aider un peu.

Alors là, je me demande si ce n’est pas parce qu’il n’y a plus de sh installé par défaut de nos jours.
Ça m’étonne un peu qu’il ne puisse ne plus y avoir du tout la commande, pour la retrocompatibilité, mais aprés tout, les temps changent…

A priori, si tu fais which sh, si le problème est là, il doit te dire qu’il ne le trouve pas.
Chez moi ls -l `which sh`
lrwxrwxrwx 1 root root 4 janv. 24 2017 /bin/sh -> dash
C’est un lien symbolique vers dash.

Dans ce cas, essayes de changer #!/bin/sh en #!/bin/bash

Aprés, pour ce qui est de son placement dans /etc/init.d et de sa structure, ça doit théoriquement encore marcher, mais je ne suis pas sur, car on est passé à systemd, et je ne sais pas s’il le voit comme service, juste en le mettant dans le répertoire init.d.
Il faut peut être faire autrechose pour qu’il se déclenche au boot, et ça peut expliquer pourquoi il ne sauve pas les règles lors de l’arrêt, et ne restaure pas le contenu au reboot.
Quelqu’un de plus à jour que moi pourrait peut être nous éclairer à ce sujet.

Bon si c’est pour un post perso, ufw suffit amplement
sinon il existe iptables-persistent qui sauvegarde vos règles et les restaure au démarrage de la machine.

Je dirais tout simple :

Après je n’utilise pas ces scripts, j’avais des besoins spécifiques à docker et ce que j’en fait.
Et je suis loin de maîtriser les règles iptable et ip6table comme Pascal :wink:

En résumé systemd va appelé les démons, qui eux même appellerons les scripts adéquats.
Le but étant que la target soit avant sysvinit devrait normalement suffire pour protéger avant toute connexion réseau, je vous renvoie vers cet article expliquant en détails les target de systemd :

http://landoflinux.com/linux_runlevels_systemd.html

C’est très succin au niveau de l’explication mais à mon avis amplement suffisant pour le cas présent.

Merci, pour cette astuce dont je n’avais pas connaissance.