Andesi - forum

Forum francophone pour Debian

Vous n'êtes pas identifié(e).

#1 13/03/2005 15:23:44

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

firewall à 200%

Salut! Belle journée ensoleillée, l'occasion pour moi de solliciter votre
avis sur l'interrogation suivante:

L'expérimentation du script firewall "Administration Linux à 200%"
a pour effet de ne plus rien autoriser à part les communications
réseau internes. Le fichier 'liste_noire.txt' bloque bien les adresses
qui le contiennent alors que le fichier 'liste_blanche.txt' est le suivant:

192.168.1.2 # Ma station de travail
192.168.1.0/24 # Le réseau local

J'ai essayé de différentes façons d'y inclure l'accès au réseau internet.

Mais comment faire ?...

#!/bin/sh
#
#Un script simple d'initialisation de pare-feu
#
WHITELIST=/usr/local/etc/liste_blanche.txt
BLACKLIST=/usr/local/etc/liste_noire.txt
ALLOWED="22 25 80 443"

#
#Écarter toutes les règles de filtrage existantes
#
iptables -F

#
#Commencer par parcourir $WHITELIST, en acceptant tout le trafic
#qu'elle contient.
#
for x in `grep -v ^# $WHITELIST | awk '{print $1}'`; do
echo "Autorisation accordée à $x..."
iptables -A INPUT -t filter -s $x -j ACCEPT
done

#
#Ensuite, parcourir $BLACKLIST, en écartant tout le trafic provenant
#des hôtes et des réseaux qu'elle contient.
#
for x in `grep -v ^# $BLACKLIST | awk '{print $1}'`; do
echo "Blocage de $x..."
iptables -A INPUT -t filter -s $x -j DROP
done

#
#À présent, les ports autorisés : qu'accepterons-nous des hôtes
#n'apparaissant pas sur la liste noire ?
#
for port in $ALLOWED; do
echo "Acceptation du port $port..."
iptables -A INPUT -t filter -p tcp --dport $port -j ACCEPT
done

#
#Pour finir, à moins d'un contre-ordre ci-dessus, rejeter les connexions
#entrantes à l'initiative de l'extérieur.
#
iptables -A INPUT -t filter -p tcp --syn -j DROP

J'ai aussi essayé de commenter cette dernière ligne... mais sans résultat.

Merci d' avance si vous pouvez m'aider ;-)

Hors ligne

#2 13/03/2005 19:45:13

armen
Membre
Lieu : 48°03'03" N - 04°59'55" W
Inscription : 09/03/2004
Messages : 1 937

Re : firewall à 200%

Que veux-tu faire exactement ? qu'est-ce qui marche et qu'est-ce qui ne marche pas ?

Tu autorises les communications sur le réseau interne et, pour les machines n'étant pas blacklistées, sur les ports 22 25 80 443 du  (ssh, smtp, http, https) tout le reste est bloqué (le pop en particulier : port 110).

La règle

iptables -A INPUT -t filter -p tcp --syn -j DROP 

ne me parait pas forcément super, parce que tu risques de répondre à des paquets volontairement mal formattés (tentative de connexion tordues pour récupérer des infos...).

Hubert a posé une question sur ce script il y a peu de temps, tu peux peut-être le renseigner si tu arrives à faire fonctionner la blacklist. J'ai commencé à regarder, mais en ce moment, je manque un peu de temps pour m'amuser à lancer ce script sur l'une de mes machines et à regarder son comportement quand je lui envoie des tentatives de connexions tordues...


"La grandeur d'un métier est peut-etre, avant tout, d'unir des hommes : il n'est qu'un luxe véritable, et c'est celui des relations humaines." Antoine de Saint-Exupéry

Hors ligne

#3 13/03/2005 22:38:31

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

Re : firewall à 200%

Salut Armen

Le plus simple, pour expliquer ce que j'aimerais faire avec ce script, c'est ce qu'en dit son propre auteur, Rob Flickenger, en ces termes:

"La plupart des utilisateurs veulent, en général, permettre un
accès complet depuis des hôtes de confiance, bloquer tout accès
depuis des hôtes ayant des problèmes connus et autoriser tout ce qui est intermédiaire pour tous les autres. Voici une méthode permettant d'utiliser simultanément une liste blanche, une liste noire et une politique de restriction de port..."

Ça peut correspondre à une situation qu'on trouve dans un lycée
(surtout si l'administrateur n'est pas familier des interfaces
graphiques comme webmin-squid)


Ce qui marche c'est moi, c'est:
- Le ping entre toutes les machines du réseau local
- Le filtrage de la liste noire (les adresses sont bel et bien bloquées, ça me le dit en mode verbose dans la console)

- Ce qui ne marche pas c'est l'accés au réseau internet.

Avant de lancer le script, j'ai pourtant pris soin d'entrer les 2 lignes

# echo "1" > /proc/sys/net/ipv4/ip_forward

                 et

# iptables -t -nat -A POSTROUTING -j MASQUERADE

J'ai essayé de compléter 'liste_blanche.txt' pour l'accés internet, mais sans succés...

En fait, Hubert, c'est moi, j'ai changé d'identifiant car je ne connaissais plus mon ancien mot de passe;-)

A+

PS - Ton script d'Olivier Allard-Jacquin marche à la perfection!

Hors ligne

#4 13/03/2005 23:53:41

armen
Membre
Lieu : 48°03'03" N - 04°59'55" W
Inscription : 09/03/2004
Messages : 1 937

Re : firewall à 200%

