Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Serveur FTP sécurisé
Envoyé par: EminoMeneko

Bonjour,

j'aurais besoin d'aide pour installer un serveur FTP sécurisé et aussi configurer les clients sous Windows.

Donc en somme je dois créer un serveur FTP qui permettra le partage de fichiers sensibles au sein d'une entreprise, ce qui signifie qu'il faut que je crypte les connexions (car en effet le défaut de FTP est qu'il n'est pas du tout sécurisé et qu'on peut obtenir les mots de passe en capturant les paquets, et à partir des paquets on peut aussi reconstituer les données -avec un peu de compétences-)

Autre point que je souhaite préciser. La personne à qui je laisse le serveur FTP aime la cliquette sous Windows donc l'option Debian sans Desktop passe à la trappe et j'ai choisi une Xubuntu pour qu'il y ait une interface graphique.
Ensuite il faudrait un moyen d'ajouter et supprimer des utilisateurs via une interface graphique quelconque pourvu que ça marche. smiling smiley

Pour le ftp sécurisé j'ai choisi vsftpd mais je ne comprend pas très bien apparemment.
J'ai essayé de suivre deux tutos qui sont:
[opensource.jegalere.fr]
et
[doc.ubuntu-fr.org]

Je m'en suis surtout tenu au second didacticiel pour installer tout ça. et au final je me suis retrouvé devant un refus de connexion à partir de mon client windows qui m'affichait la ligne
500 OOPS SSL: Cannot load the RSA private key
J'aimerais qu'on m'explique comment faire ? Comment gérer mes utilisateurs ? comment gérer les répertoires pour chaque compte ?
Perce que là je ne suis plus très sur de moi.
Voyant celà j'ai décidé de procéder à une suppression complète du paquet vsftpd pour recommencer une installation mais en étudiant un peu la doc de vsftpd qui a mon goût est quand même un peu légère.
Pour ceux qui voudraient jeter un coup d'œil je donne le lien ci-dessous.
[vsftpd.beasts.org]

Je vous présente mes souhaits pour le serveur FTP.

Il doit être sécurisé donc on créera un certificat pour utiliser SSL. Ou bien est-ce seulement pour authentifier le serveur ?
Je souhaite que les utilisateurs soient spécifiques au serveur FTP et on entre donc dans le cadre d'utilisateurs virtuels.
J'aimerais leur donner un répertoire racine différent avec éventuellement le droit sur d'autres répertoires.
Il faudra un répertoire commun pour le partage de certains fichiers.
Je voudrais définir les droits sur chacun des répertoires selon les utilisateurs. Comment faire ?
Pas d'utilisateur anonyme bien entendu. smiling smiley

Après lecture de la doc voilà à peu près à quoi devrait ressembler mon fichier de configuration. Certaines options ont été placées avec leurs valeurs par défaut mais c'est pour les avoir sous la main en cas de problème.

# Option intéressantes pour le fichier vsftpd.conf

# Booléen

dual_log_enable=YES
guest_enable=YES
hide_ide=YES
log_ftp_protocol=YES
ssl_enable=YES
ssl_sslv2=YES
ssl_sslv3=YES
ssl_tlsv1=YES
use_localtime=YES
xferlog_enable=YES
xferlog_std_format=YES

# Numériques

accept_timeout=60
anon_umask=077

# Chaines

banner_file=/etc/vsftpd/motd.txt
guest_username=ftp
rsa_cert_file=/usr/share/certs/vsftpd.pem
user_config_dir=/etc/vsftpd/users
user_sub_token
user_list_file
vsftpd_log_file=/var/log/vsftpd.log
xfer_file=/var/log/xferlog
Est-ce qu'au niveau du fichier de configuration ça vous semble cohérent/suffisant ?

Et la procédure ça serait :
réinstallation du paquet après suppression complète (déjà fait)
sudo apt-get install vsftpd
création du dossier vsftpd
sudo mkdir /etc/vsftpd
Sauvegarde des fichiers
sudo cp /etc/vsftpd.conf /etc/vsftpd/vsftpd.conf.{$DATE_FORMATEE} (ou bak, old ou ce qu'on veut)
Création de la base de donnée avec les utilisateurs
sudo db4.6_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
J'ai utilisé la version 4.6 au lieu de 4.4 pour les paquet.
Sécurisation du fichier DB
sudo chmod 600 /etc/vsftpd/login.db
Création du certificat
Écriture du fichier de configuration
Relancer le serveur
sudo /etc/init.d/vsftpd reload

Et au niveau du client que faire ?
Filezilla semble gérer mes connexions SSL mais j'obtiens le message évoqué plus haut.
Quand j'ai fait mon TP sur SSH à l'école on copiait un fichier de clé sur les clients Linux pour qu'ils soient autorisés à se connecter et je me demandais si le problème n'était pas similaire mais comment charger la clé pour FileZilla ? Je n'ai pas trouvé d'infos dessus.
Ma procédure d'installation est bonne ? (J'ai été un peu vite sur la fin parce que j'ai plus trop le temps faut que j'aille chercher une machine mais je reprend dès que je reviens)
En tout cas j'espère de tout cœur que quelqu'un pourra m'aider à comprendre comment ça marche.
Sous Windows j'aurais installé ça en trois cliques mais je fais ça pour le challenge aussi un peu et mon serveur doit être sous Linux.
Voilà, à tout à l'heure j'espère et merci d'avance. smiling smiley

NEKOAITI

Poste le Thursday 7 August 2008 10:31:41
Répondre     Citer    
Re: Serveur FTP sécurisé

Citation
EminoMeneko
. La personne à qui je laisse le serveur FTP aime la cliquette sous Windows donc l'option Debian sans Desktop passe à la trappe

A mon avis, le plus sage est de faire former cette personne. Administrer un serveur FTP sans connaitre Linux (ses concepts, et aussi sa ligne de commandes) me parait suicidaire (notamment d'un point de vue sécurité).

Autrement, tu peux convaincre ton employeur de sous-traiter (à une SSLL compétente) l'administration de ce serveur.

Mais transmettre à quelqu'un qui ne connait qu'une interface graphique, sans connaitre les principes et les commandes d'Unix, me parait pas sérieux et dangereusement illusoire.

Linux est libre, pas gratuit!

Et la formation ou la compétence linuxienne coute toujours moins cher que l'accident qu'il évite. C'est comme les sauvegardes, la ceinture de sécurité en voiture, ou le casque à vélo
[v](je suis tombé hier à vélo, je crois que mon casque m'a sauvé!)[/v].

----

Basile STARYNKEVITCH

Membre de l'APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!

Projet logiciel libre: RefPerSys

Poste le Thursday 7 August 2008 10:58:32
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: EminoMeneko

C'est gentil mais ça ne m'aide pas à me former moi-même (vu qu'apparemment j'ai un léger manque au niveau de la configuration d'un vsftpd sécurisé) et comme je devrais sortir de l'école après ma soutenance mi-septembre j'aimerais bien acquérir cette compétence là et la personne dont je parlais c'est mon maitre de stage en fait qui est plutôt orienté Windows (malgré ses débuts dans UNIX il y'a environ 15/20 ans de ça si j'ai bien compris). Donc je pense qu'il connait un peu même s'il a pu oublier pas mal de chose et qu'on peut présumer qu'il n'est plus très à jour il est du métier et il le connait. winking smiley
Bon en tout cas moi je pense pouvoir m'occuper de ce serveur dès a présent et je vais faire mon possible en attendant que quelqu'un puisse m'aider.
Bonne journée. smiling smiley
Si je parviens à faire tout ça je pense réécrire un tuto avec un véritable pas à pas et des explications.
Je suis conscient que j'en ai peut-être un peu trop demandé pour vsftpd qui semble avoir un principe de fonctionnement un peu particulier par rapport à ce qu'on peut trouver sur FileZilla Server par exemple.

A l'attaque !

Et bonne journée ! smiling smiley

NEKOAITI

Poste le Thursday 7 August 2008 11:12:49
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: lolotux

/usr/share/certs/vsftpd.pem existe t'il ?


Software is like sex !
It's better when it's Free !

Poste le Thursday 7 August 2008 12:06:43
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: EminoMeneko

Oui mais en fait je me suis inscrit sur le forum de FileZilla et un membre de la Team m'a dit que FileZilla supporte SSL mais pas l'authentification par certificats donc faudrait que je zappe la création d'un certificat non ?
Le souci c'est que selon d'autres recherches il faut que la clé privée ET le certificat soient dans le même fichier.
Je vais quand même tester. Je ne suis pas particulièrement intéressé pour authentifier mon propre serveur mais juste sécuriser les transferts de donnée donc j'essai ça cette après-midi.
Je reprend tout de zéro (et par précaution je vais commencer par une nouvelle suppression complète de vsftpd comme ça les fichiers de config partirons à la trappe et on pourra reprendre avec un nouveau né).
Bien entendu le fichier vsftpd.pem aété créé selon les instructions du tuto.
A tout à l'heure ! winking smiley

NEKOAITI

Poste le Thursday 7 August 2008 12:32:39
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: EminoMeneko

Ah oui !
Comment on fait pour écrire un tuto ici ? (si ça devait arriver).

NEKOAITI

Poste le Thursday 7 August 2008 12:33:40
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: AlSim

Le site est un wiki donc tu peux éditer les pages directement. Elles ne sont pas mises à jour automatiquement (modération a priori).

Ça va changer dans pas longtemps il parait, ceci dit smiling smiley

[catwell.info]

Poste le Thursday 7 August 2008 18:36:34
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: EminoMeneko

OK mais je connais assez mal la syntaxe wiki. et si la page n'existe pas et qu'il faut en recréer une nouvelle, c'est possible ?
Bon j'ai un peu plus compris le truc j'y retourne. ^^

NEKOAITI

Poste le Friday 8 August 2008 08:28:23
Répondre     Citer    
Re: Serveur FTP sécurisé
Envoyé par: EminoMeneko

Bonjour,
est-ce que quelqu'un aurait la gentillesse de m'expliquer comment gérer les droits sur les dossiers de mes utilisateurs ftp...
Je m'explique :

admettons que j'ai l'arborescence suivante :

/pub
-> uploads
-> documents
-> groupeA
-> groupeB

et deux utilisateurs virtuels userA et userB.
userA peut tout faire (télécharger, créer des dossiers, envoyer vers le FTP, etc...) sauf sur le dossier groupeB
User B ne peut que télécharger et n'a les droits d'upload que pour le dossiers uploads.

J'ai tout recommencé depuis le début et je peut créer des comptes utilisateurs comme je le veut, j'ai pu personnaliser certains paramètres pour chacun de mes utilisateurs et il se trouve qu'ils n'ont que le droit de télécharger malgré leur configuration personnelle. sad smiley

Alors comment ça marche ?
On donne des droits pas défaut et ensuite ? Comment personnaliser les droits sur certains dossiers ?
Je vous colle mes fichiers de configuration actuels...

vsftpd.conf
# Configuration minimaliste
listen=YES
anonymous_enable=NO
local_enable=YES
virtual_use_local_privs=YES
write_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
guest_enable=YES
guest_username=ftpvirtual
user_sub_token=$USER
local_root=/home/ftpvirtual/$USER
chroot_local_user=YES
hide_ids=YES

# Permettre la configuration des utilisateurs virtuels
user_config_dir=/etc/vsftpd/users

# Configuration du mode passif
pasv_enable=YES
pasv_promiscuous=NO
accept_timeout=60
pasv_min_port=10020
pasv_max_port=10121
#passv_address=192.168.1.XXX

# Utilisation de SSL et TLS
ssl_enable=NO
ssl_sslv2=YES
ssl_sslv3=YES
ssl_tlsv1=YES

Un des fichiers de personnalisation des utilisateurs...
# Fichier issue de la page suivante
# [www.paradoxal.org]
# donne les droits de lecture
download_enable=YES
anon_world_readable_only=NO

# donne les droits d'écriture
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES

# donne le droit de renommer de supprimer
anon_other_write_enable=YES

#donne le droit de faire des chmod
chmod_enable=YES
virtual_use_local_privs=YES

#affiche les fichier cachés
force_dot_files=YES

# Répertoire d'accueil
local_root=/home/ftpvirtual/pub

# droits des fichiers créés
anon_umask=002
En attendant vos réponses je vais essayer de faire marcher une connexion sécurisée (SSL)... ^^

NEKOAITI

Poste le Wednesday 20 August 2008 08:26:06
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Serveur FTP sécurisé
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons