Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/08/2016, à 12:39

damien72100

[PROBLEME] Règles IPtables qui bloque le sftp

Bonjours à vous,
Je ne sais pas ou m'adresser pour ce problème et je ne mis connais pas trop trop, ayant une machine chez OVH j'ai eu besoin d'un serveur secondaire pour y développer/configurer des serveurs de jeux tel que garry's mod, armaIII, teamspeak...
Ayant finalisé mon projet et avant de l'ouvrir à ma petite communauté, je m'intéresse au protection IPtables puisque dans ce monde de jeu il y a pas mal de "petit malins" qui cherchent à down des serveurs par tout les moyens inimaginable.

J'ai donc crée un petit script IPTables qui est le suivant:

IPTABLES="/sbin/iptables"
# Reset iptables
$IPTABLES -F
$IPTABLES -X
# Bloques les co
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j DROP
$IPTABLES -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
# Drop scan XMAS et NULL
$IPTABLES -A INPUT -p tcp --tcp-flags FIN,URG,PSH FIN,URG,PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
# Flood ou deni de service
$IPTABLES -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT
$IPTABLES -A FORWARD -p udp -m limit --limit 1/second -j ACCEPT
$IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT
# Scan de ports
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT
# Protection contre le scan de port 2
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -m limit --limit 1/h -j ACCEPT
$IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -m limit --limit 1/h -j ACCEPT
# Jeux, TS
[...]
# Protection contre le Synflood
$IPTABLES -A INPUT -p tcp --syn -m limit --limit 2/s --limit-burst 30 -j ACCEPT
# Protection contre le Pingflood
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# SSH SFTP
$IPTABLES -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
$IPTABLES -t filter -A INPUT -p tcp --dport 21 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -p tcp --dport 21 -j ACCEPT
$IPTABLES -t filter -A INPUT -p tcp --dport 20 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -p tcp --dport 20 -j ACCEPT
# Localhost
$IPTABLES -A INPUT -s 127.0.0.1/32 --jump ACCEPT
# Rejete le reste
$IPTABLES -A INPUT -j REJECT
exit 0

Malheureusement lorsque je le lance, tout mes services fonctionnent bien sauf que je n'ai plus accès à mon sftp par filezilla.
Le port utilisé est bien le port 22, et quand je supprimes mes règles le sftp refonctionne bien ^^
J'ai procédé à des recherches sur Mr Google, j'ai même essayer en installant un ftp "ProFTPd" que j'ai remove car cela ne fonctionnais toujours pas avec mes règles active, j'ai demandé de l'aide à un ami mais pour lui et pour moi, mes règles son bonnes ...

Je vous remercie de prendre le temps de me répondre.
Cordialement Damien.

Hors ligne

#2 Le 20/08/2016, à 13:04

Compte anonymisé

Re : [PROBLEME] Règles IPtables qui bloque le sftp

$IPTABLES -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

---->

$IPTABLES -t filter -A OUTPUT -p tcp --sport 22 -j ACCEPT

#3 Le 20/08/2016, à 13:16

damien72100

Re : [PROBLEME] Règles IPtables qui bloque le sftp

Après avoir modifié cette règle, cela ne fonctionne toujours pas, journalisation filezilla:

Statut :    Connexion à X.XXX.XX.XX...
Réponse :    fzSftp started, protocol_version=2
Commande :    open "root@X.XXX.XX.XX" 22
Erreur :    Connection interrompue après 20 secondes d'inactivité
Erreur :    Impossible d'établir une connexion au serveur
Statut :    Attente avant nouvel essai...
Statut :    Connexion à X.XXX.XX.XX...
Réponse :    fzSftp started, protocol_version=2
Commande :    open "root@X.XXX.XX.XX" 22

Cordialement Damien.

Hors ligne

#4 Le 20/08/2016, à 13:46

Compte anonymisé

Re : [PROBLEME] Règles IPtables qui bloque le sftp

on es bien d'accord, ces règles iptables sont installées côté serveur ssh ?

peut tu donner le retour:
sudo iptables-save

#5 Le 20/08/2016, à 14:30

damien72100

