Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Configuration IPtables general

12 réponses
Avatar
hibouuu
Bonjour a tous ...

Voila j'aimerais avoir un pare feux , biensur pour la securité
je possede un serveur Apache, mais avan de pouvoir l'inseré dans le
pare feu, je voudrais au moin reussir a me connecté sur le net avec
juste firefox..
Voici ce que j'ai créer et modifier a force que sa ne marche pas
j'ai commencer a regarder sur lea-linux mais sa ne marché pas ..

#/bin/sh
# ceci permet d'avoir un simple pare feu ...

############### CONFIGURATION

#pare feu !!!
IPTABLES=/sbin/iptables
#reseau lan :
INTER_LAN=eth0
#reseau internet
EXTER_WEB=ppp0

###### REFUSER L'ACCES !!! REGLE GENERAL
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

##### PERMETTRE LOCALHOST ETRE LIBRE
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
$IPTABLES -A FORWARD -i lo -j ACCEPT
$IPTABLES -A FORWARD -o lo -j ACCEPT

###########reseau local vers le web ! c'est ici ou sa ne focntionne
pas (???)

$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT

#############################################################################

Personnelemnt je vois pas le probleme mais en tou cas j'arrive a
envoyer un requete et sa sarrete la ! Lol

merci pour votre aide :D !!!

10 réponses

1 2
Avatar
Nicolas George
zeon wrote in message :
Voila j'aimerais avoir un pare feux , biensur pour la securité
je possede un serveur Apache, mais avan de pouvoir l'inseré dans le
pare feu, je voudrais au moin reussir a me connecté sur le net avec
juste firefox..


Eh bien, il faudrait au moins une règle qui permette aux connexions
originaires de ton poste de sortir, et une règle qui permette aux réponses à
ces connexions d'entrer.

$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP


Ajouter des règles universelles « REJECT » à la fin serait une bonne idée.
DROP est rarement une bonne politique.

Avatar
pascal
On Sat, 29 Jan 2005 04:24:45 -0800, zeon wrote:

Bonjour a tous ...

Voila j'aimerais avoir un pare feux , biensur pour la securité
je possede un serveur Apache, mais avan de pouvoir l'inseré dans le
pare feu, je voudrais au moin reussir a me connecté sur le net avec
juste firefox..
Voici ce que j'ai créer et modifier a force que sa ne marche pas
j'ai commencer a regarder sur lea-linux mais sa ne marché pas ..

#/bin/sh
# ceci permet d'avoir un simple pare feu ...

############### CONFIGURATION

#pare feu !!!
IPTABLES=/sbin/iptables
#reseau lan :
INTER_LAN=eth0
#reseau internet
EXTER_WEB=ppp0

###### REFUSER L'ACCES !!! REGLE GENERAL
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

##### PERMETTRE LOCALHOST ETRE LIBRE
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
$IPTABLES -A FORWARD -i lo -j ACCEPT
$IPTABLES -A FORWARD -o lo -j ACCEPT

###########reseau local vers le web ! c'est ici ou sa ne focntionne
pas (???)

$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT



inverse les régles :
$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT

OUTPUT -> destination de sortie , INPUT->c'est la source en entrée

Ce que tu as écrit permet de rentrer du web vers ton serveur apache.


#############################################################################

Personnelemnt je vois pas le probleme mais en tou cas j'arrive a
envoyer un requete et sa sarrete la ! Lol

merci pour votre aide :D !!!


Avatar
Rakotomandimby (R12y) Mihamina
( Sat, 29 Jan 2005 15:01:12 +0100 ) pascal :

$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT



inverse les régles :
$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT


Je suis d'accord pour ta premiere ligne.
Par contre le but de la 2nde juste en dessous c'est que le serveur web
soit joignable de l'exterieur.

Donc c'est "--destination-port 80".

$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT


Sinon, le Monsieur initial il est un peu parano quand meme :-)
Ok faut securiser mais pas au point de "-P" les "OUTPUT" en "DROP".

Ou alors il devrait les logger et analyser les paquets dropped.
Sinon je vois pas trop l'interet.


--
ASPO Xxxxxxxxxxx - http://aspo.xxxxx.xxx/activites/xxxxxxx
Unofficial FAQ fcolc - http://faq.fcolc.eu.org/
Linux User Group sur Orléans et alentours.
Tél: + 33 2 38 04 26 09 (France)


Avatar
pascal
On Sat, 29 Jan 2005 15:16:43 +0100, Rakotomandimby (R12y) Mihamina wrote:

( Sat, 29 Jan 2005 15:01:12 +0100 ) pascal :

$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT



inverse les régles :
$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT


Je suis d'accord pour ta premiere ligne.
Par contre le but de la 2nde juste en dessous c'est que le serveur web
soit joignable de l'exterieur.

Donc c'est "--destination-port 80".


J'utilise 2 blocs de régles :

# reseau local -> internet
iptables -A INPUT -i $I_NET --protocol tcp --source-port 80 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $I_NET --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED -j ACCEPT

