Jump to content

Archived

This topic is now archived and is closed to further replies.

Pepours

Vsftpd:passive mode

Recommended Posts

Bonjour tout le monde.Me revoila avec mes soucis :pleure:

Quand un pote veut se connecter a mon ftp avec gftp ca lui met ca

Connecté sur pep.podzone.org:21
220 Welcome to my FTP service.
USER xxx
331 Please specify the password.
PASS xxxx
230 Login successful.
SYST
215 UNIX Type: L8
TYPE I
200 Switching to Binary mode.
PWD
257 "/"
Chargement du listing du répertoire / depuis le serveur (LC_TIME=fr_FR.UTF-8)
PASV
227 Entering Passive Mode (192,168,1,12,174,82)

Il arrive pas à voir mes fichiers qui sont dans le repertoire,est-ce une simple errreur de permission sur le dossier?

voici mon vsftpd.conf

listen=YES
#listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=0022
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
listen_port=21
#chown_uploads=YES
#chown_username=whoever
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
ftpd_banner=Welcome to my FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES

# Debian customization
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/vsftpd.pem

J'ai cherché dans google surement mal mais je n'ai pas trouvé comment eradiqué ce probleme mais aussi dans le forum personne n'a d'erreurs de ce genre?

Merci de votre aide.

Share this post


Link to post
Share on other sites

non fin si mais iptable est pas configuré.

J'ai un firewall matériel la livebox,mais j'ai bien ouvert les ports en tcp et en udp mais apparemment ca va pas mieu en mettant l'udp.

Share this post


Link to post
Share on other sites

Alors j'ai trouvé pourquoi ca marche pas avec gftp.

Il faut aller dans ftp-->option-->ftp-->décocher transfert de fichier en mode passif.

Mais le probleme c'est qu'il arrive pas à y acceder par le navigateur.

Share this post


Link to post
Share on other sites
PASV

227 Entering Passive Mode (192,168,1,12,174,82) [/code]

Il arrive pas à voir mes fichiers qui sont dans le repertoire,est-ce une simple errreur de permission sur le dossier?

non

Va voir sur internet ce qu'est le mode passif et ce qui se passe quand la réponse est "192.168.1.12"

Share this post


Link to post
Share on other sites

mode passif

Le mode passif, tout comme le mode actif, est engendré par l'application client FTP. Lors d'une demande de données auprès du serveur, le client FTP indique qu'il souhaite accéder aux données en mode passif et le serveur fournit une adresse IP et un port aléatoire, non-privilégié (supérieur à 1024) sur le serveur. Le client se connecte alors à ce port sur le serveur afin de télécharger les informations demandées.

Alors que le mode passif résout les problèmes d'interférence du pare-feu côté client avec des connexions aux données, il peut rendre plus complexe l'administration du pare-feu côté serveur. En limitant dans le fichier de configuration du serveur FTP, l'éventail des ports non-privilégiés disponibles pour des connexions passives, il est possible de restreindre le nombre de ports ouverts sur un serveur, ce qui permet également de simplifier la création de règles de pare-feu pour le serveur. Reportez-vous à la Section 15.5.8 pour obtenir de plus amples informations sur la manière de limiter le nombre de ports passifs.

C'est bien ca le probleme est que le port est alétoire et que moi il y a un juste le port 21 d'ouvert.

Mais alors j'ai bien definit un port dans mon vsftpd.conf

listen_port=21

Ou bien j'ai pas bien compris :roule:

EDIT:j'ai un peu cherché j'ai rajouter ca (pasv_enable=NO) mais bon j'ai personne pour tester ,comment je peux faire pour tester tout seul?

Share this post


Link to post
Share on other sites

ajoute pasv_address=ton-adresse_IP_publique à ton vsftpd.conf et le transfert en mode passif devrait fonctionner.

Share this post


Link to post
Share on other sites

Oui mais mon ip est dynamique.

Je n'ai pas plus vérifié si ca fonctionne personne pour tester de l'exterieur.

N'y a t'il pas un autre moyen de résoudre ce probleme?

A part passer en mode actif qui est moins sécurisé que le passif.

Share this post


Link to post
Share on other sites

cherche sur le net, y'a des gens qui ont fait des scripts pour récupérer régulièrement leur adresse dyndns et l'injecter dans la conf du serveur.

exemple pour extraire l'IP :

ifconfig eth0 | grep inet | cut -d ':' -f2 | cut -d ' ' -f1

HTH

Share this post


Link to post
Share on other sites

J'ai pu essayer de l'exterieur par quelqu'un mais le souci est que ca marche en mettant pasv_adress=ip_publique.

Il arrive pas à se connecter depuis un navigateur.

Share this post


Link to post
Share on other sites

