FTP setup

Updated 7 Mars 2019

FTP

Introduction

FTP, ou Protocole de transfert de fichiers est un protocole réseau conçu pour transférer des fichiers dans des réseaux informatiques. FTP permet de se connecter aux serveurs FTP, d'afficher le contenu des répertoires et de télécharger des fichiers depuis et vers le serveur. Le serveur de messagerie peut être configuré par le biais des outils Calculate Utilities, fournis par sys-apps/calculate-server. User and group accounts are stored on the OpenLDAP server, ProFTPD being used as an FTP server. Tous les logiciels nécessaires sont inclus dans [Calculate Directory Server] (cds).

LDAP configuration

Calculate Utilities se réfèrent au serveur OpenLDAP pour stocker et gérer les utilisateurs, les groupes et les ordinateurs. Configurez le service LDAP conformément au manuel.

Configuration d'un serveur FTP

Avant de configurer le serveur FTP, configurez le service de stockage des comptes pour les utilisateurs Unix:

cl-setup unix
* ATTENTION : L'exécution de ce programme modifie les fichiers de configuration et la base de données LDAP. Si vous voulez continuer, entrez 'oui', sinon entrez 'non' : oui  

* Ajouté le fichier ldif.... [ok] 
* Service Unix configuré .... [ok]

Pour configurer le serveur FTP, exécutez :

cl-setup ftp
* ATTENTION : L'exécution de ce programme modifie les fichiers de configuration et la base de données LDAP. Si vous voulez continuer, entrez 'oui', sinon entrez 'non' : oui 

* Ajouté le fichier ldif.... [ok] 
* Lancer Proftpd .... [ok]
* Service FTP configuré .... [ok]

Une fois le processus de configuration terminé, le serveur FTP sera lancé avec un accès activé pour anonyme. Deux répertoires, /tmp et /pub, seront créés sur le serveur FTP.

Pour vous connecter au serveur FTP ftp.exmpale.org~, ouvrez un navigateur qui supporte ce protocole et tapez ~ftp://ftp.example.org dans la barre d'adresse.

Comptes

Les comptes sont utilisés pour l'accès autorisé au serveur FTP. Un répertoire personnel peut être configuré pour chacun d'entre eux et, lorsqu'il est utilisé en conjonction avec un service Unix, les privilèges d'accès peuvent être configurés au cas par cas.

Pour ajouter un compte, utilisez la commande `cl-useradd'. Pour créer un compte nommé user1 et lui attribuer un mot de passe, exécutez :

cl-useradd -p user1 ftp

Pour créer un compte nommé user1 avec répertoire home et lui attribuer un mot de passe, exécutez :

cl-useradd -p -m user1 ftp

Le répertoire personnel par défaut sera situé dans le répertoire racine FTP ~ ~ /pub/users/[HTML_REMOVED] ~~. Seul le propriétaire a accès à ce répertoire.

Pour créer un compte nommé user1 avec un répertoire personnel spécifique et lui attribuer un mot de passe, exécutez :

cl-useradd -p -m -d pub/user1 user1 ftp

Dans ce cas, le répertoire d'origine sera à l'emplacement spécifié par rapport au répertoire racine du service FTP.

Pour changer le mot de passe d'un utilisateur, utilisez la commande `cl-passwd' :

cl-passwd user1 ftp

Pour supprimer un compte, utilisez la commande `cl-userdel'. Notez que cela supprime également son répertoire d'origine.

cl-userdel user1 ftp

Note

Lorsque vous créez un compte FTP, le compte Unix est créé automatiquement. Lorsque vous supprimez un compte FTP, le compte Unix est conservé. 

Gestion de l'accès aux annuaires

Les privilèges d'accès sont des attributs d'un fichier ou d'un répertoire qui indiquent au serveur qui peut faire quoi avec ce fichier ou ce répertoire.

Les fichiers ont deux propriétaires

Les fichiers ont deux propriétaires : un utilisateur ( utilisateur propriétaire ) et un groupe ( groupe propriétaire ). Les privilèges d'accès sont spécifiques au fichier. Ils peuvent être divisés en trois groupes : Accès pour l'utilisateur propriétaire du fichier ( propriétaire ). Accès pour le groupe qui possède le fichier ( ). Accès pour le groupe qui possède le fichier (groupe). Accès pour les autres utilisateurs (). Accès pour les autres utilisateurs (autres). ).

Accès pour l'utilisateur propriétaire du fichier ( propriétaire ). Accès pour le groupe qui possède le fichier ( ). Accès pour le groupe qui possède le fichier (groupe). Accès pour les autres utilisateurs (). Accès pour les autres utilisateurs (autres). ).

Pour chaque catégorie, trois types d'accès sont établis : ( x ) - le droit d'exécuter le fichier / d'entrer dans le répertoire, ( r ) - le droit de lire le fichier ou le répertoire, ( w ) - le droit de changer (éditer) le fichier, supprimer et créer des fichiers dans le répertoire.

Pour définir l'accès aux répertoires, le service FTP communique avec le service Unix : chaque compte FTP est alors associé au compte Unix du même nom. Ainsi, un utilisateur qui se connecte au serveur FTP a accès au fichier, à condition d'en être le propriétaire ou d'appartenir au groupe propriétaire du fichier. Si l'utilisateur n'est pas propriétaire du fichier et n'appartient pas au groupe qui possède le fichier, l'accès est déterminé par la règle autres . En cas d'accès anonyme au FTP, les privilèges sont également définis par autres.

Les privilèges sont définis sur le serveur à l'aide de la commande chmod.

Par exemple, pour définir les droits d'accès comme user=all, group=read/write et other=read only, exécutez ce qui suit :

chmod u=rwx,g=rw,o=r file

Pour faire pubwriter le groupe propriétaire, exécutez :

chgrp pubwriter pub

Pour permettre au groupe d'écrire dans le répertoire pub, exécutez :

chmod g+w pub

Gestion des groupes Unix

Comme FTP est entièrement intégré au service Unix, les groupes d'utilisateurs sont gérés par le service Unix.

Pour ajouter le groupe pubwriter au service Unix, exécutez :

cl-groupadd pubwriter unix

Pour supprimer le groupe test du service Unix, exécutez :

cl-groupdel test unix

Deux outils permettent d'ajouter et de supprimer des comptes en toute facilité : cl-usermod et cl-groupmod.

Pour ajouter un utilisateur guest to group pubwriter, exécutez :

cl-usermod -a pubwriter guest unix

Pour déplacer l'utilisateur guest to group pubwriter, exécutez :

cl-usermod -G pubwriter guest unix

Pour déplacer l'utilisateur guest from group pubwriter, exécutez :

cl-groupmod -d guest1 pubwriter unix