Re : [PROBLEME] Règles IPtables qui bloque le sftp

voici ce que tu demande:
http://www.hostingpics.net/viewer.php?i … essave.png
sudo iptables-save
Cordialement.

Dernière modification par damien72100 (Le 20/08/2016, à 14:30)

Hors ligne

#6 Le 20/08/2016, à 15:08

Compte anonymisé

Re : [PROBLEME] Règles IPtables qui bloque le sftp

pourquoi ne pas faire directement un copie/collé ici ...

pour info il manque déjà:

-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT

mais de toute façon la politique par défaut est en ACCEPT  alors toutes les règles ACCEPT ne servent à rien du tout
et si ta politique par défaut était par exemple:

*filter
:INPUT DROP [2745:402228]
:FORWARD DROP [11:440]
:OUTPUT DROP [14622:915604]

alors cela nécessiterait de rajouter aussi des règles pour autoriser les connexions  "dites déjà établies" qui sont absentes.

en l'état actuel, pour savoir quelle règle DROP provoque le blocage, il faut les rajouter une à une et tester.

Dernière modification par Compte anonymisé (Le 20/08/2016, à 15:09)

#7 Le 20/08/2016, à 18:54

damien72100

Re : [PROBLEME] Règles IPtables qui bloque le sftp

Désoler mon copier/coller n'écrivait rien xD
Les règles manquante ont été rajoutés comme ceci au début:

# Reset iptables
$IPTABLES -F
$IPTABLES -X
# Manque
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
# Bloques les co
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j DROP
$IPTABLES -A OUTPUT -p icmp --icmp-type echo-reply -j DROP

J'ai donc procédé comme vous avez dis, je l'ai fait manuellement une par une pour voir laquelle bloque mon sftp, et il s'avère que c'est la dernière:

$IPTABLES -A INPUT -j REJECT

Ne m'y connaissant pas, il me paraissait logique de clear mes règles et de les ajoutés une par une et de bloquer le reste que j'utilise pas du coup comment puis-je faire pour remédié à ce petit problème ? Je devrait supprimer

$IPTABLES -A INPUT -j REJECT

ou le modifier ?

Mes règles précédentes fonctionnent-elles ?

Cordialement Damien.

Hors ligne

#8 Le 20/08/2016, à 20:32

Compte anonymisé

Re : [PROBLEME] Règles IPtables qui bloque le sftp

damien72100 a écrit :
$IPTABLES -A INPUT -j REJECT

En effet, attention à l'ordre dans lequel les règles sont éxécutées,  il fallait que celle-ci soit placée avant  les  ACCEPT de la chaîne INPUT
d'autre part il manque celle-ci:

iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT

https://doc.ubuntu-fr.org/iptables

Dernière modification par Compte anonymisé (Le 20/08/2016, à 20:35)

#9 Le 20/08/2016, à 20:56

damien72100

Re : [PROBLEME] Règles IPtables qui bloque le sftp

Comme ceci ? :

IPTABLES="/sbin/iptables"
# Reset iptables
$IPTABLES -F
$IPTABLES -X
# A placer avant les accept de la chaine INPUT
$IPTABLES -A INPUT -j REJECT # ICI ????????????????????????????????
# Manque
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
$IPTABLES -A INPUT -m state --state ESTABLISHED -j ACCEPT # ICI ????????????????????????????????
# Bloques les co
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j DROP
$IPTABLES -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
# Drop scan XMAS et NULL
$IPTABLES -A INPUT -p tcp --tcp-flags FIN,URG,PSH FIN,URG,PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
# Flood ou deni de service
$IPTABLES -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT
$IPTABLES -A FORWARD -p udp -m limit --limit 1/second -j ACCEPT
$IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT
# Scan de ports
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT
# Protection contre le scan de port 2
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -m limit --limit 1/h -j ACCEPT
$IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -m limit --limit 1/h -j ACCEPT
# Gmod
$IPTABLES -I INPUT -p tcp --dport 27005:27025 -j ACCEPT
$IPTABLES -I INPUT -p udp --dport 27005:27025 -j ACCEPT
[...]
exit 0

Cordialement Damien.

Hors ligne