In diesem Handbuch erfahren Sie, wie Sie einen FTP-Server (ProFTPd) für die Übertragung von Dateien zwischen Ihrem PC und Ihrem Server konfigurieren.
Voraussetzungen
- Eine neu bereitgestellte Vultr Debian- oder Ubuntu-Serverinstanz.
- Ein Sudo-Benutzer .
Installation
Aktualisieren Sie das System.
sudo apt-get update
sudo apt-get dist-upgrade
Installieren proftpd.
sudo apt-get install proftpd
Während der Installation werden Sie gefragt, ob Sie im inetdoder im standaloneModus installieren möchten . Wählen Sie den standaloneModus.
Aufbau
Öffnen Sie die Proftpd-Konfigurationsdatei.
sudo nano /etc/proftpd/proftpd.conf
Die Datei ähnelt dem folgenden Text.
#
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes, reload proftpd after modifications, if
# it runs in daemon mode. It is not required in inetd/xinetd mode.
#
# Includes DSO modules
Include /etc/proftpd/modules.conf
# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6 on
# If set on you can experience a longer connection delay in many cases.
IdentLookups off
ServerName "Debian"
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayChdir .message true
ListOptions "-l"
DenyFilter \*.*/
# Use this to jail all users in their homes
# DefaultRoot ~
# Users require a valid shell listed in /etc/shells to login.
# Use this directive to release that constrain.
RequireValidShell off
# Port 21 is the standard FTP port.
Port 21
...
Hauptkonfigurationsanweisungen
ServerName: Gibt den Namen des FTP-Servers an. Dieser Name wird angezeigt, wenn Clients eine Verbindung zum Server herstellen.
TimeoutIdle: Die Zeit in Sekunden, nach der ein Client automatisch getrennt wird, wenn er auf dem FTP-Server nicht mehr aktiv ist.
DefaultRoot: Steuert das Standardstammverzeichnis, das einem Benutzer bei der Anmeldung zugewiesen wird.
Port: Der Verbindungsport zum FTP-Server. Fast die ganze Zeit ist dieser Port 21und Sie sollten ihn nicht ändern müssen, es sei denn, Sie werden von einer Firewall blockiert.
PassivePorts: Beschränkt den Bereich der Ports, aus denen der Server beim Senden des PASVBefehls von einem Client auswählt .
MaxInstances: Die maximale Anzahl gleichzeitiger Verbindungen, die Sie auf Ihrem FTP-Server zulassen möchten.
Jetzt müssen wir die DefaultRootOption aktivieren . Suchen Sie dazu die DefaultRootkommentierte Zeile und kommentieren Sie sie aus.
DefaultRoot ~
Der Wert ~bedeutet, dass der Benutzer auf den persönlichen Ordner beschränkt ist (z /home/user12. B. ).
Hinweis : Standardmäßig kann jemand, der eine Verbindung zum FTP-Server herstellt, auf alle Serverordner zugreifen. Es wird daher empfohlen, die Option zu aktivieren DefaultRoot.
Ändern Sie die ServerName.
ServerName : the name of your FTP server
Suchen und kommentieren Sie die folgenden Zeilen (entfernen Sie die #am Anfang jeder Zeile), um anonyme Verbindungen zu Ihrem Server zu ermöglichen.
# A basic anonymous configuration, no upload directories.
<Anonymous ~ftp>
User ftp
Group nogroup
# 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
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message
# Limit WRITE everywhere in the anonymous chroot
<Directory *>
<Limit WRITE>
DenyAll
</Limit>
</Directory>
</Anonymous>
Hinweis : Wenn Sie anonyme Verbindungen auf Ihrem FTP-Server aktivieren, kann jeder Benutzer eine Verbindung herstellen. Sie haben Zugriff auf das /home/ftpVerzeichnis und können Dateien lesen und herunterladen, jedoch keine Dateien ändern oder hinzufügen.
Sie können dem Root-Benutzer den Zugriff auf FTP verbieten, indem Sie die folgende Zeile hinzufügen.
RootLogin off
Starten Sie den Server neu, nachdem die Konfiguration geändert wurde.
sudo service proftpd restart
Hinweis : Wenn eine Fehlerzeile als "Host kann nicht aufgelöst werden" angezeigt wird, beachten Sie, dass dies keine Rolle spielt und Sie sie ignorieren können.
Fügen Sie einen FTP-Benutzer hinzu
Fügen Sie einen Benutzer hinzu, z. B. " myuser".
useradd --shell /bin/false myuser
Erstellen Sie das Home-Verzeichnis unseres Benutzers " myuser".
mkdir /home/myuser
Ändern Sie den Besitz dieses Verzeichnisses in Benutzer und Gruppe " myuser".
chown myuser:myuser /home/myuser/
Legen Sie ein Passwort für den Benutzer " myuser" fest.
passwd myuser
Stellen Sie eine Verbindung zu Ihrem FTP-Server her
Nachdem Ihr FTP-Server installiert und konfiguriert ist, möchten Sie eine Verbindung herstellen können.
Geben Sie einfach ftp://server_ip_addressdie Adressleiste Ihres Browsers ein. Ersetzen Sie server_ip_addressdurch die IP-Adresse Ihres Servers. Sie werden dann nach Ihrem usernameund gefragt password.
Mit dem folgenden Befehl können Sie sehen, wer mit Ihrem FTP-Server verbunden ist.
ftpwho
Sie können auch Statistiken anzeigen.
ftpstats