bonjour,
Petites questions, tu as peur en fait que quelqu'un pirate ton wifi pour ensuite sattaquer a toi ? tordu mais pourquoi pas si c'est le cas, tu peux faire en sorte d'accepter tout le trafic venant de ton modem (192.168.1.1 ?) et de rejeter toutes les autres adresses 192.168.1.* (avec un masquage), ce qui donne:
Code : Tout sélectionner
$IPT -A INPUT -p tcp -s 192.168.1.1 -j ACCEPT
$IPT -A OUTPUT -p tcp -d 192.168.1.1 -j ACCEPT
$IPT -A INPUT -p tcp -s 192.168.1.0/24 -j DROP
$IPT -A OUTPUT -p tcp -d 192.168.1.0/24 -j DROP
(ce code est à adapter a ta configuration bien entendu)
Ensuite, ton scipt est-il ici complet ? si c'est le cas il ne sert a rien du tout étant donné qu'il ne définit pas la police par défaut, et par defaut justement la police est a ACCEPT, ce qui signifie que quand un paquet ne correspond a aucune règle, il est quand même autorisé (pas très sécurisé). donc à rajouter:
Après, grosse lacune (qui n'avait aucune incidence avant si les règles par defaut n'étaient par spécifiés), tu n'autorises pas le trafic sur l'interface loopbak (il n'y a aucun danger a laisser le système communiquer avec lui-même), il vaut mieux l'accepter car il communique beaucoup avec lui-même justement (règle à placer au début du script pour plus de performance):
note: tu peux utiliser l'option "I" a la place de "A" pour être sur que la règle sera placée en première.
Ensuite, ton ordinateur est un serveur ? parce que la tu autorises les connexions sur les portes 80, 443, 110, 25, 1863
$IPT -A INPUT -m state --state NEW -p tcp -m multiport --dports 80,443,110,25,1863 -i $LOCALE -j ACCEPT
Pour le OUTPUT je veux bien .. d'ailleurs on peut rassembler 2 lignes en une: tes
Code : Tout sélectionner
$IPT -A FORWARD -m state --state NEW -p tcp -m multiport --dports 80,443,110,25,1863 -i $LOCALE -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
Tu me les remplaces par:
Code : Tout sélectionner
$IPT -A FORWARD -m state --state NEW,ESTABLISHED,RELATED -p tcp -m multiport --dports 80,443,110,25,1863 -i $LOCALE -j ACCEPT
Et.. savais tu que sur ArchLinux il y a un daemon iptables ? tu le rajoute dans la liste des daemons du /etc/rc.conf et quand tu as fini d'écrire tes règles, tu fais dans une console:
Et tes règles seront sauvegarder, et avec iptables dans les daemons, elles seront chargés automatiquement a chaque démarrage, pas besoin de te casser la tête à lancer ce script au démarrage.
Bon pour ton script ça donnerrais ça (à adapter n'oublie pas!):
Code : Tout sélectionner
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -p tcp -s 192.168.1.1 -j ACCEPT
$IPT -A OUTPUT -p tcp -d 192.168.1.1 -j ACCEPT
$IPT -A INPUT -p tcp -s 192.168.1.0/24 -j DROP
$IPT -A OUTPUT -p tcp -d 192.168.1.0/24 -j DROP
#pour DNSMASQ
$IPT -A INPUT -p udp --sport 68 --dport 67 -i $LOCALE -j ACCEPT
$IPT -A OUTPUT -p udp --sport 67 --dport 68 -o $LOCALE -j ACCEPT
$IPT -A OUTPUT -p udp --dport 5353 --sport 5353 -o $LOCALE -j ACCEPT
$IPT -A INPUT -p udp --dport 5353 --sport 5353 -i $LOCALE -j ACCEPT
$IPT -A INPUT -p udp --dport 53 -i $LOCALE -j ACCEPT
$IPT -A OUTPUT -p udp --dport 53 -o $LOCALE -j ACCEPT
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state NEW,ESTABLISHED,RELATED -p tcp -m multiport --dports 80,443,110,25,1863 -i $LOCALE -j ACCEPT
$IPT -t nat -A POSTROUTING -s 192.168.10.0/24 -o $EXTERIEUR -j MASQUERADE
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
echo 1 >/proc/sys/net/ipv4/ip_forward
Maintenant tu pourrais faire encore mieux et ajouter une limite de trafic sur certains ports mais bon la n'est pas le sujet.
note: il se peut que j'ai fait des erreurs de frappes relis moi et surtout vérifie mon code si ce que j'ai rajouté ne te correspond pas.
Sinon pasons a la suite, squid fonctionne en local non ? pas besoin de configurer iptables, l'ordinateur est autorisé à communiquer avec lui même. Et d'après ce que je viens de lire dansguardian utilise squid donc pas de problème.
Maintenant si tu veut controler par un proxy sur les ports 25, 110 et 1863 tu peux carrement utiliser la connexion par serveur mandataire (Système-> préférence -> serveur mandataire) tu entres le port et l'ip (127.0.0.1 pour squid par exemple, vérifie bien qu'il y ait bien localhost (ou 127.0.0.1) dans l'onglet "hotes a ignorer). Par ce moyen toutes les connexions passerons par le proxy indiqué. Après si tu veux un proxy différent pour les ports 25,110 et 1863 que celui du port 80 (si tu utilises FireFox je ne connais pas les autres) dans firefox donc, dans édition, préférences, avancé, réseau, paramètres, configuration manuel du proxy.
Voila voila, je crois avoir tout dit (je ne me relis pas désolé j'ai déjà passé pas mal de temps a écrire...)
PS: désolé je suis faché avec les accents.
PPS: Oula désolé je n'avais pas vu la date...
Tout est possible, l'impossible n'est que l'absurde.