Conseil iptables

Fermé
scomp Messages postés 4 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 29 juin 2007 - 28 juin 2007 à 14:47
tufs Messages postés 1272 Date d'inscription mercredi 1 décembre 2004 Statut Contributeur Dernière intervention 16 mars 2008 - 29 juin 2007 à 18:26
Bonjour

J'aimerais avoir des conseils pour une règle iptable que je viens de créer en parcourant le net.

Mon réseau et :

Un réseau local en 10.150.20.0 connecté sur proxy squid (eth0 - 10.150.20.1/24) avec (eth1 - 192.168.0.1/24) en sortie internet (jaimerais que le proxy face office de firewall + proxy)


Voici la règle que j'ai créé

-----------------------------
# Vider les tables
iptables -F
iptables -X


# Interdire toutes les connexions entrantes et sortantes
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP


# pour accepter tous sur la machine locale
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT


# Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT


# Activer ssh
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT


# Autoriser les requettes DNS et WWW
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --sport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 443 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT


# Autoriser le ping
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT


# accepter que le proxy ai une connexion internet directe
iptables -A OUTPUT -o eth1 -m state --state NEW,ESTABLISHED -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth1 -m state --state ESTABLISHED -p tcp --sport 80 -j ACCEPT


# LAN = Acces internet complet
#iptables -A FORWARD -i eth1 -o ppp0 -j ACCEPT
#iptables -A FORWARD -o eth1 -i ppp0 -j ACCEPT


# Activation du forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward


# Rendre le proxy transparent
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.150.20.1:3128


# MASQUERADE eth0 vers eth1
iptables -t nat -A POSTROUTING -s 10.150.20.0/24 -j MASQUERADE


# Toutes les règles qui n'on pas passé seront refusées
iptables -A INPUT -j DROP
iptables -A FORWARD -j DROP
iptables -A OUTPUT -j DROP

------------------------------------

Pensez vous que les règles sont correctes

Merci

8 réponses

sans_surnom Messages postés 195 Date d'inscription vendredi 2 février 2007 Statut Membre Dernière intervention 7 décembre 2007 36
28 juin 2007 à 15:22
salut
je vois pas l'interet de ta derniere regle si tu mets (au debut) DROP par defaut

d'un point de vue secure je te dirais de refuser le ping ou alors d'imposer une limite au nombre de ping

je ne sais plus si c'est faisable mais je te dirais de ne garder le ESTABLISHED et RELATED seulement pour les connexions que tu as specifie.

apres je vais m'arreter la sinon je vais dire encore plus de betises
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
28 juin 2007 à 15:39
Salut,
au lieu de
echo 1 > /proc/sys/net/ipv4/ip_forward


edite plutôt le fichier /etc/sysctl
et mets la ligne
net.ipv4.ip_forward = 1
# Toutes les règles qui n'on pas passé seront refusées
iptables -A INPUT -j DROP
iptables -A FORWARD -j DROP
iptables -A OUTPUT -j DROP


Inutile, tu as déjà fixé la politique de tes chaînes au début de script

Tu as 2 cartes reséaux eth0 et eth1 mais je ne vois pas de communication entre les interfaces (chaîne FORWARD)

0
scomp Messages postés 4 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 29 juin 2007
28 juin 2007 à 16:12
OK, merci

Que faut-il rajouter pour fowarder uniquement le port 80

Merci
0
scomp Messages postés 4 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 29 juin 2007
28 juin 2007 à 16:19
Est-ce que cette règle est bonne

#Fowarding du lan vers l'Internet
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp --sport 80 -j ACCEPT

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tufs Messages postés 1272 Date d'inscription mercredi 1 décembre 2004 Statut Contributeur Dernière intervention 16 mars 2008 192
28 juin 2007 à 17:19
salut

à voir =>>

# Cela bloqueras les scans de ports dit < furtifs >> n accepte que les paquets TCP avec le flag SYN

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state NEW,RELATED -p tcp --tcp-flags ! ALL SYN -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -j DROP

# Filtrage des broadcasts

iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP

# Delais à l etablissement de certaines connection ( FTP ou SMTP )

iptables -A INPUT -p tcp --destination-port auth -j REJECT --reject-with tcp-reset
0
Maillon Messages postés 156 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 15 avril 2011 5
29 juin 2007 à 11:32
Dans tes règles de forward il est toujours bien de préciser l'interface d'entrée et/ou sortie.

Sinon mis à part ça ce que tu as fais semble correcte et suis les conseils ci-dessus.

Par contre au niveau de ta règle de Prerouting et Postrouting tu les as testé ? Elles fonctionnent ?
0
Bonjour et merci pour les conseils

Non je n'ai pas tester encore le tous, je le fait ce weekend

Est-ce correcte ?

#Forwarding du lan vers l'Internet
iptables -A FORWARD -o eth0 -p tcp --sport 80 -i eth1 -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp --dport 80 -o eth1 -j ACCEPT

Merci
0
tufs Messages postés 1272 Date d'inscription mercredi 1 décembre 2004 Statut Contributeur Dernière intervention 16 mars 2008 192
29 juin 2007 à 18:26
re

à voir =>

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


Editez le fichier /etc/sysctl.conf et rajoute ses lignes Protection antispoofing

net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1


Astuces pour debugger le script de firewall lances la commande suivante =>

sh -x /etc/init.d/fw les erreurs seront + facile à identifier ont sait jamais !!!

Pour info => le firewall peut avoir 3 interfaces

eth0 = interface  externe  connectées  à  internet  
eth1 = reliant  le  firewall au  reseaux  interne  
eth2 = interface  de  la  DMZ  la  zone  ou  se  trouvent  les  serveurs  accesibles  depuis internet  

bonne chance .....
0