Probleme de confguration de shorewall

Bonjour à tous,
je vous expose mon problème:
J’ai un serveur Linux (debian Lenny) qui me sert de passerelle, firewall, proxy, contrôle parental, serveur DHCP, FTP…

Tout fonctionne, sauf:
Lorsque je cherche à joindre une machine, via son adresse FTP sur le réseau interne, cela fonctionne (192.168.1.19:85)
En revanche, si je cherche à la joindre par un nom de serveur externe, cela ne fonctionne pas:

Si je tape l’adresse choisie: dreambox.XXX.fr:85, j’ai l’erreur suivante:
While trying to retrieve the URL: dreambox.XXX.fr:85…
The following error was encountered:
* Connection to IP Failed
The system returned:
(111) Connection refused
The remote host or network may be down. Please try the request again.
Your cache administrator is webmaster.

J’ai bien le DNS qui est configuré pour faire pointer dreambox.XXX.fr vers mon adresse IP, qui est fixe pour le moment.

Sur le proxy linux, tourne Shorewall.
J’ai bien une règle HTTP/ACCEPT zone net firewall TCP 85 85
suivie de:
DNAT zone net machine 192.168.1.19:85 de la zone local TCP 85 85

Je ne comprends pas comment configurer shorewall.
Une aide serait la bienvenue…

Merci par avance
The alchimist

FTP utilise 2 ports. 1 pour les commandes et 1 pour l’echange de datas proprement dit.
Le probleme est que le 2e port n’est pas connu a l’avance (tu dois configurer une plage) et le sens de l’ouverture de la connexion depend du mode de ftp (actif ou passif).

Rensigne toi sur le fonctionnement de ftp et comment le gerer dans shorewall, tu trouveras la solution sans probleme.
C’est juste qu’il faut savoir que FTP se gere d’une maniere un peu specifique avec un firewall.

Bonjour,
je viens de m’apercevoir que j’avais dit une anerie.
C’est bien en HTTP que je dois me connecter.
En fait, sur la machine Linux, j’ai bien un serveur apache qui tourne avec deux site (ports d’écoute différents).
Les deux sont joignables en interne et en externe.
En revanche, un troisieme site, sur une autre machine (avec un autre port) est joignable en interne, mais pas en externe.
C’est pour ce troisieme site que je demande de l’aide pour la config.

Merci encore de la réponse.

The alchimist

et tu as reproduits la meme conf shorewall et apache sur ton 2e serveur et ca ne marche pas ?

Pour info : tu peux avoir plusieurs sites sur le meme port avec apache en utilisant des virtualhosts basés sur le nom.

Bonjour,
Pour le troisieme site, la configuration est plus que “light”.
C’est en fai une dreambox qui écoute sur le port qu’on lui spécifie (pour moi 85).
La difficulté est donc:
de diriger avec shorewall les requetes qui arrivent sur le port 85 vers la bonne machine, elle aussi sur le port 85, quand ces requetes viennent de l’extérieur.

l’idée, dans mon cas, est de me connecter depuis n’importe où, avec mon téléphone, pour programmer des enregistrements.

Merci encore de votre aide.
The alchimist

Tu as acces a internet via un modem ou un routeur ? Si c’est un routeur, faut rediriger les ports a son niveau plus au niveau de ta passerelle debian.

J’ai acces a internet depuis une freebox.
Elle est configurée comme simple modem.
Aucun routage, pas de redirection.
La passerelle Debian sert envoyer les bonnes requetes sur les bonnes machines.

The Alchimist

Ok donc tu as juste a faire du dnat sur ta passerelle debian alors. Ca devrait etre une config assez simple normalement…
Par contre, j’ai l’impression que la ligne que tu as mis dans ton 1er post est a l’envers, c’est peut etre pour ca que ca marche pas

PFFFF,
je suis une bille.
Je crois que ça fonctionnait depuis le départ, sauf que:
je testais l’adresse externe depuis la zone interne, ce qui, quand on lit bien la doc de shorewall NE PEUT PAS FONCTIONNER!

J’ai fait le test depuis mon portable, l’ensemble des sites répondent bien si je me connecte depuis la 3G par exemple, en fonction du N° de port…

Je confirme demain, mais je crois que c’est bon.

Merci encore d’avoir passé du temps à me répondre.
Cordialement

The alchimist

Ah oui, c’est un principe de base de tous les firewalls ca :slight_smile: