GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie VSFTP unter Ubuntu 20.04

Installieren Sie VSFTP auf Ubuntu 20.04. In dieser Anleitung erfahren Sie, wie Sie einen FTP-Server einrichten und einem Benutzer Zugriff auf ein bestimmtes Verzeichnis als Chroot gewähren.

Dieses Setup wurde auf einer Google Compute Engine-VM-Instanz mit Ubuntu 20.04 LTS getestet.

Dieses Setup funktioniert also gut für jede virtuelle Maschine auf AWS EC2 Instance oder DigitalOcean oder anderen Cloud-Hosting-Servern oder VPS oder Dedicated.

Voraussetzungen für Google Cloud

Wenn Sie die Google Cloud Platform verwenden, um FTP einzurichten, müssen Sie die folgenden Schritte ausführen.

  1. Eine ausgeführte Compute Engine, siehe Compute Engine-Instanz mit Ubuntu 20.04 einrichten.
  2. Die Ersteinrichtung des Ubuntu-Servers abgeschlossen.

Schritte zum Einrichten von FTP

  1. Richten Sie Ihre VM-Instanz ein
  2. Abschließen der anfänglichen Servereinrichtung
  3. Firewall-Regeln konfigurieren
  4. Erstellen Sie einen neuen Benutzer
  5. Installieren Sie den VSFTP-FTP-Server
  6. FTP konfigurieren
  7. Überprüfen Sie die Einrichtung

Ich nehme an, Sie haben Ihren Server eingerichtet und konfiguriert.

Firewall-Regeln einrichten

Sie können FTP auf jedem gewünschten Port konfigurieren, jetzt werden Sie es auf dem Standardport 21 konfigurieren, also müssen Sie eine Firewall-Regel erstellen, um Zugriff auf diese Ports zu gewähren.

Wir öffnen auch die Ports 40000 – 50000 für Verbindungen im passiven Modus.

Gehen Sie zu VPC-Netzwerk>> Firewall-Regeln und klicken Sie auf Firewall-Regeln erstellen.

In Name Geben Sie ftp ein

Unter Ziele Wählen Sie All instances in the network

Im Quellfilter Wählen Sie IP ranges

In Quell-IP-Bereichen Geben Sie 0.0.0.0/0 ein

In Protokolle und Ports überprüfen Sie TCP und geben Sie 20, 21, 990, 40000-50000 ein .

Klicken Sie auf Erstellen .

FTP-Ports in UFW zulassen

Wenn Sie UFW auf Ihrem Server verwenden, stellen Sie sicher, dass Sie den Port öffnen, um Verbindungen zu Ihrem Server zuzulassen, andernfalls können Sie keine Verbindung herstellen.

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp

Neuen Benutzer erstellen

Jetzt können Sie mit dem folgenden Befehl einen neuen Benutzer erstellen, um das FTP zu testen.

sudo useradd -m -c "Name, Role" -s /bin/bash username

Richten Sie ein Passwort für diesen Benutzer ein.

sudo passwd username

VSFTP-Server installieren

VSFTP ist ein Very Secure File Transfer Protocol für Linux-basierte Systeme. Standardmäßig erlauben AWS oder Google Cloud keine passwortbasierte Authentifizierung für die Instanzen der virtuellen Maschine.

Mit VSFTP können Sie Ihren eigenen FTP-Server betreiben und Benutzer erstellen und sie jedem Verzeichnis zuweisen und den Zugriff auf andere Verzeichnisse auch mit Chroot verhindern.

Jetzt können Sie VSFTP mit dem folgenden Befehl installieren.

sudo apt install vsftpd

Sobald die Installation abgeschlossen ist, können Sie VSFTP konfigurieren.

VSFTP konfigurieren

Erstellen Sie zunächst eine Sicherungskopie der ursprünglichen VSFTP-Konfigurationsdatei.

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig

Bearbeiten Sie vsftpd.conf Datei und nehmen Sie die folgenden Änderungen vor.

