GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer ProFTPD sur Debian Wheezy et Ubuntu 14.04

Ce document décrit comment installer et configurer ProFTPD sur un serveur Debian Wheezy, il fonctionnera également sur Ubuntu 14.04. ProFTPD est un démon FTP pour les systèmes d'exploitation Unix et de type Unix. ProFTPD est développé, publié et distribué sous la licence publique GNU (GPL), qui l'établit essentiellement comme un logiciel libre, ce qui signifie qu'il peut être vendu, concédé sous licence et autrement manipulé de la manière souhaitée tant que le code source complet et complet accompagne tout ProFTPD regroupe ou est mis à disposition par tous les sites qui distribuent des binaires précompilés. Le logiciel peut être modifié par n'importe qui à tout moment, tant que toutes les œuvres dérivées sont également sous licence publique GNU.

Ce guide fonctionnera à la fois pour les serveurs Ubuntu et Debian.

1 Remarque préliminaire

Ce didacticiel est basé sur un serveur Debian 7.6, vous devez donc configurer une installation de base du serveur Debian 7.6 avant de poursuivre ce didacticiel. Le système doit avoir une adresse IP statique. J'utilise 192.168.0.100 comme adresse IP dans ce tutoriel et server1.example.com comme nom d'hôte.

2 Installer ProFTPD

2.1 Installation :

Nous allons d'abord installer ProFTPD et OpenSSL comme suit :

apt-get install proftpd openssl

Il vous demandera une question sur ProFTPD, sélectionnez autonome et appuyez sur OK.

Nous pouvons vérifier la version de ProFTPD comme suit :

proftpd -v
[email protected] :~# proftpd -v
ProFTPD Version 1.3.4a
[email protected] :~#

2.2 Création d'utilisateurs ProFTPD

Pour cela je vais créer un groupe ftpgroup et l'utilisateur srijan pour ProFTPD. Je vais restreindre l'utilisateur srijan avec le répertoire personnel comme /ftpshare

