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

vsftpd sur ssl

3 réponses
Avatar
Matthieu
------=_Part_14785_20996298.1137798108119
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Bonsoir

je desespere quand a la configuration de mon serveur vsftpd. je n'arrive pa=
s
a recuperer la liste de mes dossiers bien que j'arrive a me connecter.

mon architecture reseau est la suivante:
- un routeur assure la connexion entre la dmz et l'internet via du nat.
- le serveur a pour ip 192.168.25.10
- sur le serveur un iptables avec comme regles a la fin un logging des
packets non autoris=E9s
- une configuration de vsftpd en mode passif pour des hotes virtuels:

listen=3DYES
pasv_enable=3DYES
pasv_promiscuous=3DYES
pasv_min_port=3D10000
pasv_max_port=3D20000
ssl_enable=3DYES
allow_anon_ssl=3DYES
force_anon_data_ssl=3DYES
force_anon_logins_ssl=3DYES
ssl_tlsv1=3DYES
ssl_sslv2=3DNO
ssl_sslv3=3DNO
rsa_cert_file=3D/etc/ssl/certs/vsftpd.pem

seulement lorsque je me connectes avec mon client ftp filezilla 2.2.18 en
ftp sur tls, j'obtiens le log suivant:

tat : Connexion =E0 mon_server.com ...
Etat : Connect=E9 avec mon_server.com, n=E9gotiation de la connexion SSL=
...
R=E9ponse : 220 Welcome.
Commande : AUTH TLS
R=E9ponse : 234 Proceed with negotiation.
Etat : Connexion SSL =E9tablie. Attente du message d'accueil...
Commande : USER bob
R=E9ponse : 331 Please specify the password.
Commande : PASS *********************
R=E9ponse : 230 Login successful.
Commande : FEAT
R=E9ponse : 211-Features:
R=E9ponse : AUTH SSL
R=E9ponse : AUTH TLS
R=E9ponse : EPRT
R=E9ponse : EPSV
R=E9ponse : MDTM
R=E9ponse : PASV
R=E9ponse : PBSZ
R=E9ponse : PROT
R=E9ponse : REST STREAM
R=E9ponse : SIZE
R=E9ponse : TVFS
R=E9ponse : 211 End
Commande : SYST
R=E9ponse : 215 UNIX Type: L8
Commande : PBSZ 0
R=E9ponse : 200 PBSZ set to 0.
Commande : PROT P
R=E9ponse : 200 PROT now Private.
Etat : Connect=E9
Etat : R=E9cup=E9ration de la liste de r=E9pertoires...
Commande : PWD
R=E9ponse : 257 "/"
Commande : TYPE A
R=E9ponse : 200 Switching to ASCII mode.
Commande : PASV
R=E9ponse : 227 Entering Passive Mode (192,168,25,10,59,167)
Commande : LIST
Erreur : Le canal de transfert n'a pas pu =EAtre ouvert. Raison : Une
tentative de connexion a =E9chou=E9 car le parti connect=E9 n'a pas r=E9pon=
du
convenablement au-del=E0 d'une certaine dur=E9e ou une connexion =E9tablie =
a
=E9chou=E9 car l'h=F4te de connexion n'a pas r=E9pondu.
Erreur : N'a pas pu r=E9cup=E9rer la liste du r=E9pertoire
Commande : TYPE A
Erreur : Inactivit=E9 d=E9tect=E9e !

et puis plus rien. rien dans le syslog concernant iptables, rien dans les
logs de mon routeur concernant des paquets rejet=E9s.
que puis je faire ou que me manque t'il dans ma configuration vsftpd ou ssl
pour que je puisse utiliser vsftpd sur ssl?
merci d'avance pour votre aide

