Comment savoir si mon parefeu fonctionne bien?

car j’ai recréer un fichier mon_parefeu et je dois supprimer parefeu

voilà ce que j’obtiens :

iptables-save

Generated by iptables-save v1.4.8 on Thu Jul 19 17:07:16 2012

*raw
:stuck_out_tongue:REROUTING ACCEPT [1:106]
:OUTPUT ACCEPT [1:106]
COMMIT

Completed on Thu Jul 19 17:07:16 2012

Generated by iptables-save v1.4.8 on Thu Jul 19 17:07:16 2012

*mangle
:stuck_out_tongue:REROUTING ACCEPT [1:106]
:INPUT ACCEPT [1:106]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:106]
:stuck_out_tongue:OSTROUTING ACCEPT [2:212]
COMMIT

Completed on Thu Jul 19 17:07:16 2012

Generated by iptables-save v1.4.8 on Thu Jul 19 17:07:16 2012

*nat
:stuck_out_tongue:REROUTING ACCEPT [0:0]
:stuck_out_tongue:OSTROUTING ACCEPT [1:106]
:OUTPUT ACCEPT [1:106]
COMMIT

Completed on Thu Jul 19 17:07:16 2012

Generated by iptables-save v1.4.8 on Thu Jul 19 17:07:16 2012

*filter
:INPUT ACCEPT [1:106]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:106]
COMMIT

Completed on Thu Jul 19 17:07:16 2012

ben là il ne filtre pas grand chose… Tu devrais décrire précisemment ce que tu as fait.

Pour activer ton parefeu, fais
/etc/init.d/parefeu start
Après il te faut l’activer de manière automatique, essaye de voir dans le wiki en cherchant update-rc.d

j’ai fais ça :

touch /etc/init.d/mon_parefeu

chmod +x /etc/init.d/mon_parefeu

gedit /etc/init.d/mon_parefeu

copier :

#!/bin/sh

BEGIN INIT INFO

Provides: iptables

Required-Start:

Should-Start:

Required-Stop:

Should-Stop:

Default-Start: 2 3 4 5

Default-Stop: 0 1 6

Short-description: iptables

Description: Firewall

END INIT INFO

chargement/déchargement d’iptables

case “$1” in
’start’)
/sbin/iptables-restore < /etc/config_parefeu
RETVAL=$?
;;
‘stop’)
/sbin/iptables-save > /etc/config_parefeu
RETVAL=$?
;;
‘clean’)

clean le parefeu pendant que la machine tourne

ça peut être une faille de sécurite si on l’exécute lors de l’extinction avant l’arrêt des interfaces

pensez à refaire un start après sinon la sauvegarde se fera automatiquement à l’extinction

/sbin/iptables -t filter -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -t raw -F
/sbin/iptables -t filter -P INPUT ACCEPT
/sbin/iptables -t filter -P OUTPUT ACCEPT
/sbin/iptables -t filter -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT
/sbin/iptables -t mangle -P PREROUTING ACCEPT
/sbin/iptables -t mangle -P OUTPUT ACCEPT
/sbin/iptables -t mangle -P POSTROUTING ACCEPT
/sbin/iptables -t mangle -P FORWARD ACCEPT
/sbin/iptables -t mangle -P INPUT ACCEPT
/sbin/iptables -t raw -P OUTPUT ACCEPT
/sbin/iptables -t raw -P PREROUTING ACCEPT
RETVAL=$?
;;
‘restart’)
$0 stop && $0 start
RETVAL=$?
;;
*)
echo "Usage: $0 { start | stop | restart | clean}"
RETVAL=1
;;
esac
exit $RETVAL

redémarrer et voilà…

ps : purée, faut s’accrocher avec linux… c’pas simple, j’ai l’impression de revenir 20 ans en arrière devant mon dx4 100 sous dos…

Tu as oublié de faire: update-rc.d mon_parefeu defaults

