So installieren Sie ProFTPD auf CentOS 7

Eine der sichersten und traditionellsten Verbindungsmethoden in jeder Organisation ist FTP (File Transfer Protocol), das die Übertragung von Dateien zwischen zwei Computern in einem TCP-Netzwerk ermöglicht.
Sein Design basiert auf der Client-Server-Architektur, mit der es möglich ist, einen Client-Computer zu verwenden, von dem aus wir eine Verbindung zu einem Server herstellen können, um Dateien herunterzuladen oder Dateien zu senden, unabhängig vom Betriebssystem, das in jedem der Computer verwendet wird. daher die breite Akzeptanz dieses Protokolls.

Eines der Dienstprogramme, die uns zur Verfügung stehen, um der FTP-Verbindung noch mehr Sicherheit zu verleihen, ist ProFTPD, das wir heute in CentOS 7 analysieren werden.

Was ist ProFTPDProFTPD ist im Grunde eine hochgradig konfigurierbare GPL-lizenzierte FTP-Server-Software, um die Verbindungserwartungen auf jeder Site zu erfüllen. ProFTPD wurde von Grund auf neu entwickelt, sodass keine weitere Kopie verwendet wird, und dies gibt uns die Möglichkeit, zahlreiche Optionen in seiner Ausführung zu konfigurieren.

ProFTPDProFTPD kann auf folgenden Plattformen integriert ausgeführt werden:

  • AIX
  • BSD / Betriebssystem
  • Cygwin
  • Digitales Unix
  • DG / UX HP / UX
  • IRIX
  • Linux
  • Mac OS
  • SCO
  • FreeBSD
  • NetBSD
  • OpenBSD
  • Solaris
  • SunOS
  • Linux für IBM S / 390, zSeries

ProFTPD-FunktionenUnter seinen Eigenschaften finden wir:

  • Es hat eine einzige Hauptkonfigurationsdatei mit Anweisungen und Gruppen von Anweisungen, die für jeden Benutzer, der Apache verwendet hat, intuitiv sind.
  • Es hat ein ".ftpaccess"-Verzeichnis, dessen Konfiguration der ".htaccess" von Apache ähnelt.
  • Möglichkeit zur Konfiguration mehrerer virtueller FTP-Server und anonymer FTP-Dienste
  • Konzipiert für den Betrieb als eigenständiger Server oder von inetd / xinetd, je nach Systemlast
  • Anonyme FTP-Stammverzeichnisse erfordern keine spezielle Verzeichnisstruktur, Systembinärdateien oder andere Systemdateien für eine einfache Verwaltung
  • Kein SITE EXEC-Befehl. In modernen Internetumgebungen sind diese Befehle ein Sicherheitsalbtraum
  • Der Quellcode steht Administratoren und Entwicklern zur Überprüfung des Systems zur Verfügung
  • Hat versteckte Dateien und Verzeichnisse, basierend auf Unix-ähnlichen Berechtigungen oder Benutzer- / Gruppenbesitz
  • Es wird als konfigurierbarer, nicht privilegierter Benutzer im Standalone-Modus ausgeführt, um die Wahrscheinlichkeit von Angriffen zu verringern, die "Root"-Funktionen ausnutzen könnten. Hinweis: Diese Funktion hängt von den Fähigkeiten des Unix-Hostsystems ab
  • Registrierung und utmp / wtmp-Unterstützung. Die Registrierung ist mit dem wu-ftpd-Standard konform, mit erweiterter Registrierung verfügbar
  • Unterstützung für den Shadow-Passwortsatz, einschließlich Unterstützung für abgelaufene Konten
  • Es basiert auf einem modularen Design, das es uns ermöglicht, den Server einfach mit Modulen zu erweitern. Die Module wurden für SQL-Datenbanken, LDAP-Server, SSL/TLS-Verschlüsselung, RADIUS-Unterstützung usw. geschrieben.
  • Unterstützt IPv6.

1. So installieren Sie EPEL auf CentOS 7

Schritt 1
Der erste Schritt besteht darin, das EPEL-Repository zu installieren, um später ProFTPD zu erhalten. Dazu führen wir Folgendes aus:

 yum -y epel-release installieren

Schritt 2
Sobald dieser Vorgang abgeschlossen ist, sehen wir Folgendes:

Schritt 3
Jetzt importieren wir den EPEL GPG-Schlüssel mit der folgenden Zeile:

 rpm --import / etc / pki / rpm-gpg / RPM-GPG-KEY-EPEL-7
Wir fahren fort, die Systempakete zu aktualisieren:
 yum -y Update

2. So installieren Sie ProFTPD auf So installieren Sie EPEL auf CentOS 7


Der nächste Schritt besteht darin, das Dienstprogramm ProFTPD und OpenSSL zu installieren, indem Sie Folgendes ausführen:
 yum install -y proftpd openssl proftpd-utils

Sobald dieser Vorgang abgeschlossen ist, führen wir die folgenden Zeilen aus:

 systemctl start proftpd.service (Startet den ProFTPD-Dienst) systemctl enable proftpd.service (aktiviert den ProFTPD-Dienst neben dem CentOS-Start)

3. So konfigurieren Sie die Firewall


Wenn Firewalld auf CentOS 7 installiert ist, müssen wir es mit Firewall-cmd konfigurieren, um den FTP-Port wie folgt zu öffnen:
 Firewall-cmd --add-service = ftp --permanent Firewall-cmd -reload

Wir fahren fort, die installierte Version von ProFTPD zu überprüfen:

 proftpd -v

4. So erstellen Sie Benutzer und Gruppen für ProFTPD in CentOS 7


Sobald ProFTPD in CentOS 7 installiert ist, erstellen Sie die Gruppe und den Benutzer für den Zugriff. In diesem Fall erstellen wir eine ftpgroup-Gruppe und einen Solvtic1-Benutzer für ProFTPD und definieren / ftpshare als Home-Verzeichnis für der erstellte Benutzer:
 groupadd ftpgroup useradd -G ftpgroupsolvtic1 -s / sbin / nologin -d / ftpshare passwdsolvtic1

Dort müssen wir das jeweilige Passwort für den neuen Benutzer eingeben und bestätigen. Sobald dies erledigt ist, erteilen wir die Berechtigungen für ftpshare, indem wir Folgendes ausführen:

 chmod -R 1750 / ftpshare /

5. So aktivieren Sie TLS in ProFTPD


Jetzt müssen wir die FTP-Verbindungen mit TLS sichern und dafür müssen wir die Datei /etc/proftpd/proftpd.conf öffnen, aber ideal ist es, bevor Sie die Datei bearbeiten, eine Sicherungskopie der Originaldatei erstellen und dann Bearbeiten Sie die Datei mit nano .

Schritt 1
Um die Kopie zu erstellen, führen wir aus:

 cp -pf /etc/proftpd.conf /etc/proftpd.conf.bak
Um auf die Datei zuzugreifen, verwenden wir nano und führen Folgendes aus:
 nano /etc/proftpd.conf
In der angezeigten Datei tragen wir unter der Zeile DefaultRoot ~!Adm folgendes ein:
 PassivePorts 6000 6100

Schritt 2
Darüber hinaus kommentieren wir die folgenden Zeilen:

 # TLSEngine on TLSRequired on TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem erforderlich TLSOptions 36 NoCertRequest000 offStriatet000 erforderlich TLSOptions NoCertRequest timeout 300 TLSLog /var/log/proftpd/tls.log # # TLSSessionCache shm: / file = / var / run / proftpd / sesscache # #
Schritt 3
Wir speichern die Änderungen mit den Tasten Strg + O und verlassen den Editor mit den Tasten Strg + X. Wie wir sehen, wurden die Ports 6000 und 6100 hinzugefügt, um den passiven Modus von FTP zu ermöglichen :
 Firewall-cmd --add-port = 6000-6100 / tcp --permanente Firewall-cmd --reload

Schritt 4
Wenn wir den Status der Ports sehen möchten, können wir Folgendes ausführen:

 Firewall-cmd --list-ports

Schritt 5
Nun müssen wir SELINUX konfigurieren, um das Lesen und Schreiben der Dateien zu ermöglichen, wir führen Folgendes aus:

 setsebool -P allow_ftpd_full_access = 1

Schritt 6
Um TLS zu verwenden, müssen Sie ein SSL-Zertifikat erstellen, das wir im Pfad /etc/pki/tls/certs wie folgt erstellen:

 openssl req -x509 -nodes -newkey rsa: 1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem
Die folgenden Fragen werden angezeigt, in die wir Antworten eingeben, wie zum Beispiel:
  • Stadt
  • Land
  • Organisation
  • Post und mehr

Schritt 7
Nun werden wir aus Sicherheitsgründen die Zertifikate so konfigurieren, dass sie nur so lesbar sind:

 chmod 0440 /etc/pki/tls/certs/proftpd.pem
Schließlich starten wir den ProFTPD-Dienst neu, indem wir Folgendes ausführen:
 systemctl Neustart proftpd.service

6. So greifen Sie über FTP auf CentOS zu

Schritt 1
Um über FTP auf CentOS zuzugreifen, können wir einen FTP-Client verwenden und für diesen Fall verwenden wir Filezilla, das unter dem folgenden Link heruntergeladen werden kann:

Filezilla

Wenn wir auf Filezilla zugreifen, gehen wir zum Menü Datei und wählen dort die Option Site-Manager aus, um die Konfiguration unseres Zugriffs zu erstellen, und geben Folgendes ein:

Server192.168.0.9 (CentOS 7 IP)
ProtokollFTP
VerschlüsselungErfordert explizites FTP über TLS
ZugriffsmodusNormal
Nutzersolvtic1 (während der Einrichtung erstellt)
HafenDies kann leer sein, wenn ein anderer Port als 21 nicht angepasst wurde, was standardmäßig der Fall ist.
PasswortWährend der Benutzereinrichtung erstellt

VERGRÖSSERN

Schritt 2
Sobald dies definiert ist, klicken Sie auf Verbinden, um auf unseren CentOS-Server zuzugreifen und von hier aus die Verbindung zu starten. Dieser Vorgang kann von Windows, macOS oder Linux aus durchgeführt werden. Wenn wir dort klicken, wird die folgende Meldung angezeigt:

NachrichtendetailsDort sehen wir Details wie:

  • Algorithmen, Gültigkeitsdatum und Fingerabdrücke des Zertifikats
  • Zertifikatsdaten wie zum Zeitpunkt der Erstellung konfiguriert
  • Sitzungsdaten mit IP-Adresse, Benutzer, Passwörter und Art der Verschlüsselung

Schritt 3
Wir können das Kontrollkästchen Immer dem Zertifikat in zukünftigen Sitzungen vertrauen aktivieren, um zu verhindern, dass diese Meldung bei jeder Verbindung mit CentOS 7 angezeigt wird.

Wenn dies korrekt ist, klicken Sie auf die Schaltfläche OK und auf diese Weise werden wir über ProFTPD mit CentOS 7 verbunden:

VERGRÖSSERN

Dort können wir den Browsing-Prozess problemlos starten.

Schritt 4
Falls Sie den anonymen Benutzer für den FTP-Zugriff konfigurieren möchten, erstellen wir die folgende Datei:

 nano /etc/proftpd.conf
Dort fügen wir Folgendes ein:
 […] ### Anonyme Freigabe ##### Benutzer ftp Group ftp UserAlias ​​​​anonymer ftp DirFakeUser auf ftp DirFakeGroup auf ftp MaxClients 10 DenyAll 
Wir speichern die Änderungen mit den Tasten Strg + O und beenden mit Strg + X.

Schritt 5
Schließlich starten wir den Dienst neu:

 systemctl Neustart proftpd.service
Wir haben gesehen, dass ProFTPD ein nützliches Werkzeug ist, um eine integrierte Verbindung zu unseren Servern herzustellen und so eine integrierte und vollständig agile Kommunikation der Dateien zu gewährleisten.

Denken Sie daran, dass ProFTPD für verschiedene Systeme verfügbar ist und daher weit verbreitet ist.

wave wave wave wave wave