------=_Part_14785_20996298.1137798108119
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Bonsoir<br><br>je desespere quand a la configuration de mon serveur vsftpd.=
je n'arrive pas a recuperer la liste de mes dossiers bien que j'arrive a m=
e connecter.<br><br>mon architecture reseau est la suivante:<br>- un routeu=
r assure la connexion entre la dmz et l'internet via du nat.
<br>- le serveur a pour ip <a href=3D"http://192.168.25.10">192.168.25.10</=
a><br>- sur le serveur un iptables avec comme regles a la fin un logging de=
s packets non autoris=E9s<br>- une configuration de vsftpd en mode passif p=
our des hotes virtuels:
<br><br>listen=3DYES<br>pasv_enable=3DYES<br>pasv_promiscuous=3DYES<br>pasv=
_min_port=3D10000<br>pasv_max_port=3D20000<br>ssl_enable=3DYES<br>allow_ano=
n_ssl=3DYES<br>force_anon_data_ssl=3DYES<br>force_anon_logins_ssl=3DYES<br>=
ssl_tlsv1=3DYES<br>
ssl_sslv2=3DNO<br>ssl_sslv3=3DNO<br>rsa_cert_file=3D/etc/ssl/certs/vsftpd.p=
em<br><br>seulement lorsque je me connectes avec mon client ftp filezilla 2=
.2.18 en ftp sur tls, j'obtiens le log suivant:<br><br>tat :&nbsp;&nbsp; &n=
bsp;Connexion =E0 mon_server.com ...
<br>Etat :&nbsp;&nbsp; &nbsp;Connect=E9 avec mon_server.com, n=E9gotiation =
de la connexion SSL...<br>R=E9ponse :&nbsp;&nbsp; &nbsp;220 Welcome.<br>Com=
mande :&nbsp;&nbsp; &nbsp;AUTH TLS<br>R=E9ponse :&nbsp;&nbsp; &nbsp;234 Pro=
ceed with negotiation.<br>Etat :&nbsp;&nbsp; &nbsp;Connexion SSL =E9tablie.=
Attente du message d'accueil...
<br>Commande :&nbsp;&nbsp; &nbsp;USER bob<br>R=E9ponse :&nbsp;&nbsp; &nbsp;=
331 Please specify the password.<br>Commande :&nbsp;&nbsp; &nbsp;PASS *****=
****************<br>R=E9ponse :&nbsp;&nbsp; &nbsp;230 Login successful.<br>=
Commande :&nbsp;&nbsp; &nbsp;FEAT<br>R=E9ponse :&nbsp;&nbsp; &nbsp;211-Feat=
ures:<br>R=E9ponse :&nbsp;&nbsp; &nbsp; AUTH SSL
<br>R=E9ponse :&nbsp;&nbsp; &nbsp; AUTH TLS<br>R=E9ponse :&nbsp;&nbsp; &nbs=
p; EPRT<br>R=E9ponse :&nbsp;&nbsp; &nbsp; EPSV<br>R=E9ponse :&nbsp;&nbsp; &=
nbsp; MDTM<br>R=E9ponse :&nbsp;&nbsp; &nbsp; PASV<br>R=E9ponse :&nbsp;&nbsp=
; &nbsp; PBSZ<br>R=E9ponse :&nbsp;&nbsp; &nbsp; PROT<br>R=E9ponse :&nbsp;&n=
bsp; &nbsp; REST STREAM<br>R=E9ponse :&nbsp;&nbsp; &nbsp; SIZE<br>R=E9ponse=
:&nbsp;&nbsp; &nbsp; TVFS
<br>R=E9ponse :&nbsp;&nbsp; &nbsp;211 End<br>Commande :&nbsp;&nbsp; &nbsp;S=
YST<br>R=E9ponse :&nbsp;&nbsp; &nbsp;215 UNIX Type: L8<br>Commande :&nbsp;&=
nbsp; &nbsp;PBSZ 0<br>R=E9ponse :&nbsp;&nbsp; &nbsp;200 PBSZ set to 0.<br>C=
ommande :&nbsp;&nbsp; &nbsp;PROT P<br>R=E9ponse :&nbsp;&nbsp; &nbsp;200 PRO=
T now Private.<br>Etat :&nbsp;&nbsp; &nbsp;Connect=E9
<br>Etat :&nbsp;&nbsp; &nbsp;R=E9cup=E9ration de la liste de r=E9pertoires.=
..<br>Commande :&nbsp;&nbsp; &nbsp;PWD<br>R=E9ponse :&nbsp;&nbsp; &nbsp;257=
&quot;/&quot;<br>Commande :&nbsp;&nbsp; &nbsp;TYPE A<br>R=E9ponse :&nbsp;&=
nbsp; &nbsp;200 Switching to ASCII mode.<br>Commande :&nbsp;&nbsp; &nbsp;PA=
SV<br>R=E9ponse :&nbsp;&nbsp; &nbsp;227 Entering Passive Mode (192,168,25,1=
0,59,167)
<br>Commande :&nbsp;&nbsp; &nbsp;LIST<br>Erreur :&nbsp;&nbsp; &nbsp;Le cana=
l de transfert n'a pas pu =EAtre ouvert. Raison : Une tentative de connexio=
n a =E9chou=E9 car le parti connect=E9 n'a pas r=E9pondu convenablement au-=
del=E0 d'une certaine dur=E9e ou une connexion =E9tablie a =E9chou=E9 car l=
'h=F4te de connexion n'a pas r=E9pondu.
<br>Erreur :&nbsp;&nbsp; &nbsp;N'a pas pu r=E9cup=E9rer la liste du r=E9per=
toire<br>Commande :&nbsp;&nbsp; &nbsp;TYPE A<br>Erreur :&nbsp;&nbsp; &nbsp;=
Inactivit=E9 d=E9tect=E9e !<br><br>et puis plus rien. rien dans le syslog c=
oncernant iptables, rien dans les logs de mon routeur concernant des paquet=
s rejet=E9s.
<br>que puis je faire ou que me manque t'il dans ma configuration vsftpd ou=
ssl pour que je puisse utiliser vsftpd sur ssl?<br>merci d'avance pour vot=
re aide

------=_Part_14785_20996298.1137798108119--


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter 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

3 réponses

Avatar
Pascal Hambourg
Salut,

Matthieu a écrit :

je desespere quand a la configuration de mon serveur vsftpd. je n'arrive pas
a recuperer la liste de mes dossiers bien que j'arrive a me connecter.



Sans lire la suite je parie déjà qu'il y a du NAT ou du filtrage
là-dessous. Le protocole FTP, à cause de sa complexité, ne fait pas
toujours bon ménage avec ces deux-là.

mon architecture reseau est la suivante:
- un routeur assure la connexion entre la dmz et l'internet via du nat.



Du NAT -> gagné ! ;-)
Sous Linux le routeur ?

- le serveur a pour ip 192.168.25.10
- sur le serveur un iptables avec comme regles a la fin un logging des
packets non autorisés



Et comment sont gérées les connexions de données FTP ?

- une configuration de vsftpd en mode passif pour des hotes virtuels:

listen=YES
pasv_enable=YES
pasv_promiscuous=YES
pasv_min_port000
pasv_max_port 000
ssl_enable=YES


[...]
seulement lorsque je me connectes avec mon client ftp filezilla 2.2.18 en
ftp sur tls, j'obtiens le log suivant:


[...]
Commande : PASV
Réponse : 227 Entering Passive Mode (192,168,25,10,59,167)
Commande : LIST
Erreur : Le canal de transfert n'a pas pu être ouvert.




et puis plus rien. rien dans le syslog concernant iptables, rien dans les
logs de mon routeur concernant des paquets rejetés.



Examine la réponse du serveur à la commande PASV : l'adresse transmise
en vue d'établir la connexion de données est 192.168.25.10, l'adresse
privée du serveur. Il est évidemment impossible pour un client extérieur
de joindre le serveur à cette adresse qui n'a de sens que sur le réseau
local du serveur. Comme le client cherche à se connecter à cette adresse
privée non routée sur internet, il est normal que ni le routeur ni le
serveur ne voient rien arriver.

que puis je faire ou que me manque t'il dans ma configuration vsftpd ou ssl
pour que je puisse utiliser vsftpd sur ssl?



Quand le routeur NAT est un Linux 2.4 ou ultérieur, la solution
classique consiste à utiliser les modules de suivi et de NAT FTP
ip_conntrack_ftp et ip_nat_ftp de Netfilter qui lisent et modifient à la
volée l'adresse et le port des commandes PASV et PORT dans le flux de la
connexion FTP de contrôle. Mais le chiffrement par SSL/TLS de cette
connexion les empêche de le faire.

Que reste-t-il ?

Première option, passer vsftpd en mode FTP actif. Ainsi les connexions
de données seront sortantes. Mais si le client est aussi derrière un NAT
ou un firewall, il risque d'avoir en mode actif le même problème que le
serveur en mode passif.

L'autre solution que je connais consiste à :
- limiter la plage de ports en mode passif de vsftpd (déjà fait mais la
plage 10000-20000 me semble inutilement étendue) ;
- au niveau du routeur NAT et du firewall, autoriser en entrée depuis
l'extérieur et rediriger cette plage de ports vers l'adresse privée du
serveur ;
- forcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de
son adresse locale dans les réponses aux commandes PASV avec l'option
"pasv_address". (*)

(*) Ça peut être laborieux si l'adresse en question n'est pas fixe : il
faut la récupérer, modifier vsftpd.conf et relancer vsftpd s'il
fonctionne en démon.
Opinion personnelle : ce ne devrait pas être bien difficile de permettre
de spécifier un nom d'hôte au lieu d'une adresse IP numérique et de
résoudre ce nom d'hôte à chaque commande PASV, afin de pouvoir utiliser
un DNS dynamique et de ne pas avoir besoin de modifier vsftpd.conf ni de
relancer vsftpd à chaque changement d'adresse.


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Matthieu
------=_Part_18051_31289945.1137833052604
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Pascal Hambourg wrote:
bonjour pascal

Salut,

Matthieu a écrit :

mon architecture reseau est la suivante:
- un routeur assure la connexion entre la dmz et l'internet via du nat.


Du NAT -> gagné ! ;-)
Sous Linux le routeur ?

non un routeur materiel.


- le serveur a pour ip 192.168.25.10
- sur le serveur un iptables avec comme regles a la fin un logging des
packets non autorisés


Et comment sont gérées les connexions de données FTP ?

- une configuration de vsftpd en mode passif pour des hotes virtuels:

listen=YES
pasv_enable=YES
pasv_promiscuous=YES
pasv_min_port000
pasv_max_port 000
ssl_enable=YES

[...]

seulement lorsque je me connectes avec mon client ftp filezilla 2.2.18 en
ftp sur tls, j'obtiens le log suivant:

[...]

Commande : PASV
Réponse : 227 Entering Passive Mode (192,168,25,10,59,167)
Commande : LIST
Erreur : Le canal de transfert n'a pas pu être ouvert.



et puis plus rien. rien dans le syslog concernant iptables, rien dans les
logs de mon routeur concernant des paquets rejetés.


Examine la réponse du serveur à la commande PASV : l'adresse transmise en
vue d'établir la connexion de données est 192.168.25.10, l'adresse priv ée du
serveur. Il est évidemment impossible pour un client extérieur de joind re le
serveur à cette adresse qui n'a de sens que sur le réseau local du serv eur.
Comme le client cherche à se connecter à cette adresse privée non rou tée sur
internet, il est normal que ni le routeur ni le serveur ne voient rien
arriver.

oui j'ai bien vu la reponse, mais ce comportement n'est pas genant en mode
non ssl.


que puis je faire ou que me manque t'il dans ma configuration vsftpd ou ssl
pour que je puisse utiliser vsftpd sur ssl?


Quand le routeur NAT est un Linux 2.4 ou ultérieur, la solution classique
consiste à utiliser les modules de suivi et de NAT FTP ip_conntrack_ftp e t
ip_nat_ftp de Netfilter qui lisent et modifient à la volée l'adresse et le
port des commandes PASV et PORT dans le flux de la connexion FTP de
contrôle. Mais le chiffrement par SSL/TLS de cette connexion les empêch e de
le faire.

Que reste-t-il ?

Première option, passer vsftpd en mode FTP actif. Ainsi les connexions de
données seront sortantes. Mais si le client est aussi derrière un NAT o u un
firewall, il risque d'avoir en mode actif le même problème que le serve ur en
mode passif.

L'autre solution que je connais consiste à :
- limiter la plage de ports en mode passif de vsftpd (déjà fait mais la
plage 10000-20000 me semble inutilement étendue) ;

ok

en ce qui concerne ces trois points, ils sont a utiliser separement
j'imagines?

- au niveau du routeur NAT et du firewall, autoriser en entrée depuis
l'extérieur et rediriger cette plage de ports vers l'adresse privée du
serveur ; *

heu, il faut que je fasse du filtrage sur un grand nombre de port? pas que
ce soit impossible mais moins j'ai de ports d'ouverts, mieux je me porte :)

- forcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de so n
adresse locale dans les réponses aux commandes PASV avec l'option
"pasv_address". (*)

(*) Ça peut être laborieux si l'adresse en question n'est pas fixe : il faut
la récupérer, modifier vsftpd.conf et relancer vsftpd s'il fonctionne e n
démon.
c'est une ip fixe, ca ne pose pas de problemes

Opinion personnelle : ce ne devrait pas être bien difficile de permettre de
spécifier un nom d'hôte au lieu d'une adresse IP numérique et de ré soudre ce
nom d'hôte à chaque commande PASV, afin de pouvoir utiliser un DNS dyna mique
et de ne pas avoir besoin de modifier vsftpd.conf ni de relancer vsftpd à
chaque changement d'adresse.

merci pour toutes ses pistes en tout cas :)



2006/1/21, Pascal Hambourg :

Salut,

