Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Shorewall, iptables et noyau ?

31 réponses
Avatar
David BERCOT
Bonjour,

Je viens de souscrire r=C3=A9cemment =C3=A0 un serveur priv=C3=A9. Cette so=
lution
semble tr=C3=A8s int=C3=A9ressante car on peut avoir totalement la main sur=
la
machine (choix de l'OS, acc=C3=A8s SSH, etc...), =C3=A0 un d=C3=A9tail pr=
=C3=A8s : le
noyau !
Ceci pourrait sembler secondaire =C3=A0 premi=C3=A8re vue, mais apparemment=
, ce
n'est pas le cas. Je m'explique.

J'ai donc commenc=C3=A9 par changer les sources.list / preferences et fait
un dist-upgrade de l'OS. Puis, j'ai install=C3=A9 tous mes programmes :
messagerie, serveur Web, etc... Au noyau pr=C3=A8s, je suis donc up-to-date
sur Debian Sid (je sais, je pourrais rester en stable, mais j'aime bien
Sid ;-))).
Puis j'installe mon firewall : shorewall. Et l=C3=A0, =C3=A7a se complique.=
Apr=C3=A8s
l'avoir param=C3=A9tr=C3=A9, je le d=C3=A9marre et j'obtiens :
"iptables: No chain/target/match by that name"

Si je regarde la documentation de Shorewall, il semble que cela vienne
du noyau (configuration particuli=C3=A8re) :
http://www.shorewall.net/troubleshoot.htm#Start-shell

Est-ce le bon diagnostic ? Auriez-vous une solution =C3=A0 me proposer ?

Je ne vous cache pas que j'aime bien shorewall car je le trouve tr=C3=A8s
simple =C3=A0 comprendre et =C3=A0 configurer. Toutefois, si c'est absolume=
nt
n=C3=A9cessaire, je suis OK pour =C3=A9voluer ;-)

Merci d'avance.

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

10 réponses

1 2 3 4
Avatar
Kevin Hinault
--00163630f2413d58f9046128ee67
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Le 23 janvier 2009 16:54, David BERCOT a écrit :

Si jamais vous avez une expérience différente chez eux (noyau
recompilable) ou alors si vous avez un autre firewall qui puisse
fonctionner sur cette config, je suis preneur.




Non pas mieux, désolé.

Pour le firewall, mes besoins sont limités : je veux tout bloquer sauf
3 ports en entrée !





Si ce n'est que ça ce n'est pas forcément la peine de mettre en place
l'artillerie lourde. Les règles iptables sont largement faisable à la m ain
sauf utiliser de conntrack particulier et liés au noyau.

