Question sur la smoothwall

Fermé
spawn x Messages postés 23 Date d'inscription lundi 28 février 2005 Statut Membre Dernière intervention 4 août 2008 - 28 févr. 2005 à 14:17
 kmf - 28 févr. 2005 à 18:48
Une question sur la smoothwall.

Je peu lui indique quelles adresses il doit bloquer ? (Par fichier xml ou autres ?)

Car rentré a la main plus de 1000 adresses sa fait mal. lol
A voir également:
  • Question sur la smoothwall
  • Smoothwall - Télécharger - Divers Réseau & Wi-Fi

7 réponses

yoann_tux Messages postés 437 Date d'inscription lundi 28 février 2005 Statut Membre Dernière intervention 24 juillet 2008 95
28 févr. 2005 à 14:22
Mais pourquoi tu fait pas un ptit script ?
tu c une ptite boucle en shell :) ou en perl ou ce que tu veux !
non ?
0
spawn x Messages postés 23 Date d'inscription lundi 28 février 2005 Statut Membre Dernière intervention 4 août 2008
28 févr. 2005 à 14:34
Oui tu as pas tord mais moi en linux je patauge.

Mon programme sous windwos me fait un fichier xml avec toute les adresses dedans.(Car d'habitude j'utilise zone alarme).

A la limite il peut crée peux etre un autre fichier que du xml mais c'est pas sur.
0
yoann_tux Messages postés 437 Date d'inscription lundi 28 février 2005 Statut Membre Dernière intervention 24 juillet 2008 95
28 févr. 2005 à 16:24
Mais pour être franc, je ne connais pas ton logiciel ! lol
Suis désolé, mais regarde donc si tu as pas un fichier de conf...
dans /etc
ou peut-être /home/(ton user)/.smoothwall ou quelque chose comme cela.
mais ce sont quels adresses que tu veux bloqué ? des adresse ip ? des ports ?
++
Yoann
0
Avec ca:

Car rentré a la main plus de 1000 adresses sa fait mal. lol

et ca:

