So installierst du ProFTPd FTP Server unter FreeBSD

FTP (File Transfer Protocol) ist wahrscheinlich die beliebteste Methode, um Dateien auf einen Server hochzuladen. ProFTPD ist ein beliebter und leicht konfigurierbarer FTP-Server für Unix-ähnliche Systeme, der SSL/TLS-Verschlüsselung unterstützt.

Diese Anleitung zeigt dir, wie du den FTP-Server unter FreeBSD 12.0 mit der Serveranwendung ProFTPd einrichtest. Wir werden den ProFTPd-Server installieren, den Einsatz mit SSL/TLS-Sicherheit einrichten und absichern und den FTP-Benutzer einrichten.

Voraussetzung

Für diese Anleitung verwenden wir das Betriebssystem FreeBSD. Der Server verfügt über 1 GB RAM und 2 CPUs.

Was wir tun werden:

  • Pakete aktualisieren und upgraden
  • ProFTPd installieren
  • ProFTPd konfigurieren
  • SSL/TLS ProFTPd einrichten
  • FTP-Benutzer einrichten
  • Testen

Schritt 1 – Pakete aktualisieren und upgraden

Zunächst aktualisieren wir das Paket-Repository und führen ein Upgrade aller Pakete auf die neueste Version durch. Dazu verwenden wir das Paketverwaltungsprogramm pkg für FreeBSD.

Aktualisiere alle verfügbaren Repositories und aktualisiere alle Pakete mit dem folgenden Befehl auf die neueste Version.

pkg update
pkg upgrade

Sobald die Installation abgeschlossen ist, gehst du zum nächsten Schritt über und installierst das Paket ProFTPd.

Schritt 2 – ProFTPd installieren

In diesem Schritt installieren wir das ProFTPd-Paket. Das FreeBSD-Repository stellt das ProFTPd-Paket und ein weiteres Modul für die Backend-Datenbank bereit, zum Beispiel ein Modul für MySQL-, PostgreSQL- und SQLite-Datenbanken.

Zeige alle verfügbaren ProFTPd-Pakete mit dem folgenden Befehl an.

pkg search proftpd

Du erhältst dann das untenstehende Ergebnis.

Installiere nun nur das ProFTPd-Paket mit dem unten stehenden pkg-Befehl.

pkg install proftpd

Sobald die Installation abgeschlossen ist, füge den ProFTPd-Dienst zum Systemstart hinzu.

sysrc proftpd_enable=yes

Starte dann den ProFTPd-Dienst und überprüfe seinen Status.

service proftpd start
service proftpd status

Jetzt siehst du, dass der ProFTPd-Dienst auf dem FreeBSD 12.0-System läuft.

In der Standardeinstellung verwendet der Dienst den FTP-Port „21“. Überprüfe die geöffneten Ports auf dem System mit dem Befehl sockstat (siehe unten).

sockstat -4 -l -P tcp

Du wirst sehen, dass der ProFTPd-Dienst auf Port ’21‘ läuft.

Schritt 3 – ProFTPd konfigurieren

Jetzt werden wir unsere ProFTPd-Installation konfigurieren, indem wir die Konfiguration im Verzeichnis „/usr/local/etc“ bearbeiten.

Gehe in das Verzeichnis „/usr/local/etc“ und bearbeite die Konfigurationsdatei „proftpd.conf“ mit dem Editor vim.

cd /usr/local/etc/
vim proftpd.conf

Ändere den „ServerName“ mit deinen Daten und belasse den Port auf dem Standardwert „21“.

ServerName    "Hakase-Labs ProFTPd Server"
Port          21

Schalte die IPv6-Unterstützung aus und aktiviere das Gefängnis für jeden Benutzer.

UseIPv6       off
DefaultRoot   ~

Füge die folgende Konfiguration hinzu, um die Serveridentität zu verbergen und die erforderliche gültige Shell für die Benutzeranmeldung zu deaktivieren.

# Hide Server Identity
ServerIdent   off
RequireValidShell  no

Aktiviere nun die Logs für das ProFTPd-System und jede Übertragung auf dem System.

# Setup Log Files
TransferLog   /var/log/proftpd/xferlog
SystemLog     /var/log/proftpd/proftpd.log

Speichere und schließe.

Als Nächstes erstellst du das ProFTPd-Protokollverzeichnis „/var/log/proftpd“.

mkdir -p /var/log/proftpd

Starte dann den ProFTP-Dienst mit dem folgenden Befehl neu.

service proftpd restart

Als Ergebnis wurde der ProFTPd-Dienst neu gestartet. Und er ist mit der Grundkonfiguration einsatzbereit.

