logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 22-06-2017 17:06:49

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

[Résolu] Par-feu bloque accès internet, "OUTPUT".

Bonjour !!


J'ai recherché des exemples de par-feu qui pourraient être intéressant.

Voilà celui que j'ai actuellement et qui me cause un souci au niveau de "OUTPUT".


#!/bin/bash

##KILL
iptables -t filter -F
iptables -t filter -X


##DROP
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
#iptables -t filter -P OUTPUT DROP

#DROP les scans 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

#DROP silencieux des paquets broadcastés
iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP

 
##ACCEPT

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

# SSH
iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

# DNS
#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

# HTTP
#iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT

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

# Mail SMTP
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT

# Mail POP3
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT

# Mail IMAP
iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT

# NTP (horloge du serveur)
#sudo iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

#Accept boucle-local
iptables -t filter -A INPUT -i lo -j ACCEPT
#iptables -t filter -A OUTPUT -o lo -j ACCEPT


##ACCEPT CONNEXIONS PRÉSENTENT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


##DÉNI 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


##LOG
iptables -A INPUT -j LOG
iptables -A FORWARD -j LOG
#iptables -A OUTPUT -j LOG

exit 0
 



Comme vous pouvez le voir, j'ai bloqué tout ce qui est "OUTPUT".

En fait quand je laisse le tout activé, impossible d'avoir accès à Internet.

Peut-être que je dois rajouter un élément dans ce que j'accepte ??


Merci !!

J'aimerai tellement me sentir en sécurité sans ces portes ouvertes cool

Dernière modification par empereur-x (09-07-2017 16:42:32)


Relax

Hors ligne

#2 22-06-2017 18:35:47

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Ben tiens...
Tu bloques tous les paquets sortants et tu t'étonnes que ta machine soit incapable de communiquer ?
Pourquoi avoir fait une chose pareille ?
Comprends-tu ce que fait ce script et pourquoi ?

Il vaut mieux montrer que raconter.

Hors ligne

#3 23-06-2017 01:25:26

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Dans un premier temps je bloque les paquets sortants.
Ensuite je fais comme avec les paquets entrants, je n'ouvre que certains ports bien défini mais j'ai l'impression que ça ne marche pas de la même manière...

Ou quelque-chose évidemment que je ne comprends pas...

Help big_smile

Dernière modification par empereur-x (23-06-2017 01:27:16)


Relax

Hors ligne

#4 23-06-2017 07:55:31

daufinsyd
Membre
Lieu : 68, 63, Karlsruhe
Distrib. : Arch Linux + Debian Stable + Xubuntu
Noyau : Linux 4.17-amd64
(G)UI : Plasma 5.13
Inscription : 02-02-2013
Site Web

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Salut smile

J'avoue ne pas avoir lu en détails mais cette ligne est volontaire ?


# HTTP
#iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
 



C'est bien d'autoriser les paquets entrants mais accepter les sortants est tout aussi important pour se connecter au port 80 des sites wink
Le deuxième # est en trop !


Portable i7 7700HQ, 16Go RAM, GTX 1050Ti, MX 500 Crucial
Intel i7-4790 - 12Go RAM - GTX460
Intel i7-6700 - 8Go RAM - AMD R9 280X 3Go - SSD 850Evo
Odroid C2, Raspberry Pi Zero

Hors ligne

#5 23-06-2017 08:32:36

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Je n'avais pas fait attention que la commande qui règle la politique par défaut de la chaîne OUTPUT à DROP était aussi commentée, comme toutes les règles de la chaîne. L'inconvénient est que le résultat dépend de la valeur antérieure. Si la politique par défaut est restée à ACCEPT (valeur initiale), les paquets sortants ne sont pas bloqués, et avec la règle d'état de la chaîne INPUT les paquets retour des connexions sortantes devraient être acceptés.

Pour le reste des règles INPUT, elles ne sont utiles que pour un serveur qui offre tous ces services. Pas pour un poste client.

Il vaut mieux montrer que raconter.

Hors ligne

#6 23-06-2017 14:26:52

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Bonjour smile

Je suis désolé, j'ai du vous embrouiller...

Petite précision, le script que je vous présente au dessous est tout à fait fonctionnel, c'est seulement quand je décommente la chaine OUTPUT que rien ne va plus....

Pourtant dans un premier temps je coupe tout pour n'ouvrir que certains ports par la suite....

Dernière modification par empereur-x (23-06-2017 14:42:00)


Relax

Hors ligne

#7 23-06-2017 16:36:31

daufinsyd
Membre
Lieu : 68, 63, Karlsruhe
Distrib. : Arch Linux + Debian Stable + Xubuntu
Noyau : Linux 4.17-amd64
(G)UI : Plasma 5.13
Inscription : 02-02-2013
Site Web

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Mais tu décommentes lesquelles ?

Portable i7 7700HQ, 16Go RAM, GTX 1050Ti, MX 500 Crucial
Intel i7-4790 - 12Go RAM - GTX460
Intel i7-6700 - 8Go RAM - AMD R9 280X 3Go - SSD 850Evo
Odroid C2, Raspberry Pi Zero

Hors ligne

#8 23-06-2017 17:27:25

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Bon lol on va faire autrement. (Ça doit être de ma faute)

Voici comment j'aimerai que mon par-feu soit configuré.

#!/bin/bash

##KILL
iptables -t filter -F
iptables -t filter -X


##DROP
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

#DROP les scans 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