En fait, ce qui me parait pas mal, c'est de faire un mélange des 2 scripts pour avoir la sécurité de l'un et le petit plus qui est la gestion des listes noires et blanches de l'autre.

Encore que dans le cas d'un lycée, la liste blanche (hormis peut être la machine "perso" de la personne faisant fonction d'admin), je doute...

Le sujet m'intéresse, mais le truc est de dégager du temps pour regarder de près ce qui se passe...

Pour le changement de pseudo, comment dire, ça faisait beaucoup de coïncidence : même bouquin, même sujet, pseudo "voisin"... Je ne sais pas si c'est possible de se faire renvoyer son mot de passe... ça doit être possible vu qu'on a fourni une adresse de messagerie à l'inscription...


"La grandeur d'un métier est peut-etre, avant tout, d'unir des hommes : il n'est qu'un luxe véritable, et c'est celui des relations humaines." Antoine de Saint-Exupéry

Hors ligne

#5 14/03/2005 00:56:23

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

Re : firewall à 200%

L'aspect pédagogique qui se dégage de ce type d'exemple est intéressant à plus d'un titre en effet. En 2 jours, j'ai pas mal avancé sur le principe des listes.
L'an passé, j'ai voulu suivre une formation réseau mais j'étais malade et l'interface webmin/squid ne m'emballait pas outre mesure...

En fait, je m'entraîne chez moi pour pallier à certains manques de connaissance en la matière! Ce n'est (pour l'instant) pas pour raison professionnelle ;-)

J'avais mon pseudo "hubert" depuis 2 ans environ, mais je conservais la page des forums (dans laquelle je restai authentifié) dans les signets de Mozilla, du coup, je ne me souvenais plus du mot de passe. Voulant changer mes profils,
j'ai demandé un nouveau mot... Mais il semble que mon adresse électronique ne faisait pas l'affaire; bizarre...
Par ailleurs, je suis authentifié sous un autre pseudo depuis quelques mois ("ube"), et je l'ai adopté définitivement.

Voilà, encore merci pour tes interventions et à bientôt

Hubert

Hors ligne

#6 15/03/2005 11:04:06

kagou
Administrateur
Lieu : Gard
Inscription : 21/03/2003
Messages : 994

Re : firewall à 200%

Shorewall permet de faire tout ça. Et la doc existe en français.


[img]http://www.danasoft.com/sig/kagou.jpg[/img]

[img]http://edgar.netflint.net/[email protected]&type=image&iconset=phpbb[/img] [email protected]

Hors ligne

#7 15/03/2005 15:37:55

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

Re : firewall à 200%

Salut

J'ai entendu parler de Shorewall, je ne savais pas  que c'était comparable à ce script... Je vais regarder de ce côté-là wink

Hors ligne

#8 15/03/2005 23:10:44

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

Re : firewall à 200%

Ç y est  big_smile  j'ai réussi à faire fonctionner le script de Rob Flickenger :!:
C'était vraiment con comme problème: il suffisait d'inclure l'accés internet
dans le fichier 'liste_blanche.txt' par une simple ligne (une IP de google en l'occurence)

[192.168.1.2 # Ma station de travail
192.168.1.0/24 # Le réseau local
66.102.9.99 # Une des IP de google]

Si certains sont intéressés, allez-y, ce script a l'air pas mal du tout.
Il faut malgré tout le manier avec prudence d'après Armen et l'auteur lui-même.

J'ai également tenu compte de l'avis de Kagoo au sujet de Shorewall mais n'ai pas vu de paquet debian... Il suffit peut-être de le compiler...

En tout cas, vive la ligne de commande lol [/code]

Hors ligne

#9 16/03/2005 13:37:56

WaVeR
Membre
Lieu : Biel-Bienne
Inscription : 23/02/2004
Messages : 50
Site Web

Re : firewall à 200%

http://packages.debian.org/stable/net/shorewall

apt-cache show shorewall
Package: shorewall
Priority: optional
Section: net
Installed-Size: 716
Maintainer: Lorenzo Martignoni <[email protected]>
Architecture: all
Version: 2.2.1-1
Depends: iptables (>= 1.2.7a), iproute, debconf
Recommends: wget
Suggests: shorewall-doc, kernel-image-2.4 | kernel-image-2.6
Conflicts: ipmasq, knetfilter, firewall-easy, filtergen, uif, webmin-firewall, ipmenu
, gnome-lokkit, guarddog, guidedog, ferm, fireflier-server
Filename: pool/main/s/shorewall/shorewall_2.2.1-1_all.deb
Size: 149400
MD5sum: 4692b5d644c8d998b49c4fd4b00a2ef0
Description: Shoreline Firewall (Shorewall)
Shorewall is an iptables based firewall that can be used on a dedicated
firewall system, a multi-function masquerade gateway/server or on a standalone
Linux system.
.
Shorewall supports these features:
  * Customizable using configuration files.
  * Supports status monitoring with an audible alarm when an "interesting"
    packet is detected.
  * Include a fallback script that backs out the installation of the most
    recent version of Shoreline  Firewall and an uninstall script for
    completely uninstalling the firewall.
  * Static NAT is supported.
  * Proxy ARP is supported.
  * Provides DMZ functionality.
  * Support for IPSEC, GRE and IPIP Tunnels.
  * Support for Traffic Control/Shaping


There's no place like 127.0.0.1

Hors ligne

#10 17/03/2005 15:20:37

ube
Membre
Inscription : 27/12/2004
Messages : 24
Site Web

Re : firewall à 200%

Bien reçu, merci smile

Je verrai si j'ai le temps de tester Shorewall...

Hors ligne

Pied de page des forums