Quels sont les trois protocoles ? SSH (j'imagine), .... et .... ?

Kévin

--00163630f2413d58f9046128ee67
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<br><div class="gmail_quote">Le 23 janvier 2009 16:54, David BERCOT <span dir="ltr">&lt;<a href="mailto:"></a> &gt;</span> a écrit :<br><blockquote class="gmail_quote" style="borde r-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-le ft: 1ex;">

Si jamais vous avez une expérience différente chez eux (noyau<br>
recompilable) ou alors si vous avez un autre firewall qui puisse<br>
fonctionner sur cette config, je suis preneur.</blockquote><div>&nbsp;<br>N on pas mieux, désolé.<br><br></div><blockquote class="gmail_quote" st yle="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex ; padding-left: 1ex;">
Pour le firewall, mes besoins sont limités : je veux tout bloquer sauf<br >
3 ports en entrée !<br>
</blockquote><div><br>&nbsp;<br>Si ce n&#39;est que ça ce n&#39;est pas f orcément la peine de mettre en place l&#39;artillerie lourde. Les règle s iptables sont largement faisable à la main sauf utiliser de conntrack p articulier et liés au noyau.<br>
<br>Quels sont les trois protocoles ? SSH (j&#39;imagine),&nbsp; .... et&nb sp; .... ?<br><br>Kévin</div></div>

--00163630f2413d58f9046128ee67--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Le Fri, 23 Jan 2009 17:18:10 +0100,
David Cure a écrit :
Le Fri, Jan 23, 2009 at 04:57:21PM +0100, David BERCOT ecrivait :
>
> Pour uname -a, j'ai :
> Linux nom_machine 2.6.9-023stab048.6-smp #1 SMP Mon
> Nov 17 18:41:14 MSK 2008 i686 GNU/Linux

La version Linux ressemble à une version OpenVZ.
Regardes cette page surtout le dernier paragraphe :
http://wiki.openvz.org/Setting_up_an_iptables_firewall#Setting_up_a_firew all_that_allows_per-container_configuration

1and1 a "oublié" les modules qui vont bien au niveau de l'hote
pour pouvoir avoir une conf fw au niveau des containers.



Le noyau fourni est un noyau full modules (si j'ai bien compris), ce
qui signifie, non pas un noyau avec tous les modules (la preuve ;-))),
mais un noyau sur lequel on ne peut pas charger de module
complémentaire.

Hum, pas cool...

Merci pour le lien (je l'envoie chez 1and1, au cas où).

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Le Fri, 23 Jan 2009 17:33:44 +0100,
Pascal Hambourg a écrit :
David BERCOT a écrit :
>
> En effet, c'est de la virtualisation.

J'avais bien compris (VPS), mais peux-tu savoir quel type de
virtualisation ça utilise ?



Comme l'a cité une autre personne de la liste : OpenVZ.

> Pour uname -a, j'ai :
> Linux nom_machine 2.6.9-023stab048.6-smp #1 SMP Mon
> Nov 17 18:41:14 MSK 2008 i686 GNU/Linux

Purée que c'est vieux ! Presqu'autant que le noyau inclus dans sarge ,
l'ancienne Debian stable, sachant que l'actuelle stable est en fin de
vie...



Logiquement, j'ai signé pour un Debian 4.0 ;-)

> Et sinon, /proc/config.gz n'existe pas !
>
> Ca a l'air fermé, hein ?

On va essayer autrement. /proc est monté, au moins ? Si oui,
qu'affiche cat /proc/net/ip_tables_names
cat /proc/net/ip_tables_matches
cat /proc/net/ip_tables_targets



Voici les résultats :
# cat /proc/net/ip_tables_names
mangle
filter
nat
# cat /proc/net/ip_tables_matches
length
ttl
tcpmss
tos
multiport
limit
state
tcp
udp
icmp
# cat /proc/net/ip_tables_targets
TCPMSS
REJECT
DNAT
SNAT

Merci.

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Le Fri, 23 Jan 2009 17:32:10 +0100,
Kevin Hinault a écrit :
Le 23 janvier 2009 16:54, David BERCOT a écrit :

> Si jamais vous avez une expérience différente chez eux (noyau
> recompilable) ou alors si vous avez un autre firewall qui puisse
> fonctionner sur cette config, je suis preneur.

Non pas mieux, désolé.

Pour le firewall, mes besoins sont limités : je veux tout bloquer sa uf
> 3 ports en entrée !

Si ce n'est que ça ce n'est pas forcément la peine de mettre en place
l'artillerie lourde. Les règles iptables sont largement faisable à   la
main sauf utiliser de conntrack particulier et liés au noyau.



Justement, shorewall me semblait la bonne solution : pas usine à gaz et
facilement configurable. Je précise que je n'ai jamais utilisé
directement iptables (ceci explique cela ;-)))

Quels sont les trois protocoles ? SSH (j'imagine), .... et .... ?



Hum, allez, on va dire 4 (sans rentrer dans les détails ;-))), en
mettant SMTP, HTTP et HTTPS.

Je vais faire quelques recherches sur les firewall, si jamais 1and1 ne
me propose pas de solution pour shorewall, et si je ne trouve rien, je
m'orienterai vers iptables...

Merci.

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Pascal Hambourg
David BERCOT a écrit :

# cat /proc/net/ip_tables_names
mangle
filter
nat
# cat /proc/net/ip_tables_matches
length
ttl
tcpmss
tos
multiport
limit
state
tcp
udp
icmp
# cat /proc/net/ip_tables_targets
TCPMSS
REJECT
DNAT
SNAT



Bon, y a pas tout, mais le minimum est présent. Il faudrait regarder
quelle règle générée par shorewall provoque l'erreur en suivant les
instructions de la page que tu cites dans ton premier message. Il manque
la cible LOG, ça pourrait venir de là.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Bonjour,

Le Fri, 23 Jan 2009 18:29:51 +0100,
Pascal Hambourg a écrit :
David BERCOT a écrit :
>
> # cat /proc/net/ip_tables_names
> mangle
> filter
> nat
> # cat /proc/net/ip_tables_matches
> length
> ttl
> tcpmss
> tos
> multiport
> limit
> state
> tcp
> udp
> icmp
> # cat /proc/net/ip_tables_targets
> TCPMSS
> REJECT
> DNAT
> SNAT

Bon, y a pas tout, mais le minimum est présent. Il faudrait regarder
quelle règle générée par shorewall provoque l'erreur en suivant les
instructions de la page que tu cites dans ton premier message. Il
manque la cible LOG, ça pourrait venir de là.



Voilà ce que ça donne quand je tente de lancer shorewall :
# shorewall start
Compiling...
Initializing...
Determining Zones...
IPv4 Zones: net
Firewall Zone: fw
Validating interfaces file...
Validating hosts file...
Pre-processing Actions...
Pre-processing /usr/share/shorewall/action.Drop...
Pre-processing /usr/share/shorewall/action.Reject...
Validating Policy file...
Determining Hosts in Zones...
net Zone: venet0:0.0.0.0/0
Deleting user chains...
Compiling /etc/shorewall/routestopped ...
Creating Interface Chains...
Compiling Common Rules
Adding Anti-smurf Rules
Compiling TCP Flags checking...
Compiling Kernel Route Filtering...
Compiling Martian Logging...
Compiling /etc/shorewall/rules...
Compiling Actions...
Compiling /usr/share/shorewall/action.Drop for Chain Drop...
Compiling /usr/share/shorewall/action.Reject for Chain Reject...
Compiling /etc/shorewall/policy...
Compiling Traffic Control Rules...
Compiling Rule Activation...
Compiling IP Forwarding...
Shorewall configuration compiled to /var/lib/shorewall/.start
Starting Shorewall....
Initializing...
Clearing Traffic Control/QOS
Deleting user chains...
Enabling Loopback and DNS Lookups
iptables: No chain/target/match by that name
Terminated

On peut tirer quelque chose de ça ? Y a-t-il une log quelque part ?

Finalement, je crois que je vais être obligé d'utiliser les rà ¨gles
iptables en direct ;-)

En tous cas, merci pour l'aide.

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Pascal Hambourg
David BERCOT a écrit :

Pascal Hambourg a écrit :

Il faudrait regarder
quelle règle générée par shorewall provoque l'erreur en suivant les
instructions de la page que tu cites dans ton premier message. Il
manque la cible LOG, ça pourrait venir de là.



Voilà ce que ça donne quand je tente de lancer shorewall :
# shorewall start


[...]

On peut tirer quelque chose de ça ? Y a-t-il une log quelque part ?



Non, je suggérais de faire ce qui est décrit là :
<http://www.shorewall.net/troubleshoot.htm#Start-shell>.

Soit ajouter l'option "-vv" pour augmenter la "verbosité"

shorewall -vv [re]start

soit si ça ne marche pas ajouter l'option "debug" et récupérer les
messages de debug dans un fichier pour analyse

shorewall debug start 2> /chemin/vers/debug_shorewall

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Re-bonjour,

Le Mon, 26 Jan 2009 11:10:47 +0100,
Pascal Hambourg a écrit :
>> Il faudrait regarder
>> quelle règle générée par shorewall provoque l'erre ur en suivant
>> les instructions de la page que tu cites dans ton premier message.
>> Il manque la cible LOG, ça pourrait venir de là.
Non, je suggérais de faire ce qui est décrit là :
<http://www.shorewall.net/troubleshoot.htm#Start-shell>.
Soit ajouter l'option "-vv" pour augmenter la "verbosité"
shorewall -vv [re]start



Je garde ça de côté, mais, comme j'aurais visiblement des pr oblèmes,
j'en profite pour essayer de passer à la configuration pour homme ;-)

Après quelques recherches et lectures, je lance la configuration
suivante :
# Vidage des règles (éventuelles)
iptables -t filter -F
iptables -t filter -X
iptables -t nat -F
iptables -t nat -X
# Politique générale
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT ACCEPT
# Boucle locale
iptables -t filter -A INPUT -s 127.0.0.1 -i lo -j ACCEPT
# Retour des requêtes lancées depuis l'intérieur
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j
ACCEPT
# Règles autorisées
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

J'espère que les exemples que j'ai trouvés sont bons ;-)
Il me reste toutefois un souci. Je souhaite utiliser sslh (merci
Yves ;-))). J'ai donc un port unique en entrée et 2 ports en local.
Si je fais uniquement :
iptables -A INPUT -p tcp --dport port_entrée -j ACCEPT
ça ne marche pas !!!
J'ai fait le test avec la même ligne que ci-dessus mais pour les 2
ports en local, et là, ça fonctionne. Toutefois, j'imagine qu'il doit y
avoir une possibilité pour ne pas ouvrir de l'extérieur les 2 por ts qui
n'ont besoin d'être accessibles qu'en interne...
Mais là, je sèche sur la syntaxe...

Auriez-vous une piste ?

Merci d'avance (et à Pascal pour sa patience ;-))).

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Pascal Hambourg
David BERCOT a écrit :

iptables -t filter -A INPUT -s 127.0.0.1 -i lo -j ACCEPT



L'option -s est trop restrictive, les paquets émis sur l'interface de
loopback peuvent avoir n'importe quelle adresse source locale. Cela
inclut la plage 127.0.0.0/8 et toutes les adresses configurées sur les
interfaces de la machine.

Il me reste toutefois un souci. Je souhaite utiliser sslh (merci
Yves ;-))). J'ai donc un port unique en entrée et 2 ports en local.
Si je fais uniquement :
iptables -A INPUT -p tcp --dport port_entrée -j ACCEPT
ça ne marche pas !!!



C'est censé marcher comment au niveau réseau, sslh ?

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David BERCOT
Le Mon, 26 Jan 2009 14:01:31 +0100,
Pascal Hambourg a écrit :
David BERCOT a écrit :
>
> iptables -t filter -A INPUT -s 127.0.0.1 -i lo -j ACCEPT

L'option -s est trop restrictive, les paquets émis sur l'interface d e
loopback peuvent avoir n'importe quelle adresse source locale. Cela
inclut la plage 127.0.0.0/8 et toutes les adresses configurées sur
les interfaces de la machine.



Mhummm, il me semble que je n'ai que 127.0.0.1 (de visible en tous
cas)...

> Il me reste toutefois un souci. Je souhaite utiliser sslh (merci
> Yves ;-))). J'ai donc un port unique en entrée et 2 ports en local.
> Si je fais uniquement :
> iptables -A INPUT -p tcp --dport port_entrée -j ACCEPT
> ça ne marche pas !!!

C'est censé marcher comment au niveau réseau, sslh ?



On arrive sur un port spécifique, et, ensuite, en fonction de ce qui
arrive, on est redirigé vers le bon service sur un autre port.
Je me demande si je ne pourrais pas faire un mix des règles
précédentes, du genre :
iptables -t filter -A INPUT -s 127.0.0.1 -p tcp --dport port_local1 -j
ACCEPT

Mais je ne connais pas assez iptables pour savoir si c'est valable ;-)

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
1 2 3 4