addgroup ftpgroup
adduser srijan -shell /bin/false -home /ftpshare
[email protected]:~# adduser srijan -shell /bin/false -home /ftpshare
Adding user `srijan' ...
Adding new group `srijan' (1002) ...
Adding new user `srijan' (1001) with group `srijan' ...
Creating home directory `/ftpshare' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: <--ftppassword
Retype new UNIX password: <--ftppassword
passwd: password updated successfully
Changing the user information for srijan
Enter the new value, or press ENTER for the default<--ENTER
    Full Name []: <--ENTER
    Room Number []: <--ENTER
    Work Phone []: <--ENTER
    Home Phone []: <--ENTER
    Other []: <--ENTER
Is the information correct? [Y/n] <--Y
[email protected]:~#

Nous allons maintenant ajouter l'utilisateur srijan au ftpgroup comme suit :

adduser srijan ftpgroup

Ensuite, nous devons protéger le répertoire contre la suppression et le renommage de son contenu par n'importe quel utilisateur, nous allons donc modifier les autorisations du répertoire comme suit :

chmod -R 1777 /ftpshare/

Ensuite, nous devons configurer ProFTPD comme suit :

nano /etc/proftpd/proftpd.conf

Apportez des modifications comme indiqué

[...]
UseIPv6 off
[...]
<Global>
RootLogin off RequireValidShell off </Global> DefaultRoot ~ <Limit LOGIN> DenyGroup !ftpgroup </Limit>

Je n'utilise pas IPV6 donc je suis parti ci-dessus, je désactive la connexion de l'utilisateur root avec ProFTPD par RootLogon off. DefaultRoot est ajouté pour restreindre l'accès des utilisateurs à leurs dossiers personnels uniquement. DenyGroup n'autorisera que les utilisateurs de ftpgroup à accéder au serveur ftp, toutes les autres connexions seront rejetées.

Redémarrez le service en tant que :

service proftpd restart

Parfois, vous obtiendrez une erreur lors du redémarrage du service, comme

[email protected] :~# service proftpd restart
[ ok ] Arrêt du serveur ftp :proftpd.
[....] Démarrage du serveur ftp :proftpdserver1 proftpd[6052] :mod_tls_memcache/0.1 :avis :impossible pour enregistrer le cache de session SSL 'memcache' :la prise en charge de Memcache n'est pas activée
. d'accord
[e-mail protégé] :~#

Nous pouvons surmonter cette erreur en modifiant le fichier /etc/proftpd/modules.conf et en commentant la ligne comme suit :

nano /etc/proftpd/modules.conf
[...]
#LoadModule mod_tls_memcache.c
[...]

Il triera l'erreur.

Maintenant, nous pouvons nous connecter avec l'utilisateur srijan et le mot de passe à ftp://192.168.0.100



3 Activation de TLS dans ProFTPD

Pour activer TLS dans ProFTPD, ouvrez /etc/proftpd/proftpd.conf

nano /etc/proftpd/proftpd.conf

Effectuez les modifications comme suit et décommentez la ligne :

[...]
Include /etc/proftpd/tls.conf
[...]

Nous allons maintenant effectuer la sauvegarde du fichier d'origine, puis modifier le fichier comme indiqué ci-dessous :

cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig
cat /dev/null > /etc/proftpd/tls.conf
nano /etc/proftpd/tls.conf

Donnez les entrées comme indiqué

<IfModule mod_tls.c>
TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on
</IfModule>

Pour utiliser TLS, nous devons créer un certificat SSL. Je vais le créer dans /etc/proftpd/ssl, donc je crée d'abord ce répertoire :

mkdir /etc/proftpd/ssl

Ensuite, nous pouvons générer le certificat SSL comme suit :

openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

Nom du pays (code à 2 lettres) [AU] : <-- Saisissez le nom de votre pays (par exemple, "DE").
Nom de l'état ou de la province (nom complet) [Some-State] : <-- Saisissez le nom de votre état ou de votre province.
Nom de la localité (par exemple, ville) [] : <-- Entrez votre ville.
Nom de l'organisation (par exemple, société) [Internet Widgits Pty Ltd] : <-- Saisissez le nom de votre organisation (par exemple, le nom de votre société).
Nom de l'unité organisationnelle (par exemple, section) [] : <-- Saisissez le nom de votre unité organisationnelle (par exemple, "Service informatique").
Nom commun (par exemple, VOTRE nom) [] : <-- Saisissez le nom de domaine complet du système (par exemple, "server1.example.com").
Adresse e-mail [] : <-- Saisissez votre adresse e-mail.

Maintenant, pour des raisons de sécurité, je vais rendre les certificats lisibles uniquement comme suit :

chmod 0440 /etc/proftpd/ssl/proftpd.key.pem

Redémarrez enfin le service ProFTPD comme suit :

service proftpd restart

Nous pouvons nous connecter au serveur ProFTPD avec le logiciel FileZilla. Vous devez avoir FileZilla installé sur le client pour vous connecter au serveur. Ouvrez FileZilla et donnez-lui les détails comme suit :

Les détails seront

Hôte =192.168.0.100
Protocole =FTP
Utilisateur =srijan
Port =peut être vide si vous ne l'avez pas personnalisé un autre port que 21
Mot de passe =ftppassword (juste créé ci-dessus)

Remarque :Étant donné que nous avons crypté notre connexion à l'étape ci-dessus, nous utiliserons le cryptage avec Exiger un FTP explicite sur TLS

Si vous n'avez pas configuré TLS, vous pouvez utiliser Utiliser le FTP standard



Il demandera de faire confiance aux certificats appuyez sur OK




Il sera connecté au répertoire partagé FTP.

4 Accès FTP anonyme dans ProFTPD

Nous pouvons créer un compte FTP anonyme dans ProFTPD, ajoutez simplement ces entrées dans le fichier de configuration ProFTPD :

nano /etc/proftpd/proftpd.conf

Et ajoutez ces entrées à la fin du fichier,

[...]
###Anonymous share##### <Anonymous ~ftp> User ftp Group nogroup <Limit LOGIN> AllowAll </Limit> # We want clients to be able to login with "anonymous" as well as "ftp" UserAlias anonymous ftp # Cosmetic changes, all files belongs to ftp user DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off # Limit the maximum number of anonymous logins MaxClients 10 # Limit WRITE everywhere in the anonymous chroot <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous> ~

Connectez-le maintenant via FileZilla comme suit :

Remarque :Étant donné que nous avons crypté notre connexion à l'étape ci-dessus, nous utiliserons le cryptage avec Exiger un FTP explicite sur TLS

Si vous n'avez pas configuré TLS, vous pouvez utiliser Utiliser le FTP standard

Appuyez sur Connect :

Il vous demandera de faire confiance aux certificats, appuyez sur OK

Nous avons réussi à nous connecter au serveur avec un utilisateur anonyme.

Toutes nos félicitations! Nous avons maintenant configuré avec succès l'environnement de serveur ProFTPD dans Debian Wheezy :)

  • Debian :https://www.debian.org/
  • Ubuntu :http://www.ubuntu.com/
  • ProFTPD :http://www.proftpd.org/

Ubuntu
  1. Comment installer et configurer Redis sur Ubuntu 18.04

  2. Comment installer et configurer Redmine sur Ubuntu 18.04

  3. Comment installer et configurer Samba sur Ubuntu 18.04

  4. Comment installer et configurer Redis sur Ubuntu 20.04

  5. Comment installer et configurer Webmin sur Debian / Ubuntu

Comment installer et configurer OpenVAS 9 sur Ubuntu

Comment installer et configurer Redis dans Ubuntu 20.04

Comment installer et configurer Neo4j sur Ubuntu 20.04

Comment installer et configurer le SDK Ubuntu dans Ubuntu 16.04 et 14.04

Comment installer et configurer PostgreSQL sur Ubuntu

Comment installer et configurer Hadoop sur Ubuntu 20.04