Schritt 4 – SSL/TLS ProFTPd einrichten

In diesem Schritt werden wir unsere ProFTPd-Installation absichern, indem wir das TLS-Modul für den ProFTPd-Server aktivieren. Wir aktivieren das Modul mod_tls und fügen dann eine zusätzliche TLS-Konfiguration in das ProFTPd-Konfigurationsverzeichnis ein.

Bevor du weitermachst, stelle sicher, dass du die SSL-Zertifikate hast. Kopiere dann die Zertifikatsdateien in das Verzeichnis „/usr/local/etc/ssl“.

cp /pat/to/ssl/*.pem /usr/local/etc/ssl/

Danach gehst du in das Verzeichnis „/usr/local/etc“ und bearbeitest die ProFTPd-Konfigurationsdatei „proftpd.conf“ mit dem Editor vim.

cd /usr/local/etc/
vim proftpd.conf

Füge die „Include“-Konfiguration unten am Ende der Zeile ein.

Include /usr/local/etc/proftpd/tls.conf

Speichern und schließen.

Als nächstes erstellst du die Konfiguration „tls.conf“ im Verzeichnis „/usr/local/etc/proftpd/“.

vim proftpd/tls.conf

Ändere die Details mit deinen eigenen und füge die Konfiguration dort ein.

# Load the TLS Module
LoadModule mod_tls.c
# Define the SSL/TLS Configuration
<IfModule mod_tls.c>
TLSEngine                   on
TLSRSACertificateFile       /usr/local/etc/ssl/fullchain.pem
TLSRSACertificateKeyFile    /usr/local/etc/ssl/privkey.pem
TLSLog                      /var/log/proftpd/tls.log
TLSProtocol                 TLSv1.2
TLSRequired on
TLSVerifyClient             off
</IfModule>

Speichere und schließe.

Starte nun den proFTPd-Dienst mit dem folgenden Befehl neu.

service proftpd restart

Damit ist der ProFTPd-Dienst mit aktiviertem SSL/TLS in Betrieb. Jetzt kannst du deine Dateien sicher per FTP auf den Server übertragen.

Schritt 5 – FTP-Benutzer einrichten

In diesem Schritt werden wir einen neuen FTP-Benutzer einrichten. Wir erstellen einen neuen Systembenutzer mit dem Home-Verzeichnis, mit dem Passwort, aber ohne den Shell-Login.

Erstelle einen neuen Benutzer namens „hakase“ mit dem Home-Verzeichnis „/home/hakase“ und mit der Standardshell „nologin“.

Führe den folgenden Befehl aus.

adduser

Gib nun die Details wie unten ein.

Username: hakase
Full name: Hakase Labs
Uid (Leave empty for default): 
Login group [hakase]: 
Login group is hakase. Invite hakase into other groups? []: 
Login class [default]: 
Shell (sh csh tcsh bash rbash nologin) [sh]: nologin
Home directory [/home/hakase]: 
Home directory permissions (Leave empty for default): 
Use password-based authentication? [yes]: 
Use an empty password? (yes/no) [no]: no
Use a random password? (yes/no) [no]: no
Enter password: 
Enter password again: 
Lock out the account after creation? [no]: 
Username   : hakase
Password   : *****
Full Name  : Hakase Labs
Uid        : 1001
Class      : 
Groups     : hakase 
Home       : /home/hakase
Home Mode  : 
Shell      : /usr/sbin/nologin
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (hakase) to the user database.
Add another user? (yes/no): no
Goodbye!

Jetzt ist der neue FTP-Benutzer „hakase“ erstellt.

Schritt 6 – Testen

In diesem Schritt testen wir unsere ProFTPd-Installation mit der Software „FileZilla“. Sie kann auf Mac-, Windows- und Linux-Betriebssystemen installiert werden.

Öffne die Filezilla-Anwendung und gib die Serverdaten, den Benutzernamen, das Passwort und den FTP-Port „21“ ein.

Klicke nun auf die Schaltfläche „Quickconnect“ und du wirst aufgefordert, das SSL/TLS-Zertifikat zu überprüfen.

Klicke auf „Ok“, um das Serverzertifikat zu überprüfen.

Daraufhin wirst du mit dem ProFTPd-Server verbunden. Und du kannst deine Dateien sicher über den ProFTPd-Server übertragen, wenn SSL/TLS aktiviert ist.

Die Installation und Konfiguration des ProFTPd-Servers unter FreeBSD wurde erfolgreich abgeschlossen.

Referenz

Das könnte dich auch interessieren …