Règles iptables : Votre avis please :D - Linux et OS Alternatifs
Marsh Posté le 16-07-2002 à 15:56:48
ah non, t'as oublier ça :
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -i ! eth1 -j ACCEPT
Marsh Posté le 16-07-2002 à 16:07:12
djoh a écrit a écrit : ah non, t'as oublier ça : iptables -P FORWARD DROP iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -m state --state NEW -i ! eth1 -j ACCEPT |
A koi cela sert-il ??? ?
Marsh Posté le 16-07-2002 à 16:17:29
Out4L a écrit a écrit : A koi cela sert-il ??? ? |
ben c'est marqué, tu sais pas lire
sérieusement, ça accepte les connexions vers internet depuis le lan, et ça droppe les connexions internet vers lan.
le established accept le trafic internet vers lan sur les connexion deja etabli
toi, t'acceptais tout dans les deux sens, et c'est quand même bcp trop lache comme stratégie
Marsh Posté le 16-07-2002 à 16:21:51
djoh a écrit a écrit : ben c'est marqué, tu sais pas lire sérieusement, ça accepte les connexions vers internet depuis le lan, et ça droppe les connexions internet vers lan. le established accept le trafic internet vers lan sur les connexion deja etabli toi, t'acceptais tout dans les deux sens, et c'est quand même bcp trop lache comme stratégie |
Je drop tout ce qui entre, et je n'accepte que les connexions déja établies
Pourquoi est-ce trop lache ?
Je vais tester ton idée
merci bien !
Marsh Posté le 16-07-2002 à 16:24:00
Out4L a écrit a écrit : Je drop tout ce qui entre, et je n'accepte que les connexions déja établies Pourquoi est-ce trop lache ? Je vais tester ton idée merci bien ! |
voilà, c'est ça
je dis lache, ça veut pas dire pas courageux hein
ça veut dire pas assez strict
Marsh Posté le 16-07-2002 à 17:42:03
Out4L a écrit a écrit : ca marche du feu de dieu merci ! |
pas de quoi
quand on peut aider hein
Marsh Posté le 16-07-2002 à 22:06:14
Out4L a écrit a écrit : Je drop tout ce qui entre, et je n'accepte que les connexions déja établies Pourquoi est-ce trop lache ? Je vais tester ton idée merci bien ! |
parce que avec Iptable, INPUT ne concerne que ce qui entre sur la passerelle, pas ce qui la traverse (à la différence d'Ipchains).
pour ce dernier point, c'est la règle FORWARD qui s'applique.
Marsh Posté le 17-07-2002 à 01:23:10
Une petite question pendant que c'est encore chaud. Avec une machine qui a une interface ppp0 (ADSL) et eth0 (local) et qui ne sert qu'a faire firewall, donc qui redirige tout, notamment vers un serveur HTTP, SSH et FTP avec Linux Redhat 7.3 et vers un autre poste avec Win2000 pour le partage de connection internet. Comment fait on pour n'interdire que les nouvelles connections qui ne sont pas destinee au differents serveurs (sur la meme machine).
Si on fait :
iptables -A FORWARD -m state --state NEW -i ! eth0 -j ACCEPT
Comment font les gens qui de l'exterieure veulent se connecter sur les serveurs ?? Toutes les nouvelles connections sur ppp0 etant interdites ?
Marsh Posté le 17-07-2002 à 01:32:20
Gaellick a écrit a écrit : Une petite question pendant que c'est encore chaud. Avec une machine qui a une interface ppp0 (ADSL) et eth0 (local) et qui ne sert qu'a faire firewall, donc qui redirige tout, notamment vers un serveur HTTP, SSH et FTP avec Linux Redhat 7.3 et vers un autre poste avec Win2000 pour le partage de connection internet. Comment fait on pour n'interdire que les nouvelles connections qui ne sont pas destinee au differents serveurs (sur la meme machine). Si on fait : iptables -A FORWARD -m state --state NEW -i ! eth0 -j ACCEPT Comment font les gens qui de l'exterieure veulent se connecter sur les serveurs ?? Toutes les nouvelles connections sur ppp0 etant interdites ? |
euh tu peux faire un schéma clair stp ... c'est un peu confus dans mon esprit ce que tu dis là ... merci
Marsh Posté le 17-07-2002 à 01:51:43
Bah comment ca je suis pas clair ?
Ok
Code :
|
Voila peut pas faire mieux
Marsh Posté le 17-07-2002 à 01:59:21
Gaellick a écrit a écrit : Bah comment ca je suis pas clair ? Ok
|
Donc si je résume, tu voudrais que les gens de l'extérieur puissent se connecter à ton serveur ssh et http (celui en 192.168.0.10) tout en partageant ta connexion internet pour que w2k et le serveur RH puissent surfer ou autre ... Et en stoppant les indésirables cé bien ca ?
EDIT : ... et aussi que l'extérieur puisse se connecter au FTP mais pas à Samba cé bien ca ?
Marsh Posté le 17-07-2002 à 02:00:35
Exactement ! Bien vu
Marsh Posté le 17-07-2002 à 02:04:25
Je ne peux pas rediriger tout ce qui arrive sur le port 80 ou 21 ou 22 sur 192.168.0.10, sinon plus rien n'arrive a Windows, a moins (eclair) de ne rediriger que les nouvelle connections sur ces ports ? Et les filtrer a nouveau sur le serveur Linux pour voir si elles concernent bien les process locaux ?
Marsh Posté le 17-07-2002 à 02:05:45
Gaellick a écrit a écrit : Je ne peux pas rediriger tout ce qui arrive sur le port 80 ou 21 ou 22 sur 192.168.0.10, sinon plus rien n'arrive a Windows, a moins (eclair) de ne rediriger que les nouvelle connections sur ces ports ? Et les filtrer a nouveau sur le serveur Linux pour voir si elles concernent bien les process locaux ? |
Mais tu peux les rediriger en fonction de leur provenance ...
Marsh Posté le 17-07-2002 à 02:06:42
Gaellick a écrit a écrit : Je ne peux pas rediriger tout ce qui arrive sur le port 80 ou 21 ou 22 sur 192.168.0.10, sinon plus rien n'arrive a Windows, a moins (eclair) de ne rediriger que les nouvelle connections sur ces ports ? Et les filtrer a nouveau sur le serveur Linux pour voir si elles concernent bien les process locaux ? |
Comment ca plus rien n'arrive à Windows .... pas forcément ... faut bien s'y prendre ...
Marsh Posté le 17-07-2002 à 02:07:37
Zzozo a écrit a écrit : Mais tu peux les rediriger en fonction de leur provenance ... |
???? Je vois pas ? Quand je parle de nouvelles connections l'interface de provenance est forcement ppp0 sur le routeur et une adresse IP internet dans le paquet non ?
Marsh Posté le 17-07-2002 à 10:43:32
Gaellick a écrit a écrit : ???? Je vois pas ? Quand je parle de nouvelles connections l'interface de provenance est forcement ppp0 sur le routeur et une adresse IP internet dans le paquet non ? |
tu dois mélanger quelque notion là
ce qu'il faut savoir avec iptables, c'est dès qu'il trouve une règle, dans ton script, correspondant à un paquet, il applique la règle pour ce paquet et va pas chercher plus loin.
Donc tu fais les règles pour tes serveurs ftp, http ... avant de faire la règle que tu as sité plus haut.
Ensuite, il ne faut pas confondre port source et port déstination : le port 80, c'est le port du serveur web, pas celui qu'utilise ton client web (browser en général) qui sera plutot dans les ports élevés. ça ne t'empechera donc pas de surfer
Je sais pas si ça éclaircie un peu les choses, mais n'hésite pas à reposer des questions
Marsh Posté le 17-07-2002 à 15:42:36
djoh a écrit a écrit : tu dois mélanger quelque notion là ce qu'il faut savoir avec iptables, c'est dès qu'il trouve une règle, dans ton script, correspondant à un paquet, il applique la règle pour ce paquet et va pas chercher plus loin. Donc tu fais les règles pour tes serveurs ftp, http ... avant de faire la règle que tu as sité plus haut. Ensuite, il ne faut pas confondre port source et port déstination : le port 80, c'est le port du serveur web, pas celui qu'utilise ton client web (browser en général) qui sera plutot dans les ports élevés. ça ne t'empechera donc pas de surfer Je sais pas si ça éclaircie un peu les choses, mais n'hésite pas à reposer des questions |
Si je comprends bien le fait de rediriger les connections avec pour destination le port 80 n'empechera pas ma machine Windows de surfer normalement sur le net. Du coup je ne suis pas oblige de rediriger seulement les nouvelles connections, je peux tout simplement faire du DNAT avec toutes les connections ayant pour port de destination le 80, 20, 21 ou 22 ?? C'est ca ? Le FTP fonctionne pareil ? Si je fais du FTP depuis monposte Windows, le fait de rediriger les connections avec 20 oui 21 comme port de destination ne va pas rediriger egalement les connections FTP Windows ?
Marsh Posté le 17-07-2002 à 17:07:55
Gaellick a écrit a écrit : Si je comprends bien le fait de rediriger les connections avec pour destination le port 80 n'empechera pas ma machine Windows de surfer normalement sur le net. Du coup je ne suis pas oblige de rediriger seulement les nouvelles connections, je peux tout simplement faire du DNAT avec toutes les connections ayant pour port de destination le 80, 20, 21 ou 22 ?? C'est ca ? Le FTP fonctionne pareil ? Si je fais du FTP depuis monposte Windows, le fait de rediriger les connections avec 20 oui 21 comme port de destination ne va pas rediriger egalement les connections FTP Windows ? |
c'est exactement ça
Marsh Posté le 17-07-2002 à 17:13:25
Super merci Djoh.
Marsh Posté le 17-07-2002 à 18:25:54
Gaellick a écrit a écrit : Le FTP fonctionne pareil ? Si je fais du FTP depuis monposte Windows, le fait de rediriger les connections avec 20 oui 21 comme port de destination ne va pas rediriger egalement les connections FTP Windows ? |
tu as besoin de rediriger le port 21 pour ton serveur ftp.
le port 20 est le port d'écoute du CLIENT lorsq'il fonctionne en mode actif pour les canaux de données.
dans le cas d'une connection en mode passif, losq le client est derriere un firewall par expl, c le client qui se connecte sur un port q le serveur lui envoit pour les cannaux de donneés. cela suppose q le serveur qui est derriere ton NAT est au courant de ton IP internet, autrement il renvérra son IP local.
il faudra dc q tu redirige aussi la plage de port correspondant a celle de la config du serveur ftp pour le mode passive.
je sais pas si c super expliqué.
dans tous les cas, pose + de question ou jette un oeil à :
http://www.commentcamarche.net/internet/ftp.php3
ils expliquent plutot bien comment fonctionne le ftp
ps: tu peux rediriger le port 20 vers une autre machine de ton LAN si tu veux q'elle puisse se connecter en mode ACTIF sur des serveurs ftp (mais là encore je pense q'il faut q ton client soit au courant de l'IP internet)
Marsh Posté le 17-07-2002 à 19:48:36
Donner l'adresse n'est pas tres genant seul des amis auront acces a mon FTP pour l'instant.
Je te remercie en tout cas pour les explications.
Marsh Posté le 17-07-2002 à 19:52:42
qd je parle du renseignement de l'IP internet c dans la config de TES logiciels (sinon ils utiliseraient l'IP local de la machine qui n'est pas reachable depuis le net)
tes amis auront seulement besoin de ton IP internet, ou nom de domaine si tu as, pour se connecter a ton serveur.
Marsh Posté le 17-07-2002 à 20:32:14
Ok mais je vois pas ou je vais definir l'adresse IP, la machine avec tous les serveurs n'a qu'une adresse locale (192.168.0.10) comme le montre mon scheme. Y'a un truc que j'ai pas du comprendre ???
Edit : je crois que j'ai compris, il faut que je lui donne l'adresse IP internet pour qu'il l'a renvoit au client avec le port ouvert pour le canal de donnees, et que je definisse une plage de port dans la configuration du serveur FTP a utiliser pour le canal de donnees et que je redirige ces ports depuis le firewall vers mon serveur avec IPTABLES. De plus ces connections seront autorisees puisqu'elles feront parties de la règle RELATED,ESTABLISHED -j ACCEPT puisque c'est le serveur qui cree la connection sur ces ports. Ce seront des connections RELATED je pense non ? C'est-ca, j'ai bon ?
Parcontre la redirection se fera sur la regle INPUT puisqu'elle se fera avec l'interface ppp0 en tant que source et que les paquets seront theoriquement destines a la passerelle elle-meme.
De toute facon je crois que le DNAT ne se fait que sur INPUT si je me rappelle bien le how-to.
Marsh Posté le 17-07-2002 à 23:26:01
oui, tu as bien compris le truc.
par contre, je ne suis pas sur q ca soit des RELATED. j'aurais dit NEW mais bon j'ai pas encore bien saisi le RELATED (je débute moi aussi dans les IPTABLES )
Marsh Posté le 17-07-2002 à 23:42:16
cool ca va m inspirer )
Marsh Posté le 17-07-2002 à 23:56:43
xmulder a écrit a écrit : oui, tu as bien compris le truc. par contre, je ne suis pas sur q ca soit des RELATED. j'aurais dit NEW mais bon j'ai pas encore bien saisi le RELATED (je débute moi aussi dans les IPTABLES ) |
Ok super. Le seul probleme maintenant c'est d'installer la Debian (Woody) ca plante a l'install
Marsh Posté le 17-07-2002 à 23:59:04
Gaellick a écrit a écrit : Ok super. Le seul probleme maintenant c'est d'installer la Debian (Woody) ca plante a l'install |
je compati...
Marsh Posté le 18-07-2002 à 00:12:33
Gaellick a écrit a écrit : Ok super. Le seul probleme maintenant c'est d'installer la Debian (Woody) ca plante a l'install |
Tu serais pas un peu maso toi des fois ... ... avoues que t'aimes ca hein ..
Bon courage ...
Marsh Posté le 18-07-2002 à 00:41:57
Merci, mais je crois que de toute facon l'install va s'arreter la, le vieu P150 que j'ai achete sur A/V marche pas plein de merde avel disque.
Je suis un peu degoute j'etais bien parti la
Marsh Posté le 18-07-2002 à 01:21:55
Gaellick a écrit a écrit : Merci, mais je crois que de toute facon l'install va s'arreter la, le vieu P150 que j'ai achete sur A/V marche pas plein de merde avel disque. Je suis un peu degoute j'etais bien parti la |
Pour iptables ca va mieux ?
Marsh Posté le 18-07-2002 à 01:59:33
Ouaip ca va mieux, je refais l'install de la Woody, j'installe la Bewan sur la passerelle et je configure mes regles Iptables (c'est pas demain quoi quoi que ?)
Marsh Posté le 18-07-2002 à 02:01:40
Gaellick a écrit a écrit : Ouaip ca va mieux, je refais l'install de la Woody, j'installe la Bewan sur la passerelle et je configure mes regles Iptables (c'est pas demain quoi quoi que ?) |
Au pire, si tu veux, je te commente les script que j'utilise et te l'envoie ... cé pas les exactement les mêmes besoins que toi mais ca peut aider ...
Marsh Posté le 18-07-2002 à 02:06:04
Bonne idee. J'ai deja celui du numero special de Linux Mag sur 'Installer son serveur Web'. Il est bien complet mais ils expliquent pas tres bien tout ce qu'ils font. Avzec le tien j'aurai une bonne base pour demarrer en plus du how-to (qui est un peu leger je trouve)
Marsh Posté le 18-07-2002 à 02:20:15
Gaellick a écrit a écrit : Bonne idee. J'ai deja celui du numero special de Linux Mag sur 'Installer son serveur Web'. Il est bien complet mais ils expliquent pas tres bien tout ce qu'ils font. Avzec le tien j'aurai une bonne base pour demarrer en plus du how-to (qui est un peu leger je trouve) |
ca te derange pas trop si je t'envoie demain plutot ? Tant qu'à faire qu'il soit propre et bien documenté, j'ai pas envie de faire ca à la va vite ... et j'ai pas mal de choses à faire se soir encore ...
Marsh Posté le 18-07-2002 à 02:49:03
Bien sur que non. Je te remercie en tout cas c'est tres sympa.
Marsh Posté le 16-07-2002 à 15:30:31
Voici les règles constituants mon firewall:
Je ne vous cache pas qu'elles sont toutes issues de différents HOW-TO dont je me suis fortement inspiré
eth0 est mon réseau local
eth1 est ma connexion internet que je partage
# polices par défaut
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
# boucle local
iptables -A INPUT -i lo -j ACCEPT
# on accepte en entrée les connexions déja existantes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# on accepte ssh sur les 2 interfaces
iptables -A INPUT -i eth0 -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -i eth1 -p tcp --dport ssh -j ACCEPT
# on masquerade
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
# on active le forwarding quand même
echo 1 > /proc/sys/net/ipv4/ip_forward 1
Comparé a beaucoup de HOW-TO, je trouve mes règles plutôt simplistes et peu nombreuses
Est-ce que je me trompe ?
merci de me guider dans ma quête au firewall solide