Tu peux faire un iptables -L --line-numbers pour voir si toutes tes règles sont actives.

si je le fais cela donne :

update-rc.d mon_parefeu defaults

update-rc.d: using dependency based boot sequencing
update-rc.d: warning: mon_parefeu start runlevel arguments (2 3 4 5) do not match LSB Default-Start values ( 2 3 4 5)
update-rc.d: warning: mon_parefeu stop runlevel arguments (0 1 6) do not match LSB Default-Stop values ( 0 1 6)
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.

[code]### BEGIN INIT INFO

Provides: iptables

Required-Start: $local_fs

Should-Start:

Required-Stop: $local_fs

Should-Stop:

X-Start-Before: $network

X-Stop-After: $network

Default-Start: S

Default-Stop: 0 6

Short-description: Firewall rules

Description: Configure NetFilter firewall with iptables

END INIT INFO[/code]

Essaye ça, puis relance la commande.

Après changements :

update-rc.d mon_parefeu defaults

update-rc.d: using dependency based boot sequencing
update-rc.d: warning: mon_parefeu start runlevel arguments (2 3 4 5) do not match LSB Default-Start values ( S)
update-rc.d: warning: mon_parefeu stop runlevel arguments (0 1 6) do not match LSB Default-Stop values ( 0 6)
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.
insserv: Script mon_parefeu is broken: incomplete LSB comment.
insserv: missing valid name for Provides:' please add. insserv: Script mon_parefeu is broken: incomplete LSB comment. insserv: missing valid name forProvides:’ please add.

Refais ta ligne Provides: en ne mettant qu’un blanc après Provides et en prenant un nom quelconque genre
Provides: parefeu
Je ne vois que ça comme explication

Est-ce qu’il faudrait pas mettre le nom du script même ?

bon j’ai recréer un fichier “parefeu” supprimer l’ancien “mon_parefeu”

et j’obtiens :

update-rc.d parefeu defaults

update-rc.d: using dependency based boot sequencing
update-rc.d: warning: parefeu start runlevel arguments (2 3 4 5) do not match LSB Default-Start values ( S)
update-rc.d: warning: parefeu stop runlevel arguments (0 1 6) do not match LSB Default-Stop values ( 0 6)

puis j’ai fais :

/etc/init.d/parefeu

Usage: /etc/init.d/parefeu { start | stop | restart | clean}

/etc/init.d/parefeu restart

update-rc.d parefeu deafults

update-rc.d: using dependency based boot sequencing
usage: update-rc.d [-n] [-f] remove
update-rc.d [-n] defaults [NN | SS KK]
update-rc.d [-n] start|stop NN runlvl [runlvl] […] .
update-rc.d [-n] disable|enable [S|2|3|4|5]
-n: not really
-f: force

The disable|enable API is not stable and might change in the future.

Que donne :
$ ls /etc/rcS.d | grep Snetworking
et
$ ls /etc/rc0.d | grep K
networking
:question:

# update-rc.d parefeu defaults
update-rc.d: using dependency based boot sequencing
update-rc.d: warning: parefeu start runlevel arguments (2 3 4 5) do not match LSB Default-Start values (      S)
update-rc.d: warning: parefeu stop runlevel arguments (0 1 6) do not match LSB Default-Stop values (       0 6)

C’est bon à priori. Les warnings ne sont pas gênant.

[code]

/etc/init.d/parefeu

Usage: /etc/init.d/parefeu { start | stop | restart | clean}

/etc/init.d/parefeu restart

update-rc.d parefeu deafults

update-rc.d: using dependency based boot sequencing
usage: update-rc.d [-n] [-f] remove
update-rc.d [-n] defaults [NN | SS KK]
update-rc.d [-n] start|stop NN runlvl [runlvl] […] .
update-rc.d [-n] disable|enable [S|2|3|4|5]
-n: not really
-f: force

The disable|enable API is not stable and might change in the future.[/code]

Tu t’es trompé: update-rc.d parefeu deafults