# internet -> reseau local
iptables -A INPUT -i $I_NET --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o $I_NET --protocol tcp --source-port 80 -m state
--state ESTABLISHED,RELATED -j ACCEPT

Elle sont peut être redondante.

$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT


Sinon, le Monsieur initial il est un peu parano quand meme :-) Ok faut
securiser mais pas au point de "-P" les "OUTPUT" en "DROP".


Cela dépend de l'utilisation. Sur une passerelle d'entreprise, il vaut
mieux. Sur un poste local, oui ,c'est un peut trop.



Avatar
Pascal
Salut,

( Sat, 29 Jan 2005 15:01:12 +0100 ) pascal :

inverse les régles :
$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT


Je suis d'accord pour ta premiere ligne.


Le RELATED ne sert à rien.

Par contre le but de la 2nde juste en dessous c'est que le serveur web
soit joignable de l'exterieur.

Donc c'est "--destination-port 80".

$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT



Je crois plutôt que c'est pour autoriser les paquets de réponse des
sites web distants (commentaire "reseau local vers le web").
Il faut virer le NEW (dangereux car permet de se connecter à n'importe
quel port TCP de sa machine) et c'est bon.

PS: j'espère que les règles pour traiter le reste (DNS, ICMP...) sont
présentes.


Avatar
Pascal

J'utilise 2 blocs de régles :

# reseau local -> internet
iptables -A INPUT -i $I_NET --protocol tcp --source-port 80 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $I_NET --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED -j ACCEPT

# internet -> reseau local
iptables -A INPUT -i $I_NET --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o $I_NET --protocol tcp --source-port 80 -m state
--state ESTABLISHED,RELATED -j ACCEPT

Elle sont peut être redondante.


Non, un pour la navigation et un pour le serveur local. Par contre les
RELATED sont de trop, il n'y a pas de connexions liées en HTTP, et les
commentaires ne correspondent pas aux règles : ça devrait être "machine
locale" au lieu de "réseau local".

PS: tes lignes sont trop longues.

Avatar
pascal
On Sat, 29 Jan 2005 15:50:49 +0100, wrote:

Non, un pour la navigation et un pour le serveur local. Par contre les
RELATED sont de trop, il n'y a pas de connexions liées en HTTP, et les
commentaires ne correspondent pas aux règles : ça devrait être "machine
locale" au lieu de "réseau local".


Oui, machine local, dans le cas d'accés un un serveur Web. Donc je vire
NEW et RELATED.
Pas toujours facile de comprendre le fonctionnement d'iptables pour
l'optimiser !

Merci


PS: tes lignes sont trop longues.


Oui, pas beau les copier/coller ! On fait des bétises !

Avatar
Pascal

Non, un pour la navigation et un pour le serveur local. Par contre les
RELATED sont de trop, il n'y a pas de connexions liées en HTTP, et les
commentaires ne correspondent pas aux règles : ça devrait être "machine
locale" au lieu de "réseau local".


Oui, machine local, dans le cas d'accés un un serveur Web. Donc je vire
NEW et RELATED.


Heu minute ! il faut bien un NEW pour autoriser le premier paquet d'une
nouvelle connexion. Mais pour ma part je préfère gérer les NEW (et
RELATED) dans des règles à part, ça permet notamment d'ajouter l'option
--syn pour les connexions TCP.

Pas toujours facile de comprendre le fonctionnement d'iptables pour
l'optimiser !

PS: tes lignes sont trop longues.


Oui, pas beau les copier/coller ! On fait des bétises !


Perso quand j'écris des scripts, des fichiers des configuration, du code
HTML, PHP ou autres, j'essaie de limiter la longueur des lignes à 80
caractères maxi. Je trouve que ça améliore la lisibilié notamment à
l'impression ou à la lecture sur un terminal à 80 colonnes.


Avatar
Rakotomandimby (R12y) Mihamina
( Sat, 29 Jan 2005 15:43:00 +0100 ) :

Je crois plutôt que c'est pour autoriser les paquets de réponse des
sites web distants (commentaire "reseau local vers le web").


Avec ESTABLISHED alors.
--
ASPO Xxxxxxxxxxx - http://aspo.xxxxx.xxx/activites/xxxxxxx
Unofficial FAQ fcolc - http://faq.fcolc.eu.org/
Linux User Group sur Orléans et alentours.
Tél: + 33 2 38 04 26 09 (France)

Avatar
Vincent Bernat
OoO Peu avant le début de l'après-midi du samedi 29 janvier 2005, vers
13:24, (zeon) disait:

###########reseau local vers le web ! c'est ici ou sa ne focntionne
pas (???)

$IPTABLES -A OUTPUT -o $EXTER_WEB -p tcp --source-port 80 -m state
--state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTER_WEB -p tcp --destination-port 80 -m state
--state NEW,ESTABLISHED -j ACCEPT


En plus des remarques qui t'ont déjà été faites, il faut aussi
autoriser le port 53 en UDP qui correspond à la résolution de noms.
--
panic("Detected a card I can't drive - whoopsn");
2.2.16 /usr/src/linux/drivers/net/daynaport.c

1 2