Matthieu a écrit :
>
> je desespere quand a la configuration de mon serveur vsftpd. je n'arriv e
pas
> a recuperer la liste de mes dossiers bien que j'arrive a me connecter.

Sans lire la suite je parie déjà qu'il y a du NAT ou du filtrage
là-dessous. Le protocole FTP, à cause de sa complexité, ne fait pas
toujours bon ménage avec ces deux-là.

> mon architecture reseau est la suivante:
> - un routeur assure la connexion entre la dmz et l'internet via du nat.

Du NAT -> gagné ! ;-)
Sous Linux le routeur ?

> - le serveur a pour ip 192.168.25.10
> - sur le serveur un iptables avec comme regles a la fin un logging des
> packets non autorisés

Et comment sont gérées les connexions de données FTP ?

> - une configuration de vsftpd en mode passif pour des hotes virtuels:
>
> listen=YES
> pasv_enable=YES
> pasv_promiscuous=YES
> pasv_min_port000
> pasv_max_port 000
> ssl_enable=YES
[...]
> seulement lorsque je me connectes avec mon client ftp filezilla 2.2.18e n
> ftp sur tls, j'obtiens le log suivant:
[...]
> Commande : PASV
> Réponse : 227 Entering Passive Mode (192,168,25,10,59,167)
> Commande : LIST
> Erreur : Le canal de transfert n'a pas pu être ouvert.


> et puis plus rien. rien dans le syslog concernant iptables, rien dans
les
> logs de mon routeur concernant des paquets rejetés.

Examine la réponse du serveur à la commande PASV : l'adresse transmis e
en vue d'établir la connexion de données est 192.168.25.10, l'adresse
privée du serveur. Il est évidemment impossible pour un client exté rieur
de joindre le serveur à cette adresse qui n'a de sens que sur le rése au
local du serveur. Comme le client cherche à se connecter à cette adre sse
privée non routée sur internet, il est normal que ni le routeur ni le
serveur ne voient rien arriver.

> que puis je faire ou que me manque t'il dans ma configuration vsftpd ou
ssl
> pour que je puisse utiliser vsftpd sur ssl?

Quand le routeur NAT est un Linux 2.4 ou ultérieur, la solution
classique consiste à utiliser les modules de suivi et de NAT FTP
ip_conntrack_ftp et ip_nat_ftp de Netfilter qui lisent et modifient à l a
volée l'adresse et le port des commandes PASV et PORT dans le flux de l a
connexion FTP de contrôle. Mais le chiffrement par SSL/TLS de cette
connexion les empêche de le faire.

Que reste-t-il ?

Première option, passer vsftpd en mode FTP actif. Ainsi les connexions
de données seront sortantes. Mais si le client est aussi derrière un NAT
ou un firewall, il risque d'avoir en mode actif le même problème que le
serveur en mode passif.

L'autre solution que je connais consiste à :
- limiter la plage de ports en mode passif de vsftpd (déjà fait mais la
plage 10000-20000 me semble inutilement étendue) ;
- au niveau du routeur NAT et du firewall, autoriser en entrée depuis
l'extérieur et rediriger cette plage de ports vers l'adresse privée d u
serveur ;
- forcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de
son adresse locale dans les réponses aux commandes PASV avec l'option
"pasv_address". (*)

(*) Ça peut être laborieux si l'adresse en question n'est pas fixe : il
faut la récupérer, modifier vsftpd.conf et relancer vsftpd s'il
fonctionne en démon.
Opinion personnelle : ce ne devrait pas être bien difficile de permettr e
de spécifier un nom d'hôte au lieu d'une adresse IP numérique et de
résoudre ce nom d'hôte à chaque commande PASV, afin de pouvoir util iser
un DNS dynamique et de ne pas avoir besoin de modifier vsftpd.conf ni de
relancer vsftpd à chaque changement d'adresse.


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact






------=_Part_18051_31289945.1137833052604
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Pascal Hambourg wrote:<br>
bonjour pascal<br>
<blockquote cite="" type="cite">Salu t,
<br>

<br>
Matthieu a écrit :
<br>
<br>
<blockquote type="cite">mon architecture reseau est la suivante:
<br>- un routeur assure la connexion entre la dmz et l'internet via du nat.
<br></blockquote>

<br>
Du NAT -&gt; gagné ! ;-)
<br>
Sous Linux le routeur ?
<br>
</blockquote>
non un routeur materiel.<br>
<blockquote cite="" type="cite">
<br>
<blockquote type="cite">- le serveur a pour ip <a href="http://192.16 8.25.10">192.168.25.10</a>
<br>- sur le serveur un iptables avec comme regles a la fin un logging des
<br>packets non autorisés
<br></blockquote>