#DROP silencieux des paquets broadcastés
iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP

 
##ACCEPT

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

# SSH
iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

# DNS
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

# HTTP
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT

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

# Mail SMTP
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT

# Mail POP3
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT

# Mail IMAP
iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT

# NTP (horloge du serveur)
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

#Accept boucle-local
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT


##ACCEPT CONNEXIONS PRÉSENTENT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


##DÉNI 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


##LOG
iptables -A INPUT -j LOG
iptables -A FORWARD -j LOG
iptables -A OUTPUT -j LOG

exit 0
 



Nous voyons que dans un premier temps je ne laisse rien passer. Je DROP FORWARD et INPUT.
Ensuite j'ACCEPT de les laissé passer que par certains ports bien précis, exemple pour le PING :

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


Mon problème est que ce model de par-feu ne fonctionne pas lorsque OUTPUT est en mode DROP et que par la suite je choisis les ports que la sortie peut utiliser.
Impossible donc avec ce model d'utiliser internet par la suite..

Le seul moyen que j'ai trouvé est de laissé OUTPUT sur sa valeur initial comme le dit raleur, donc en mode ACCEPT.

Il serait intéressant pour moi de pouvoir gérer les entrées mais aussi les sorties.


Relax

Hors ligne

#9 23-06-2017 18:57:53

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

empereur-x a écrit :

(Ça doit être de ma faute)


Si tu le dis, qui suis-je pour te contredire et douter de ta clairvoyance ?
(si on ne peut plus persifler un peu...)

empereur-x a écrit :

Voici comment j'aimerai que mon par-feu soit configuré.


Si je traduis bien ce script, la machine fait tourner des serveurs SSH, DNS, HTTP, (mais pas HTTPS), FTP (mais la règle ne suffit pas), SMTP, POP3, IMAP qui doivent être accessibles depuis l'extérieur. Depuis la machine on doit pouvoir se connecter à des serveurs SSH, DNS, HTTP, (mais pas HTTPS), FTP (mais la règle ne suffit pas), SMTP, POP3, IMAP, NTP.
Est-ce bien ce que tu veux ?

Par contre je ne vois pas à quoi servent les règles dans la chaîne FORWARD. Cette chaîne n'est utilisée que si la machine fait office de routeur, ce qui ne semble pas être le cas. Et tes règles sont trop incomplètes pour servir à quoi que ce soit. Par exemple en TCP elles n'autorisent que les paquets SYN (demande de connexion), et pas les suivants (acceptation, confirmation, envoi de données...).

empereur-x a écrit :

Ensuite j'ACCEPT de les laissé passer que par certains ports bien précis, exemple pour le PING


Deux objections :
- Il n'y a pas de port pour le ping. Le protocole ICMP n'utilise pas la notion de port. Il utilise la notion de type et de code pour distinguer les différentes sortes de paquets ICMP.
- Tes règles acceptent tous les types de paquet ICMP, et pas seulement le ping. Pour n'accepter que les requêtes de ping, il faudrait spécifier le type echo-request.

empereur-x a écrit :

ce model de par-feu ne fonctionne pas lorsque OUTPUT est en mode DROP


Comment le vérifies-tu ? Avec quels tests ?
Ne réponds pas "avec un navigateur", c'est le pire outil pour tester un pare-feu.


Il vaut mieux montrer que raconter.

Hors ligne

#10 24-06-2017 16:43:56

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Bonjour !! big_smile

Par rapport aux ports qui sont choisis, il est vrai que je cherchais à en ouvrir de façon générale pour un poste client.

Je vais de ce pas fermer la plus par des ports, pour n'ouvrir que le 22, 80, 110, et peu après j'ouvrirais petit à petit si besoin...

Dans le domaine des tests, tu as lu dans mes pensées tongue , le navigateur était une chose logique pour moi, mais, a priori, je devrais utiliser un OS type Kali-linux j'imagine....

Merci beaucoup pour ces réactions qui m'ont permis d'apprendre de nouvelles choses !

Auriez-vous un script "basique" à offrir ??? smile

Relax

Hors ligne

#11 24-06-2017 21:07:41

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Si ce script est pour un poste client, alors tu peux/dois commenter toutes les règles d'autorisation de ports dans INPUT qui ne servent que pour les connexions entrantes.

Ensuite, ajoute le port TCP 443 (HTTPS) aux ports autorisés en sortie sinon les nombreux sites web sécurisés comme debian-facile.org ne seront pas accessibles.

Pas besoin de distribution spéciale pour tester. En sortie, il suffit d'utiliser les commandes de base :
- host, dig ou nslookup pour la résolution DNS
- ping pour le ping
- telnet ou nc pour n'importe quel port TCP

Il vaut mieux montrer que raconter.

Hors ligne

#12 25-06-2017 05:18:42

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Post signalé dans le wiki ici :
https://debian-facile.org/doc:reseau:ip … lien-utile

Merci à tous les intervenants.

... happy0034.gif

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#13 25-06-2017 22:48:34

empereur-x
Membre
Distrib. : Debian the best.
Noyau : Noyau terrestre.
(G)UI : KDE.
Inscription : 06-02-2017

Re : [Résolu] Par-feu bloque accès internet, "OUTPUT".

Merci milles fois raleur, je vais suivre tes conseils !! cool

Je vais consulter aussi la page wiki pour de plus amples info, merci à toi aussi smolski ! smile

Relax

Hors ligne

Pied de page des forums