Une autre question aussi:le format bizarre du log ci dessus avant il etait plus lisible.

A force de toucher à la config .... :transpi:

Sun May  7 17:17:03 2006 1 xxx.xxx.xxx.xxx 0 / b _ o r ftp ftp 0 * i

Share this post


Link to post
Share on other sites

Voici la réponse :

Soit que tu configures correctement le mode passif (PASV) ou le mode actif (PORT) ou les 2 !

Il est effectivement préférable que le mode passif (PASV) soit celui que tu utiliseras car il permet de mieux fonctionner pour la majorité des logiciels clients.

Ce qu'il faut savoir:

Le mode PASV utilise le port TCP:21 pour l'ouverture de connexion (tout comme le mode PORT).

Le mode PASV utilise une gamme de ports TCP pour le transfert des données. Par défaut ce sont les ports 1024 à 655535 sur la plupart des serveurs FTP. Contrairement, le mode PORT utilise le port TCP:20 pour le transfert des données.

Le mode PASV doit connaître l'adresse IP Internet valide (celle de ta Freebox) pour fonctionner, car il doit savoir comment transmettre les données au client. Si ta Freebox est dynamique et que l'adresse ne change pas trop souvent, tu peux simplement changer la config dans ton fichier vsftpd.conf et recharger le service à chaque fois. Si elle change fréquemment, tu peux te créer un script qui récupère l'adresse IP en question et la change automatiquement dans vsftpd.conf puis recharge le service.

Pour la gamme de ports, il faut comprendre que la gamme de ports doit être redirigé au complet de la Freebox vers ton serveur... mais faire la redirection des ports 1024 à 65535 te causerait quelques inconvénients. Ne t'en fait pas, il y a une solution :-D Il est possible de spécifier dans vsftpd.conf la gamme de ports à utiliser. Tu peux simplement spécifier le port minimum et maximum à utiliser. Il est préférable de spécifier une plage qui n'est pas utilisée par d'autres services de ta machine. Exemple: TCP:40000 à TCP:41000.

