Problème IPTABLES

Bonjour a tous, pour ceux qui on vu le titre, je suis en train de procédé à la sécurisation de mon serveur dédié.

Donc j’ai changé le port SSH.
Installer Fail2ban.
Protéger la connexion xrdp.
Installer rkhunter.
Mise en place du Firewall : Iptables

Et la ou je bloque c’est pour activer un script iptable personnaliser

Voici le script

#!/bin/sh

BEGIN INIT INFO

Provides: Firewall maison

Required-Start: $local_fs $remote_fs $network $syslog

Required-Stop: $local_fs $remote_fs $network $syslog

Default-Start:

Default-Stop:

X-Interactive: false

Short-Description: Firewall maison

END INIT INFO

IPT=/sbin/iptables

Mise a 0

echo "IPTABLES RESET"
iptables -t filter -F
iptables -t filter -X

Bloque Tout

echo "DROP INPUT FORWARD OUTPUT"
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

Ne pas casser les connexions etablies

echo "IPTABLE CONNECTION RELATED ESTABLISHED"
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Autorise localhost

echo "IPTABLES LOCALHOST OK"
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT

Autorise le PING (icmp)

echo "IPTABLES PING ICMP OK"
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT

Autotise le SSH

echo "IPTABLES SSH OK"
iptables -t filter -A INPUT -p tcp --dport 1986 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 1986 -j ACCEPT

#Autorise le XRDP
echo "IPTABLES XRDP OK"
iptables -t filter -A INPUT -p tcp --dport 7988 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 7988 -j ACCEPT

Avant de l’installer dans /etc/init.d
Je le lance pour voir si tout fonctionne bien et j’ai cette erreur suivante

-bash: ./firewall: /bin/sh^M: bad interpreter: No such file or directory

Merci de votre aide

Mauvais sujet, ce problème n’a rien à voir avec iptables.

^M représente le caractère “retour chariot” (CR, code ASCII 13).
Je soupçonne que ce fichier a des fins de ligne au format DOS/Windows (CR+LF) au lieu du format Unix (LF seul). Comment l’as-tu créé, et le cas échéant, transféré sur la machine ?
Essaie de le convertir au format Unix pour supprimer ces caractères de retour chariot en fin de ligne avec la commande [mono]dos2unix[/mono] du paquet éponyme.

Je suis quand même surpris que le shell ne gère pas les fins de ligne au format DOS.

c’est un fichier que j’ai avec nano sur un ancien serveur, vu que j’ai changé, j’ai récupéré ce fichier sur mon pc de bureau, mais je ne l’ai jamais édité.
Je fais les modif et je vous tient au courant.

Voila c’est fait merci a toi :slightly_smiling:
A bientôt