Jump to content

Archived

This topic is now archived and is closed to further replies.

ssc37

Probleme avec IPTABLES

Recommended Posts

au passage on avait dit qu'on jouait pas à celui qui avait la plus grosse :iloveyou:

+1

:iloveyou:

Share this post


Link to post
Share on other sites
oui, mais je t'a bien dis des le debut que lorsque j'aurais le temps, surement a la fin de cette semaine, j'ecrirai un arcticle complet, je voulais juste te repondre rapidement a ton post et au final....

Bah je l'attends avec impatience l'article :transpi: car la description du code que j'ai faite plus haut me paraissait cohérente à mes yeux :iloveyou: mais apparament c'est pas ca lol

Preparez-vous a souffrir car avec le temps j'ai encore pas mal de truc à apprendre en reseau sous linux :iloveyou: et bizarement ceux qui m'expliquent finissent toujours avec des mecs en blouse blanche :transpi:

Share this post


Link to post
Share on other sites
le reste du script ( que je n'ai pas encore lu ) est tres bon

Rémy : excellent !

T'as reçu mon fichier ?

:ouioui:

Share this post


Link to post
Share on other sites

Voila ou j'en suis dans mon script si y'a des commentaires à faire

#!/bin/sh
#

#-----------------------------------
#
#  Initialization
# by default, everything is dropped
#-----------------------------------

iptables -t filter -F
iptables -t filter -X
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP

#--------------------
#
#  Loopback
#
#--------------------

iptables -t filter -A OUTPUT -o lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
iptables -t filter -A INPUT  -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT

#--------------------
#
#  Ssh en interne
#
#--------------------

iptables -t filter -A INPUT -i eth1 -p tcp --dport ssh -j ACCEPT
iptables -t filter -A OUTPUT eth1 -p tcp --sport ssh -o -j ACCEPT


#--------------------
#
#  NAT
#
#--------------------

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#--------------------
#
#  Web
#
#--------------------


   iptables -t filter -A FORWARD -i eth0 -o eth1 -p udp --sport 53 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth1 -o eth0 -p udp --dport 53 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth0 -o eth1 -p tcp --sport 53 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 53 -j ACCEPT 

   iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 443 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth0 -o eth1 -p tcp --sport 80 -j ACCEPT 
   iptables -t filter -A FORWARD -i eth0 -o eth1 -p tcp --sport 443 -j ACCEPT 

et pour le moment mon ssh et le web fonctionne donc ca me va parfaitement :pleure:

Par contre pourquoi mon msn continue de marcher? :ouioui: il utilise pas ses ports la pour se connecter non? :ouioui:

Share this post


Link to post
Share on other sites

En fait moi j'ai tendance a tout dropper par defaut ( ce que tu fais, c'est la politique ( policy en us ) par defaut ), et apres je dis au niveau du input ce qui doit passer ou non. Si tu es vraiment parano tu peux le specifier a nouveau pour le forward, mais en general, c'est mieux de dropper directement au niveau du serveur les paquets.

Je te conseille donc de rajouter des regles input/output, restrictives, et de forwarder ensuite soit juste certains ports, soit tout, si tu ne veux pas te prendre la tete. Dans ce cas, le tout ne consistera qu'en ce que le input a laisse rentrer.... :

Input -> Forward -> client

client -> Forward -> ouput

On voit bien que c'est plus intelligent et plus securise de filtre en entre directement le input, et en sortie directement le forward. Concernant le forward pour internet, ne pas faire de masquerading ca revient quasiment au meme, les paquets sont emis avec une adresse ip privee, et sont donc droppes au premier routeur rencontre.

Share this post


Link to post
Share on other sites

genre ca? :yes:

iptables -t filter -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -o eth0 -p tcp --sport 80 -j ACCEPT

iptables -t filter -A FORWARD -i eth0 -o eth1 --j ACCEPT 
iptables -t filter -A FORWARD -i eth1 -o eth0 --j ACCEPT 

Share this post


Link to post
Share on other sites

oui, apres tu peux le tester en faisant :

nmap <ton adresse ip sur internet>

Share this post


Link to post
Share on other sites

Hummm oky oky :mdr:

Par contre tu as une explication pour le coup de mon msn qui se connecte tout de meme? :yes: car logiquement dans mon script y'a que les ports tcp 22/80/443 qui devraient passer si je ne me trompe pas :mdr:

En fait moi j'ai tendance a tout dropper par defaut ( ce que tu fais, c'est la politique ( policy en us ) par defaut ), et apres je dis au niveau du input ce qui doit passer ou non.

C'est quoi la difference ? car pourtant je drop bien tout dès le depart non?

En fait dans ce que j'ai fait c'est quoi le reproche par apport au forward?

On va me banir avec mes questions ;)

Share this post


Link to post
Share on other sites

On va me banir avec mes questions

Non, remy va arreter de mettre des trucs a la va vite entre deux relectures de mes fichiers et le monsieur ssc37 va gentillement attendre le topic, sandeman, ou :google:/linux iptables how-to

Share this post


Link to post
Share on other sites

c'est mieux la? :mdr: Désolé je suis pas patient :francais:

#!/bin/sh
#

#-----------------------------------
#
#  Initialization
# by default, everything is dropped
#-----------------------------------

iptables -t filter -F
iptables -t filter -X
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP

iptables -t nat -F
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT



#--------------------
#
#  Loopback
#
#--------------------

iptables -t filter -A OUTPUT -o lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
iptables -t filter -A INPUT  -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT

#--------------------
#
#  Ssh en interne
#
#--------------------

iptables -t filter -A INPUT -i eth1 -p tcp --dport ssh -j ACCEPT
iptables -t filter -A OUTPUT -o eth1 -p tcp --sport ssh -j ACCEPT


#--------------------
#
#  NAT
#
#--------------------

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#--------------------
#
#  FORWARD LAN<=>NET
#
#--------------------

iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1  -j ACCEPT


#--------------------
#
#  Ouverture des ports necessaires
#
#--------------------


#--------------------
#
#  Web
#
#--------------------

   iptables -A INPUT -p tcp --dport 80  -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT 
   iptables -A OUTPUT -p tcp --sport 80  -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
   iptables -A INPUT -p tcp --sport 443 -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
   iptables -A OUTPUT -p tcp --sport 443  -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


#--------------------
#
#  DNS
#
#--------------------

   iptables -A INPUT -p tcp --dport 53  -i eth0 -j ACCEPT
   iptables -A OUTPUT -p tcp --dport 53  -o eth0 -j ACCEPT
   iptables -A INPUT -p udp --dport 53  -i eth0 -j ACCEPT
   iptables -A OUTPUT -p udp --dport 53  -o eth0 -j ACCEPT


#--------------------
#
#  Emule
#
#--------------------
    
   iptables -t nat -A PREROUTING -p tcp --dport 6419 -i eth0 -j DNAT --to-destination 192.168.1.2:6419
   iptables -t nat -A PREROUTING -p udp --dport 6429 -i eth0 -j DNAT --to-destination 192.168.1.2:6429

Share this post


Link to post
Share on other sites

c'est mieux la?  Désolé je suis pas patient

hum.... La premiere des vertues la sagesse est. :D

Share this post


Link to post
Share on other sites

Moi comme couleur qui a vraiment de la force c'est le rouge et noir :pciwin:

Bon le script que j'ai poster je l'ai ecris et compris mais uen chose que je ne comprend pas c'est pourquoi ma passerelle n'a pas acces au net alors que j'ai ouvert les ports avec

   iptables -A INPUT -p tcp --dport 80  -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT 
  iptables -A OUTPUT -p tcp --sport 80  -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
  iptables -A INPUT -p tcp --sport 443 -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
  iptables -A OUTPUT -p tcp --sport 443  -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Il n'y a pas d'interface de destination donc ca devrait passer non? :D vu que les dns j'ai fasi pareil

Share this post


Link to post
Share on other sites

×
×
  • Create New...