(Je te laisse chercher un peut sur comment ajouter ces valeurs, mais le tout est très bien écrit sur le site officiel de vsftpd dans la section de l'aide HTML, donc tu vas trouver facilement la réponse !)

Il faut ensuite configurer ta Freebox pour que cette même plage de ports (TCP:40000 à TCP:41000) soit redirigés vers l'adresse IP local de ton serveur FTP.

--------------------------------------------------------------------------------

Si tu veux, tu peux également utiliser le mode PORT (ancienne technologie) en même temps. Il faut simplement ouvrir les ports 21 et 20 sur la Freebox et les rediriger vers ton serveur FTP. Mais comme je disais c'est la vieille technologie et la plupart des nouveau logiciels clients sont tous en PASV par défaut.

--------------------------------------------------------------------------------

Une autre question aussi:le format bizarre du log ci dessus avant il etait plus lisible.

A force de toucher à la config .... :troll:

Sun May  7 17:17:03 2006 1 xxx.xxx.xxx.xxx 0 / b _ o r ftp ftp 0 * i

C'est le format LOG de WUFTPD. C'est un format "universel" XFERLOG. Cet option a été ajouté afin de créer des LOG qui peuvent facilement générer des rapports avec des outils comme Webalizer.

Share this post


Link to post
Share on other sites
Pour la gamme de ports, il faut comprendre que la gamme de ports doit être redirigé au complet de la Freebox vers ton serveur... mais faire la redirection des ports 1024 à 65535 te causerait quelques inconvénients. Ne t'en fait pas, il y a une solution :troll: Il est possible de spécifier dans vsftpd.conf la gamme de ports à utiliser. Tu peux simplement spécifier le port minimum et maximum à utiliser. Il est préférable de spécifier une plage qui n'est pas utilisée par d'autres services de ta machine. Exemple: TCP:40000 à TCP:41000.

(Je te laisse chercher un peut sur comment ajouter ces valeurs, mais le tout est très bien écrit sur le site officiel de vsftpd dans la section de l'aide HTML, donc tu vas trouver facilement la réponse !)

Il faut ensuite configurer ta Freebox pour que cette même plage de ports (TCP:40000 à TCP:41000) soit redirigés vers l'adresse IP local de ton serveur FTP.

c'est là que ça commence à devenir vraiment intéressant d'avoir une passerelle. Le module ip_nat_ftp gère le suivi des ports attribués dynamiquement.

Share this post


Link to post
Share on other sites

J'ai rajouté cela mais ca ne fonctionnait pas depuis un navigateur web.

pasv_enable =YES
pasv_min_port =20
pasv_max_port =21
pasv_adress=xxx.xxx.xxx.xxx

Est ce que je dois laisser connect_from_port_20=YES ou je dois le virer?

Et j'ai pas compris à quoi servait la fonction tcp_wrappers ;) si quelqu'un pourrait m'expliquer ca serait sympa ;)

Comment peut-on changer le format du log?J'avait un beau log avant lisible :-D

Je le montrerai plus tard je suis pas sur mon pc la. :troll:

Share this post


Link to post
Share on other sites

pasv_adress=xxx.xxx.xxx.xxx

il faut deux 'd' à address, c'est de l'anglais.

Comment peut-on changer le format du log?J'avait un beau log avant lisible :troll:

je vois que tu as :

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

dans ta conf, je chercherais de ce côté-là.

Share this post


Link to post
Share on other sites

il faut deux 'd' à address, c'est de l'anglais.

:jesquate: désolé pour la faute mais je ne l'ai pas fait dans vsftpd.conf.

je vois que tu as :

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

dans ta conf, je chercherais de ce côté-là.

Je viens de re-regarder le man page de vsftpd on aurait donc un xferlog_std_format =NO.

Est ce que je dois laisser connect_from_port_20=YES ou je dois le virer?

Share this post


Link to post
Share on other sites

:D

Le truc quand je change mes configs des fois vsftpd ne demarre plus j'ai beau mettre vsftpd start 15x il me met started!

Share this post


Link to post
Share on other sites

Pareil mais j'ai trouvé pourquoi quand j'enleve pasv_address etc...il redémarre.

Fin bon sans rien touché pratiquement au début cela marchait.

Share this post


Link to post
Share on other sites

pasv_enable =YES

pasv_min_port =40000

pasv_max_port =41000

pasv_address=xxx.xxx.xxx.xxx (= à l'adresse IP côté Internet de ta Freebox).

connect_from_port_20=YES

Tu peux faire fonctionner sans problème les 2 modes (PORT et PASV), mais tu ne peux pas utiliser le port minimum pour le PASV à 20 et le maximum à 21. Il faut que ce soit absolument des ports plus élevés que 1023.

Il faut également que la largeur entre le minimum et le maximum soit plus élevé que 2 (20 à 21) car le protocole nécessite d'ouvrir plusieurs ports simultanément. Avec 10 ports ça marche bien si c'est du fichier par fichier, mais si tu veux transférer plusieurs fichiers à la fois je te conseille d'ouvrir au moins 100 ports parce que tu vas avoir des problèmes de pertes de connexion.

Share this post


Link to post
Share on other sites

Sinon sur la box y a juste besoin d'ouvrir les ports en Tcp?

Quand quelq'un essaye d'y acceder il lui met le dossier ftp://..... est en lecture seule?

Comment résoudre ce problème?

Share this post


Link to post
Share on other sites

J'ai bel et bien un probleme avec vsftpd ,j'ai fait un test ici.

test ftp

Et résultat ca me met ceci:

* About to connect() to xemple.dyndns.org port 21
* Trying xxx.xxx.xxx.xxx... connected
* Connected to exemple.dyndns.org (xxx.xxx.xxx.xxx) port 21
< 220 Bienvenue sur mon ftp.

> USER ftp
< 331 Please specify the password.

> PASS *****
< 230 Login successful.

> PWD
< 257 "/"
* Entry path is '/'

> CLNT Testing from http://www.g6ftpserver.com/ftptest from IP xxx.xxx.xxx.xxx
< 500 Unknown command.
* QUOT command failed with 500
* Connection #0 to host exemple.dyndns.org left intact

Pourtant j'ai bien indiqué mon adresse internet a vsftpd.conf par pasv_address=xxx.xxx.xxx.xxx

Je ne vois pas le probleme.

Share this post


Link to post
Share on other sites

Pour avoir plus de détail sur le problème, tu peux tester avec un client Telnet.

Le code à écrire en rouge

telnet ftp.serveur.com 21

220 Bienvenue sur mon serveur

Entrée

530 Please login with USER and PASS.

USER tonuser

331 Please specify the password.

PASS tonpassword

230 Login successful.

help

214-The following commands are recognized...

STAT

....

PWD

....

QUIT

Si tu es capable de te logger, donc tu entre en communication avec VSFTPD, si ensuite tu ne peux pas naviguer les ficchiers c'est probablement une question de config des droits et umask.

Share this post


Link to post
Share on other sites

Apparement mon ftp marche qu'entre deux livebox les autres n'arrivent pas à y acceder je ne sais pas si c'est juste une coïncidences?!

J'ai changé de serveur ftp et mis pure-ftpd mais aucun changement.

Je dois passer par test ftp autrement ca ne marche pas.

J'ai pas mis de password si quelqu'un peux essayer ftp://pep.podzone.org/

Share this post


Link to post
Share on other sites

×
×
  • Create New...