Pour moi c’est fini, tu peux redémarrer et vérifier si tes règles sont prise en compte avec cette commande: iptables -L --line-numbers

iptables -L --line-numbers

Chain INPUT (policy ACCEPT)
num target prot opt source destination

Chain FORWARD (policy ACCEPT)
num target prot opt source destination

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

ls /etc/rcS.d | grep S**networking

S13networking

ls /etc/rc0.d | grep K**networking

K07networking

pour voir les règles en cour d’utilisation:
iptables -L -n
ou
iptables -L
si on veut un résolution dns des ip , ce qui peut ètre très long dans le cas ou ils y aurai beaucoup de règles.

[quote=“karbon”]# iptables -L --line-numbers
Chain INPUT (policy ACCEPT)
num target prot opt source destination

Chain FORWARD (policy ACCEPT)
num target prot opt source destination

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

ls /etc/rcS.d | grep S**networking

S13networking

ls /etc/rc0.d | grep K**networking

K07networking[/quote]
Tu n’as ajouté aucune règle et tout est ouvert.
Je te conseille de revoir la totalité de ton installation de parefeu.

Je voulais linux par la force des choses, parce que j’ai pas les moyens d’acheter un o.s par ordi à 160 euros pièce (merci m$!) et je finis par passer un temps pas possible à installer un simple parefeu pour simplement surfer et voir les mails sur le net. Ca me gonfle…

C’est rude le terminal, je comprend rien à ce language! Je ne suis pas informaticien, et le temps que je m’y mette un peu, me faudrait un tuto “ultra nul”, bien plus détaillé, histoire de ne rien oublier…

En tt cas, le forum debian est super actif et convivial, c’est très appréciable, sinon je crois que j’aurais déjà lâché l’affaire…

Si tu n’y arrive vraiment pas, tu peux regarder du coté de gufw, qui est une surcouche à iptable, et qui te permet de configurer le parefeu très simplement.

Post ton script pour voir.

Essaye de faire les choses suivantes:

/etc/init.d/parefeu start

iptables-save

le premier démarre le parefeu (pas grave si il est déjà démarré, ça réinialise tout)
la seconde commande affiche d’une manière plus claire le résultat.
Si tu as une liste de commande avec de temps à autres DROP à la fin, il y a des chances que ça marche. Il s’agit ensuite de le mettre au chargement, ça c’est la syntaxe du début du fichier, ça n’est pas très compliqué et c’est assez facile à mettre au point.
Donne le résulat de ls -l /etc/rc2.d pour voir

Alors iptables-save ne donne rien, cela me fait juste un retour à l’invite.

Sinon :

ls -l /etc/rc2.d