sudo nano /etc/vsftpd.conf

Ändern die folgenden Anweisungen.

listen=YES
listen_ipv6=NO

Kommentar entfernen die folgenden Anweisungen.

write_enable=YES
local_umask=022
chroot_local_user=YES

Hinzufügen diese Konfigurationen bis zum letzten.

seccomp_sandbox=NO
allow_writeable_chroot=YES
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
tcp_wrappers=YES
user_sub_token=$USER
user_config_dir=/etc/vsftpd/user_config_dir
pasv_min_port=40000
pasv_max_port=50000

Hier haben Sie einen userlist_file konfiguriert die die Liste der FTP-Benutzer und user_config_dir enthält um die benutzerspezifischen Konfigurationen zu speichern.

Fügen Sie den zuvor erstellten Benutzer in userlist hinzu Datei.

echo "username" | sudo tee -a /etc/vsftpd.userlist

Dieser Befehl erstellt eine Datei mit dem Namen vsftpd.userlist und fügt den Benutzer hinzu und gibt den hinzugefügten Benutzer im Terminal aus.

Erstellen Sie ein Verzeichnis mit dem Namen user_config_dir um die benutzerspezifischen Konfigurationen zu speichern.

sudo mkdir -p /etc/vsftpd/user_config_dir

Erstellen Sie eine neue Datei mit dem gleichen Namen wie der Benutzername in diesem Verzeichnis.

sudo nano /etc/vsftpd/user_config_dir/username

Fügen Sie dieser Datei die folgende Zeile hinzu.

local_root=/path/to/your/directory

Speichern Sie die Datei und verlassen Sie den Editor.

Starten Sie schließlich VSFTP neu.

sudo systemctl restart vsftpd

SSH-Zugriff verhindern

Jetzt müssen Sie den SSH-Zugriff auf den neu erstellten Benutzer verhindern, indem Sie den DenyUsers hinzufügen Direktive in Ihrem sshd_config .

sudo nano /etc/ssh/sshd_config

Fügen Sie die folgende Zeile am Ende der Datei hinzu.

DenyUsers username other-user

Sie können mehrere Benutzer, getrennt durch ein Leerzeichen, hinzufügen.

Starten Sie SSH neu.

sudo systemctl restart ssh

Bereiten Sie sich auf eine Rolle als Information Technology Professional vor mit Linux-Betriebssystem

Überprüfen Sie die Einrichtung

Öffnen Sie nun Ihren FTP-Client und geben Sie die externe IP-Adresse Ihres Servers als Hostname, Port als 21, Benutzername mit dem zuvor erstellten Benutzernamen und dem Passwort ein.

Jetzt werden Sie am Server angemeldet und können nur auf den Ordner zugreifen, der Ihnen zugewiesen ist.

Schlussfolgerung

Jetzt haben Sie gelernt, wie Sie FTP auf Ihrer VM-Instanz unter Ubuntu 20.04 einrichten.

Vielen Dank für Ihre Zeit. Wenn Sie auf ein Problem oder Feedback stoßen, hinterlassen Sie bitte unten einen Kommentar.


Linux
  1. So installieren Sie Docker unter Ubuntu 18.04

  2. So installieren Sie Apache unter Ubuntu 18.04

  3. So installieren Sie MariaDB 10.4 auf Ubuntu 18.04

  4. So installieren Sie MongoDB unter Ubuntu 18.04

  5. So installieren Sie Docker unter Ubuntu 22.04

So installieren Sie Nginx unter Ubuntu 16.04

So installieren Sie Tomcat 8.5 auf Ubuntu 18.04

WIE INSTALLIERE ICH NEXTCLOUD AUF UBUNTU?

So installieren und konfigurieren Sie Sendmail unter Ubuntu

So installieren Sie Asterisk in Ubuntu 20.04

So installieren Sie Sendmail unter Ubuntu 22.04