Mon programme sous windwos me fait un fichier xml avec toute les adresses dedans.(

c'est tres bien possible de faire un script pour iptables mais ca necessite un effort (pas de chance) pour apprende quelques options d'iptables (c'est le truc netfiler) et surtout comment de faire de scripts shell et/ou perl.

Si tu reussis d'avoir un simple fichier texte ou il n'y a que les numeros IP separe par de blancs ou sur de ligne separee tu peux faire la chose suivante:


#!/bin/sh
#
IPTABLES=/sbin/iptables

OPENLIST=`cat liste_numero_ip.txt`

$IPTABLES -P INPUT DROP
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD

for adresse in $OPENLIST ; do
$IPTABLES -A INPUT -s $adresse -j ACCEPT
done

$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# ca fait UNE ligne !!

$IPTABLES -A INPUT -j DROP
# ------------ fin de script ------------


Tu mets ca dans un ficher appele disons: "firewall_simple.sh" et apres il suffit de l'executer en root (ou de le mettre dans dans /etc/rc.d/rc.local, /etc/rc.d/boot.local etc. pour le faire executer au boot).

Ici le fichier avec les numero IP s'appelle "liste_numero_ip.txt". Tu dois preparer d'une facon ou d'une autre ce fichier.

Ce script est tres simpliste (peut-etre trop) et il n'y a pas de garantie qu'il n'y a pas de bugue mais ca devrait marcher.
0

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

Posez votre question
Desole, je n'avais pas vu: Tu souhaites bloquer des adresses specifiques et pas en ouvrir, j'ai mal compris. Alors pour bloquer une liste d'adresses IP tu peux prendre le script modifie:


#!/bin/sh
#
IPTABLES=/sbin/iptables

BLOCKLIST=`cat liste_numero_ip.txt`

$IPTABLES -P INPUT DROP
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD

for adresse in $BLOCKLIST ; do
$IPTABLES -A INPUT -s $adresse -j DROP
done

# ici mettre tous les ports a ouvrir, la prochaine
# ligne ouvre par exemple le port 22 (pour ssh)
# ajouter/modifier autres lignes pour d'autres ports
$IPTABLES -A INPUT -p tcp --dport 22 -j ACCEPT


$IPTABLES -A INPUT -j DROP
# ------------ fin de script ------------


Ici je propose comme exemple d'ouvrir le port 22 pour ssh pour tous les autres numeros IP. C'est tres facile de modifier ca pour ajouter d'autres ports (ou enlever le 22).
0
spawn x Messages postés 23 Date d'inscription lundi 28 février 2005 Statut Membre Dernière intervention 4 août 2008
28 févr. 2005 à 18:02
Merci yoann_tux

Ok merci a toi KMF mais ton script sa marche avec la smoothwall ?
0
Ce script marche tout seul avec iptables (deja preinstalle en Linux) sur un pc linux quelconque (suffisamment recent, noyau 2.4, 2.6). Tu fais tourner ce script et le firewall est active et ca marche.

En linux le logciel principal pour faire firewall est iptables (c'est le truc "netfilter") avec certains modules de noyaux (qui sont utilises automatiquement). Le plus difficile c'est de definir les regles de filtrage et apres c'est le noyau linux qui s'en charge. Pour definir ces regles on utilise iptables mais la syntax est tres complique (mon script est extrement simple). Pour cette raison il existe de logiciel appeles frontends qui fournissent une interface graphique pour definier de regles. Tous ces logiciels appellent aussi iptables, c.-a-d. ils enlevent le boulot de comprende la syntax complique d'iptables. Donc sur le fond tout firewall en Linux est base sur iptables mais il y a beaucoup de logiciels pour simplifier la vie dans l'utilisation d'iptables.
Dans Mandrake et Fedora il y a de telles interfaces. Il y a aussi shorewall (a ne pas confondre avec smoothwall) qui n'a pas directement une interface graphique mais qui est quand meme tres utile pour definir de regles compliques. Tout ca c'est sur un pc linux qui tourne normalement aussi avec d'autre applications.


Concernant smoothwall je viens de regarder sur leur site web et je ne viens de comprendre que maintenant ce que c'est exactement (je crois). Alors selon ma comprehension le "smoothwall" est une version de linux speciale et reduite ou il n'y a que de la fonctionnalite firewall et routeur la dedans avec une configuration simplifie (par de pages webs ?). On l'installe sur un pc dedie a ca (c'est mon impression) avec deux cartes reseaux et ce pc fait routeur et firewall grace a smoothwall. En realite c'est un petit linux qui tourne (aussi en utilisant iptables) mais on ne fait rien d'autre la dessus (pas d'application etc.). Il semble c'est tellement automatise qu'on a meme pas besoin de connaitre linux pour l'utiliser au moins c'est ca l'idee.
En principe le smoothwall va utiliser de scripts similaire au mien seulement mille fois plus compliques et plus sophistiques. Je ne sais pas s'il est possible d'acceder a ces scripts pour les bricoler a la main et surtout je crois que ce ne soit pas de tout recommande!
Donc si j'ai bien compris le fonctionnement de smoothwall mon script ne sert a rien avec smoothwall, desole. J'avais confondu smoothwall avec de logiciels comme shorewall (ou mon script fais simplement un remplacement parfait).

En principe on peut creer un script plus sophistique (ou la chaine FORWARD serait aussi implique et ou on active eventuellement le NAT la partage de la connection) pour faire ce que tu souhaite, proteger un sous-reseau et le routage. Mais dans ce cas tu remplace ton pc "smoothwall" par un vrai pc "linux" aussi avec deux cartex reseau. Mais un tel script sera en effet plus complique mais tout a fait faisable (pour quelqu'un avec l'experience necessaire).

Si tu souhaites rester avec shorewall il faut effectivement etudier la doc
http://www.smoothwall.org/docs/
et chercher s'il n'accepte pas de fichier input d'un format quelconque. Pour etre franc il doit y avoir une facon efficace de le faire. Ca serait bete de creer un produit si sophistique et d'oublier ca!
0