<br>
Et comment sont gérées les connexions de données FTP ?
<br>

<br>
<blockquote type="cite">- une configuration de vsftpd en mode passif po ur des hotes virtuels:
<br>
<br>listen=YES
<br>pasv_enable=YES
<br>pasv_promiscuous=YES
<br>pasv_min_port000
<br>pasv_max_port 000
<br>ssl_enable=YES
<br></blockquote>
[...]
<br>
<blockquote type="cite">seulement lorsque je me connectes avec mon clie nt ftp filezilla 2.2.18 en
<br>ftp sur tls, j'obtiens le log suivant:
<br></blockquote>
[...]
<br>
<blockquote type="cite">Commande :&nbsp;&nbsp;&nbsp; PASV
<br>Réponse :&nbsp;&nbsp;&nbsp; 227 Entering Passive Mode (192,168,25,10, 59,167)
<br>Commande :&nbsp;&nbsp;&nbsp; LIST
<br>Erreur :&nbsp;&nbsp;&nbsp; Le canal de transfert n'a pas pu être ouve rt.
<br></blockquote>

<br>

<br>
<blockquote type="cite">et puis plus rien. rien dans le syslog concerna nt iptables, rien dans les
<br>logs de mon routeur concernant des paquets rejetés.
<br></blockquote>

<br>
Examine la réponse du serveur à la commande PASV : l'adresse transmise
en vue d'établir la connexion de données est <a href="http://192.168. 25.10">192.168.25.10</a>, l'adresse
privée du serveur. Il est évidemment impossible pour un client extéri eur
de joindre le serveur à cette adresse qui n'a de sens que sur le réseau
local du serveur. Comme le client cherche à se connecter à cette adress e
privée non routée sur internet, il est normal que ni le routeur ni le
serveur ne voient rien arriver.
<br>
</blockquote>
oui j'ai bien vu la reponse, mais ce comportement n'est pas genant en mode non ssl.<br>
<blockquote cite="" type="cite">
<br>
<blockquote type="cite">que puis je faire ou que me manque t'il dans ma configuration vsftpd ou ssl
<br>pour que je puisse utiliser vsftpd sur ssl?
<br></blockquote>

<br>
Quand le routeur NAT est un Linux 2.4 ou ultérieur, la solution
classique consiste à utiliser les modules de suivi et de NAT FTP
ip_conntrack_ftp et ip_nat_ftp de Netfilter qui lisent et modifient à la
volée l'adresse et le port des commandes PASV et PORT dans le flux de la
connexion FTP de contrôle. Mais le chiffrement par SSL/TLS de cette
connexion les empêche de le faire.
<br>

<br>
Que reste-t-il ?
<br>

<br>
Première option, passer vsftpd en mode FTP actif. Ainsi les connexions
de données seront sortantes. Mais si le client est aussi derrière un NA T
ou un firewall, il risque d'avoir en mode actif le même problème que le
serveur en mode passif.
<br>

<br>
L'autre solution que je connais consiste à :
<br>
- limiter la plage de ports en mode passif de vsftpd (déjà fait mais la
plage 10000-20000 me semble inutilement étendue) ;
<br>
</blockquote>
ok<br>
<br>
en ce qui concerne ces trois points, ils sont a utiliser separement j'imagi nes?<br>
<blockquote cite="" type="cite">- au niveau du routeur NAT et du firewall, autoriser en entrée depuis
l'extérieur et rediriger cette plage de ports vers l'adresse privée du
serveur ;
*<br>
</blockquote>
heu, il faut que je fasse du filtrage sur un grand nombre de port? pas
que ce soit impossible mais moins j'ai de ports d'ouverts, mieux je me
porte :)<br>
<blockquote cite="" type="cite">- fo rcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de
son adresse locale dans les réponses aux commandes PASV avec l'option
&quot;pasv_address&quot;. (*)
</blockquote>
(*) Ça peut être laborieux si l'adresse en question n'est pas fixe : il
faut la récupérer, modifier vsftpd.conf et relancer vsftpd s'il
fonctionne en démon.
<br>
c'est une ip fixe, ca ne pose pas de problemes<br>
<br>
<blockquote cite="" type="cite">Opin ion personnelle : ce ne devrait pas être bien difficile de permettre
de spécifier un nom d'hôte au lieu d'une adresse IP numérique et de
résoudre ce nom d'hôte à chaque commande PASV, afin de pouvoir utilis er
un DNS dynamique et de ne pas avoir besoin de modifier vsftpd.conf ni de
relancer vsftpd à chaque changement d'adresse.
<br>