total 4
-rw-r–r-- 1 root root 677 27 mars 03:50 README
lrwxrwxrwx 1 root root 17 7 juil. 15:50 S14portmap -> …/init.d/portmap
lrwxrwxrwx 1 root root 20 7 juil. 15:50 S15nfs-common -> …/init.d/nfs-common
lrwxrwxrwx 1 root root 24 7 juil. 15:50 S17binfmt-support -> …/init.d/binfmt-support
lrwxrwxrwx 1 root root 20 7 juil. 15:51 S17fancontrol -> …/init.d/fancontrol
lrwxrwxrwx 1 root root 17 7 juil. 15:50 S17rsyslog -> …/init.d/rsyslog
lrwxrwxrwx 1 root root 14 7 juil. 15:50 S17sudo -> …/init.d/sudo
lrwxrwxrwx 1 root root 15 7 juil. 15:50 S18acpid -> …/init.d/acpid
lrwxrwxrwx 1 root root 17 7 juil. 15:50 S18anacron -> …/init.d/anacron
lrwxrwxrwx 1 root root 13 7 juil. 15:50 S18atd -> …/init.d/atd
lrwxrwxrwx 1 root root 14 7 juil. 15:50 S18cron -> …/init.d/cron
lrwxrwxrwx 1 root root 14 7 juil. 15:50 S18dbus -> …/init.d/dbus
lrwxrwxrwx 1 root root 15 7 juil. 15:50 S18exim4 -> …/init.d/exim4
lrwxrwxrwx 1 root root 20 7 juil. 15:51 S18kerneloops -> …/init.d/kerneloops
lrwxrwxrwx 1 root root 21 7 juil. 15:50 S18loadcpufreq -> …/init.d/loadcpufreq
lrwxrwxrwx 1 root root 22 7 juil. 15:50 S19avahi-daemon -> …/init.d/avahi-daemon
lrwxrwxrwx 1 root root 19 7 juil. 15:50 S19bluetooth -> …/init.d/bluetooth
lrwxrwxrwx 1 root root 22 7 juil. 15:50 S19cpufrequtils -> …/init.d/cpufrequtils
lrwxrwxrwx 1 root root 25 7 juil. 15:51 S19network-manager -> …/init.d/network-manager
lrwxrwxrwx 1 root root 14 7 juil. 15:50 S20cups -> …/init.d/cups
lrwxrwxrwx 1 root root 14 7 juil. 15:51 S20gdm3 -> …/init.d/gdm3
lrwxrwxrwx 1 root root 15 7 juil. 15:51 S20saned -> …/init.d/saned
lrwxrwxrwx 1 root root 18 7 juil. 15:51 S21bootlogs -> …/init.d/bootlogs
lrwxrwxrwx 1 root root 18 7 juil. 15:51 S22rc.local -> …/init.d/rc.local
lrwxrwxrwx 1 root root 19 7 juil. 15:51 S22rmnologin -> …/init.d/rmnologin
lrwxrwxrwx 1 root root 23 7 juil. 15:51 S22stop-bootlogd -> …/init.d/stop-bootlogd

Dans le cas de gufw, c’est à installer via synaptic c’est cela? avec ufw (que j’ai pas)? Il faudra que je supprime le fichier “parefeu” actuel de init.d? Rien d’autre à effacer?

Scipt en l’état acutel des choses :

#!/bin/sh

BEGIN INIT INFO

Provides: parefeu

Required-Start: $local_fs

Should-Start:

Required-Stop: $local_fs

Should-Stop:

X-Start-Before: $network

X-Stop-After: $network

Default-Start: S

Default-Stop: 0 6

Short-description: Firewall rules

Description: Configure NetFilter firewall with iptables

END INIT INFO

chargement/déchargement d’iptables

case “$1” in
’start’)
/sbin/iptables-restore < /etc/config_parefeu
RETVAL=$?
;;
‘stop’)
/sbin/iptables-save > /etc/config_parefeu
RETVAL=$?
;;
‘clean’)

clean le parefeu pendant que la machine tourne

ça peut être une faille de sécurite si on l’exécute lors de l’extinction avant l’arrêt des interfaces

pensez à refaire un start après sinon la sauvegarde se fera automatiquement à l’extinction

/sbin/iptables -t filter -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -t raw -F
/sbin/iptables -t filter -P INPUT ACCEPT
/sbin/iptables -t filter -P OUTPUT ACCEPT
/sbin/iptables -t filter -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT
/sbin/iptables -t mangle -P PREROUTING ACCEPT
/sbin/iptables -t mangle -P OUTPUT ACCEPT
/sbin/iptables -t mangle -P POSTROUTING ACCEPT
/sbin/iptables -t mangle -P FORWARD ACCEPT
/sbin/iptables -t mangle -P INPUT ACCEPT
/sbin/iptables -t raw -P OUTPUT ACCEPT
/sbin/iptables -t raw -P PREROUTING ACCEPT
RETVAL=$?
;;
‘restart’)
$0 stop && $0 start
RETVAL=$?
;;
*)
echo "Usage: $0 { start | stop | restart | clean}"
RETVAL=1
;;
esac
exit $RETVAL