GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie ProFTPD mit TLS auf CentOS 7.2

Dieses Tutorial beschreibt die Installation und Konfiguration von ProFTPD auf einem CentOS 7.2 Server. ProFTPD ist ein FTP-Daemon für Unix- und Linux-Betriebssysteme und wird unter der GNU Public License (GPL) vertrieben.

1 Vorbemerkung

Dieses Tutorial basiert auf einem CentOS-Server, daher sollten Sie eine grundlegende CentOS 7.2-Serverinstallation einrichten, bevor Sie mit diesem Tutorial fortfahren. Das System sollte eine statische IP-Adresse haben. Ich verwende 192.168.1.100 als IP-Adresse in diesem Tutorial und server1.example.com als Hostnamen.

2 ProFTPD installieren und konfigurieren

2.1 Installation:

Wir benötigen Software aus dem EPEL-Repository, aktivieren Sie sie wie folgt:

yum -y install epel-release

Importieren Sie dann den EPEL GPG-Schlüssel:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

und aktualisieren Sie die Pakete:

yum -y update

Wir installieren ProFTPD und OpenSSL wie folgt:

yum install -y proftpd openssl proftpd-utils

Wir müssen den Dienst starten und ihn so aktivieren, dass er beim Booten automatisch gestartet wird.

systemctl start proftpd.service
systemctl enable proftpd.service

Wenn Sie firewalld installiert haben, konfigurieren Sie die Firewall mit firewall-cmd, um den FTP-Port zu öffnen:

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

Wir können die ProFTPD-Version wie folgt überprüfen:

proftpd -v
[[email protected] ~]# proftpd -v
ProFTPD Version 1.3.5b
[[email protected] ~]#

2.2 Erstellen von ProFTPD-Benutzern

Ich werde eine Gruppe ftpgroup und einen Benutzer tom für ProFTPD erstellen. Ich werde /ftpshare als Home-Verzeichnis für den Benutzer tom festlegen.

groupadd ftpgroup

Als nächstes werde ich den Benutzer srijan in ftpgroup hinzufügen:

useradd  -G ftpgroup tom -s /sbin/nologin -d /ftpshare
passwd tom
[[email protected] ~]# passwd tom
Changing password for user srijan.
New password: <--ftppassword
Retype new password: <--ftppassword
passwd: all authentication tokens updated successfully.
[[email protected] ~]# 

Legen Sie die Berechtigungen für das ftpshare-Verzeichnis fest:

chmod -R 1750 /ftpshare/

Jetzt sind wir bereit für die ProFTPD-Verbindung. Aber die Verbindungen sind noch nicht verschlüsselt, das lösen wir im nächsten Kapitel.

3 Aktivieren von TLS in ProFTPD

Um TLS in ProFTPD zu aktivieren, öffnen Sie /etc/proftpd/proftpd.conf. Bevor Sie die Datei bearbeiten, ist es besser, die Originaldatei zu sichern und die Datei dann mit nano zu bearbeiten.

cp -pf /etc/proftpd.conf /etc/proftpd.conf.bak
nano /etc/proftpd.conf

Fügen Sie die Zeilen wie in Rot angezeigt hinzu und ändern Sie sie.

[...]
DefaultRoot ~ !adm PassivePorts 6000 6100
[...]

#
<IfDefine TLS> TLSEngine on TLSRequired on TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem TLSCipherSuite ALL:!ADH:!DES TLSOptions NoCertRequest TLSVerifyClient off TLSRenegotiate ctrl 3600 data 512000 required off timeout 300 TLSLog /var/log/proftpd/tls.log # <IfModule mod_tls_shmcache.c> # TLSSessionCache shm:/file=/var/run/proftpd/sesscache # </IfModule> #</IfDefine>
[...]

Ich habe 6000- und 6100-Ports hinzugefügt, um den passiven FTP-Modus zuzulassen, ebenso werde ich den passiven Modus über den CentOS-Firewalld-Dienst wie folgt zulassen:

firewall-cmd --add-port=6000-6100/tcp --permanent
firewall-cmd --reload

Wir können den Status der Ports wie folgt überprüfen:

firewall-cmd --list-ports
[[email protected] ~]# firewall-cmd --list-ports
6000-6100/tcp
[[email protected] ~]#

Zusätzlich müssen wir SELINUX anweisen, das Lesen/Schreiben der Dateien zu erlauben.

setsebool -P allow_ftpd_full_access=1

Um TLS verwenden zu können, müssen wir ein SSL-Zertifikat erstellen. Ich werde es in /etc/pki/tls/certs erstellen, wir können das SSL-Zertifikat wie folgt generieren:

openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem

[[email protected] certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem
Generieren eines privaten 1024-Bit-RSA-Schlüssels
....................................+++ ++
.........++++++
Neuen privaten Schlüssel in '/etc/pki/tls/certs/proftpd.pem' schreiben
- ----
Sie werden gleich aufgefordert, Informationen einzugeben, die
in Ihre Zertifikatsanforderung aufgenommen werden.
Was Sie gleich eingeben werden, ist ein sogenannter Distinguished Name oder DN .
Es gibt einige Felder, aber Sie können einige leer lassen
Für einige Felder gibt es einen Standardwert,
Wenn Sie '.' eingeben, bleibt das Feld leer.
-----
Ländername (2-Buchstaben-Code) [XX]:<--DE
Staats- oder Provinzname (vollständiger Name) []:<-- Hamburg
Ortsname (z. B. Stadt) [Standardstadt]: <-- Lüneberg
Organisationsname (z. B. Unternehmen) [Standardunternehmen GmbH]:<-- Wie man schmiedet
Name der Organisationseinheit (zB Abschnitt) []:<-- Entwicklung
Allgemeiner Name (z. B. Ihr Name oder der Hostname Ihres Servers) []:<-- server1.example.com
E-Mail-Adresse []:<-- [E-Mail-geschützt]
[[E-Mail-geschützte] Zertifikate]#

Geben Sie die obigen Werte nach Ihrer Wahl in Rot ein, ich habe nur ein Beispiel gegeben.

Jetzt werde ich aus Sicherheitsgründen die Zertifikate nur wie folgt lesbar machen:

chmod  0440 /etc/pki/tls/certs/proftpd.pem

Abschließend starten Sie den ProFTPD-Dienst wie folgt neu:

systemctl restart proftpd.service

Wir können uns mit der Filezilla-Software mit dem ProFTPD-Server verbinden, Sie müssen Filezilla auf dem Client-Computer installiert haben, um sich mit dem Server zu verbinden. Öffnen Sie Filezilla und geben Sie die Details wie folgt ein:

Einzelheiten sind:

Host =192.168.1.100
Protokoll =FTP
Benutzer = tom
Port =kann leer sein, wenn Sie keinen anderen Port als 21 angepasst haben
Passwort =ftppassword (gerade oben erstellt)

Hinweis:Da wir unsere Verbindung im obigen Schritt verschlüsselt haben, verwenden wir die Verschlüsselung mit Explizites FTP über TLS erforderlich

Wenn Sie TLS nicht konfiguriert haben, können Sie Plain FTP verwenden verwenden



Es wird gefragt, ob Sie dem Zertifikat vertrauen möchten, drücken Sie OK



Es wird über eine TLS-Verbindung mit dem freigegebenen FTP-Verzeichnis verbunden.


4 Anonymer FTP-Zugriff in ProFTPD

Wir können ein anonymes FTP-Konto in ProFTPD erstellen, fügen Sie einfach diese Zeilen in die ProFTPD-Konfigurationsdatei ein:

nano /etc/proftpd.conf

Und fügen Sie diese Zeilen am Ende der Datei hinzu.

[...]
###Anonymous share##### <Anonymous ~ftp> User ftp Group ftp UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp MaxClients 10 <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>

Jetzt müssen wir den FTP-Dienst neu starten:

systemctl restart proftpd.service

Verbinden Sie sich nun wie folgt über Filezilla mit dem Anon-Konto:

Hinweis:Da wir unsere Verbindung im obigen Schritt verschlüsselt haben, verwenden wir die Verschlüsselung mit Explizites FTP über TLS erforderlich

Wenn Sie TLS nicht konfiguriert haben, können Sie Plain FTP verwenden verwenden

Drücken Sie Verbinden.

Wir sind erfolgreich mit dem Server mit einem anonymen Benutzer verbunden.

Herzliche Glückwünsche! Jetzt haben wir die ProFTPD-Serverumgebung in CentOS 7.2 erfolgreich konfiguriert :)

  • CentOS:http://www.centos.org/
  • ProFTPD:http://www.proftpd.org/

Cent OS
  1. So installieren Sie CentOS 8 (mit Screenshots)

  2. So installieren Sie Python 3 auf CentOS 7 mit SCL

  3. So installieren Sie ProFTPd mit TLS auf OpenSuse 13.2

  4. So installieren Sie ProFTPD unter CentOS 7

  5. So installieren Sie einen FTP-Server unter CentOS 7

So installieren Sie ProFTPD mit TLS auf Ubuntu 18.04 LTS

So installieren Sie den vsftpd-FTP-Server mit SSL/TLS unter CentOS 8

So installieren Sie ProFTPD unter CentOS 7.0

So installieren Sie Nginx mit ngx_pagespeed unter CentOS

So installieren Sie Nginx mit PHP-FastCGI unter CentOS 6

So installieren Sie Magento mit Nginx unter CentOS 7