<br>
</blockquote>
merci pour toutes ses pistes en tout cas :)<br>
<br>
<br><br><div><span class="gmail_quote">2006/1/21, Pascal Hambourg &lt;<a href="mailto:"></a> &gt;:</span><blockquote class="gmail_quote" style="border-left: 1px sol id rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Salut,<br><br>Matthieu a écrit :<br>&gt;<br>&gt; je desespere quand a la configuration de mon serveur vsftpd. je n'arrive pas<br>&gt; a recuperer la liste de mes dossiers bien que j'arrive a me connecter.<br><br>Sans lire l a suite je parie déjà qu'il y a du NAT ou du filtrage
<br>là-dessous. Le protocole FTP, à cause de sa complexité, ne fait p as<br>toujours bon ménage avec ces deux-là.<br><br>&gt; mon architectur e reseau est la suivante:<br>&gt; - un routeur assure la connexion entre la dmz et l'internet via du nat.
<br><br>Du NAT -&gt; gagné ! ;-)<br>Sous Linux le routeur ?<br><br>&gt; - le serveur a pour ip <a href="http://192.168.25.10">192.168.25.10</a><br >&gt; - sur le serveur un iptables avec comme regles a la fin un logging de s
<br>&gt; packets non autorisés<br><br>Et comment sont gérées les conn exions de données FTP ?<br><br>&gt; - une configuration de vsftpd en mode passif pour des hotes virtuels:<br>&gt;<br>&gt; listen=YES<br>&gt; pasv_ enable=YES
<br>&gt; pasv_promiscuous=YES<br>&gt; pasv_min_port000<br>&gt; pasv_ max_port 000<br>&gt; ssl_enable=YES<br>[...]<br>&gt; seulement lorsqu e je me connectes avec mon client ftp filezilla 2.2.18 en<br>&gt; ftp sur t ls, j'obtiens le log suivant:
<br>[...]<br>&gt; Commande :&nbsp;&nbsp;&nbsp;&nbsp;PASV<br>&gt; Réponse :&nbsp;&nbsp;&nbsp;&nbsp;227 Entering Passive Mode (192,168,25,10,59,167)<b r>&gt; Commande :&nbsp;&nbsp;&nbsp;&nbsp;LIST<br>&gt; Erreur :&nbsp;&nbsp;& nbsp;&nbsp;Le canal de transfert n'a pas pu être ouvert.<br><br><br>&gt; et puis plus rien. rien dans le syslog concernant iptables, rien dans les
<br>&gt; logs de mon routeur concernant des paquets rejetés.<br><br>Exami ne la réponse du serveur à la commande PASV : l'adresse transmise<br>en vue d'établir la connexion de données est <a href="http://192.168.25 .10">192.168.25.10
</a>, l'adresse<br>privée du serveur. Il est évidemment impossible pour un client extérieur<br>de joindre le serveur à cette adresse qui n'a d e sens que sur le réseau<br>local du serveur. Comme le client cherche à se connecter à cette adresse
<br>privée non routée sur internet, il est normal que ni le routeur ni le<br>serveur ne voient rien arriver.<br><br>&gt; que puis je faire ou que me manque t'il dans ma configuration vsftpd ou ssl<br>&gt; pour que je puis se utiliser vsftpd sur ssl?
<br><br>Quand le routeur NAT est un Linux 2.4 ou ultérieur, la solution<b r>classique consiste à utiliser les modules de suivi et de NAT FTP<br>ip_ conntrack_ftp et ip_nat_ftp de Netfilter qui lisent et modifient à la<br> volée l'adresse et le port des commandes PASV et PORT dans le flux de la
<br>connexion FTP de contrôle. Mais le chiffrement par SSL/TLS de cette<b r>connexion les empêche de le faire.<br><br>Que reste-t-il ?<br><br>Premi ère option, passer vsftpd en mode FTP actif. Ainsi les connexions<br>de d onnées seront sortantes. Mais si le client est aussi derrière un NAT
<br>ou un firewall, il risque d'avoir en mode actif le même problème qu e le<br>serveur en mode passif.<br><br>L'autre solution que je connais cons iste à :<br>- limiter la plage de ports en mode passif de vsftpd (déj à fait mais la
<br>plage 10000-20000 me semble inutilement étendue) ;<br>- au niveau du routeur NAT et du firewall, autoriser en entrée depuis<br>l'extérieur e t rediriger cette plage de ports vers l'adresse privée du<br>serveur ;<br >- forcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de
<br>son adresse locale dans les réponses aux commandes PASV avec l'option <br>&quot;pasv_address&quot;. (*)<br><br>(*) Ça peut être laborieux si l'adresse en question n'est pas fixe : il<br>faut la récupérer, modifie r vsftpd.conf
et relancer vsftpd s'il<br>fonctionne en démon.<br>Opinion personnelle : ce ne devrait pas être bien difficile de permettre<br>de spécifier un nom d'hôte au lieu d'une adresse IP numérique et de<br>résoudre ce no m d'hôte à chaque commande PASV, afin de pouvoir utiliser
<br>un DNS dynamique et de ne pas avoir besoin de modifier vsftpd.conf ni d e<br>relancer vsftpd à chaque changement d'adresse.<br><br><br>--<br>Pens ez à lire la FAQ de la liste avant de poser une question :<br><a href=" http://wiki.debian.net/?DebianFrench">
http://wiki.debian.net/?DebianFrench</a><br><br>Pensez à rajouter le mot ``spam'' dans vos champs &quot;From&quot; et &quot;Reply-To:&quot;<br><br>T o UNSUBSCRIBE, email to <a href="mailto: debian.org">
</a><br>with a subject of &quot; unsubscribe&quot;. Trouble? Contact <a href="mailto: an.org"></a><br><br></blockquote></div><br>

------=_Part_18051_31289945.1137833052604--


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

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

Examine la réponse du serveur à la commande PASV : l'adresse transmise
en vue d'établir la connexion de données est 192.168.25.10
<http://192.168.25.10>, l'adresse privée du serveur. Il est évidemment
impossible pour un client extérieur de joindre le serveur à cette
adresse qui n'a de sens que sur le réseau local du serveur. Comme le
client cherche à se connecter à cette adresse privée non routée sur
internet, il est normal que ni le routeur ni le serveur ne voient rien
arriver.



oui j'ai bien vu la reponse, mais ce comportement n'est pas genant en
mode non ssl.



Probablement parce que le NAT du routeur modifie l'adresse à la volée.
Si le client voit une adresse privée, ça ne marche pas.

L'autre solution que je connais consiste à :
- limiter la plage de ports en mode passif de vsftpd (déjà fait mais
la plage 10000-20000 me semble inutilement étendue) ;



ok

en ce qui concerne ces trois points, ils sont a utiliser separement
j'imagines?



Si tu parles de limiter la plage de ports, la rediriger et forcer
l'adresse publique, il faut les appliquer ensemble.

- au niveau du routeur NAT et du firewall, autoriser en entrée depuis
l'extérieur et rediriger cette plage de ports vers l'adresse privée du
serveur ; *



heu, il faut que je fasse du filtrage sur un grand nombre de port?



Non, tu n'as pas forcément besoin d'un grand nombre de ports : ce nombre
limitera le nombre de connexions de données simultanées, il est à
choisir en fonction de la charge du serveur. Si la fréquentation est
modeste, une dizaine de ports peut être suffisante.

pas que ce soit impossible mais moins j'ai de ports d'ouverts, mieux
je me porte :)



Je comprends bien, c'est pourquoi je disais que je trouvais la plage
10000-20000 inutilement étendue : tu attends vraiment 10001 connexions
de données simultanées ?

- forcer vsftpd à annoncer l'adresse IP publique du routeur au lieu de
son adresse locale dans les réponses aux commandes PASV avec l'option
"pasv_address".





merci pour toutes ses pistes en tout cas :)



Pas de quoi, et tiens-nous au courant des résultats, parce que je n'ai
jamais essayé cette méthode, alors j'aimerais bien savoir si elle marche
en vrai. ;-)

PS: si possible évite d'envoyer du HTML et de citer l'intégralité du
message auquel tu réponds en fin de message, ça fait des messages
inutilement gros (22 ko pour le tien contre 4 ko s'il avait été en texte
brut) et c'est des coups à te faire filtrer par le robot antispam de la
liste. Je vois que tu passes par Gmail/Google, j'espère que ce truc ne
va pas devenir une plaie des listes de diffusion comme il est devenu une
plaie des newsgroups Usenet. Et pas besoin d'envoyer une copie privée,
les gens qui répondent sont généralement abonnés à la liste.


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact