So installieren, konfigurieren und sichern Sie den FTP-Server in RHEL 8
In unserem vorherigen Artikel haben wir erklärt, wie FTP-Server in CentOS / RHEL 7 für die Übertragung von Computerdateien zwischen einem Client und einem Server in einem Computernetzwerk installiert, konfiguriert und gesichert werden.
In diesem Artikel wird beschrieben, wie Sie einen FTP-Server installieren, konfigurieren und sichern RHEL 8 für die grundlegende Dateifreigabe zwischen Computern.
Installieren Sie den FTP-Server auf RHEL 8
1. Verwenden Sie den folgenden Befehl dnf, um ein sicheres FTP-Paket zu installieren.
# dnf install vsftpd

2. Wenn die Installation abgeschlossen ist, müssen Sie den vsftpd-Dienst in der Zwischenzeit starten, ihn beim Systemstart automatisch starten lassen und dann den Status mit den folgenden systemctl-Befehlen überprüfen.
# systemctl start vsftpd # systemctl enable vsftpd # systemctl status vsftpd

3. Als nächstes müssen Sie den FTP-Port öffnen 21 auf der Systemfirewall, um den Zugriff auf FTP-Dienste von externen Systemen zu ermöglichen.
# firewall-cmd --zone=public --permanent --add-port=21/tcp # firewall-cmd --zone=public --permanent --add-port=45073/tcp # firewall-cmd --reload
Konfigurieren Sie den FTP-Server auf RHEL 8
4. Um einen FTP-Server zu konfigurieren, müssen Sie die Sicherung der Haupt-FTP-Konfigurationsdatei erstellen /etc/vsftpd/vsftpd.conf
Verwenden Sie den folgenden Kopierbefehl.
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig
5. Öffnen Sie dann die Konfigurationsdatei mit Ihrem bevorzugten Befehlszeileneditor.
# vi /etc/vsftpd/vsftpd.conf
Stellen Sie mit diesen entsprechenden Werten folgende Parameter ein (siehe Mann vsftpd.conf für Bedeutungen der Konfigurationsparameter):
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd
6. Als Nächstes müssen Sie FTP so konfigurieren, dass Benutzer den Zugriff auf FTP-Dienste basierend auf der Benutzerlistendatei zulassen / verweigern /etc/vsftpd.userlist.
Standardmäßig sind Benutzer in aufgeführt /etc/vsftpd.userlist
Datei wird der Zugriff mit dem verweigert userlist_deny
Option auf gesetzt YES
, wenn userlist_enable=YES
ermöglicht den Zugriff.
Aber den Parameter einstellen userlist_deny=NO
ändert die Einstellung, was bedeutet, dass nur Benutzer explizit in aufgeführt sind userlist_file=/etc/vsftpd.userlist
darf sich einloggen.
Fügen Sie daher die folgenden Zeilen in Ihre ein vsftpd.conf
Konfigurationsdatei (oder falls bereits vorhanden, kommentieren Sie sie aus und stellen Sie ihre Werte wie gezeigt ein):
userlist_enable=YES # allow access to list of usernames from the userlist_file userlist_file=/etc/vsftpd.userlist # stores usernames. userlist_deny=NO
7. Fügen Sie nun die folgenden Zeilen in Ihre ein vsftpd.conf
Konfigurationsdatei, um FTP-Benutzer auf ihre Home-Verzeichnisse zu beschränken.
chroot_local_user=YES #means local users will be placed in a chroot jail, their home directory after login by default settings. user_sub_token=$USER local_root=/home/$USER/ftp
Speichern Sie die Änderungen in der Datei und schließen Sie sie.
8. Legen Sie die folgende boolesche SELinux-Regel fest, damit FTP Dateien aus dem Home-Verzeichnis des Benutzers lesen / schreiben kann.
# semanage boolean -m ftpd_full_access --on
9. Starten Sie zum Schluss das neu vsftpd Service, um alle Änderungen zu beeinflussen, die wir bisher vorgenommen haben:
# systemctl restart vsftpd
Testen des FTP-Servers auf RHEL 8
10. Um zu testen, ob das obige FTP-Setup ordnungsgemäß ausgeführt wird, erstellen Sie zunächst einen FTP-Benutzer mit dem Befehl useradd und erstellen Sie ein Kennwort für diesen Benutzer.
# useradd -m -c "Tecmint HowTos" -s /bin/bash tecmint # passwd tecmint
11. Fügen Sie dann den Benutzer hinzu tecmint in die Datei /etc/vsftpd.userlist Verwenden Sie den Befehl echo wie folgt.
# echo "tecmint" | tee -a /etc/vsftpd.userlist # cat /etc/vsftpd.userlist
12. Erstellen Sie dann das alternative lokale Stammverzeichnis für den Benutzer (tecmint, Ihre ist wahrscheinlich anders) und legen Sie die entsprechenden Berechtigungen für dieses Verzeichnis fest.
# mkdir -p /home/tecmint/ftp # chown nobody:nobody /home/tecmint/ftp # chmod a-w /home/tecmint/ftp
13. Erstellen Sie als Nächstes ein Verzeichnis im lokalen Stammverzeichnis, in dem der Benutzer seine Dateien aufbewahrt.
# mkdir /home/tecmint/ftp/files # chown tecmint:tecmint /home/tecmint/ftp/files # chmod 0700 /home/tecmint/ftp/files/
14. Stellen Sie nun wie folgt eine Verbindung zum FTP-Server mit einem beliebigen FTP-Client her.
# ftp [email protected]
Beispielausgabe
Connected to 192.168.56.100 220 Welcome to TecMint.com FTP service. 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls
Das ist es! In diesem Artikel wurde beschrieben, wie Sie einen FTP-Server in installieren, konfigurieren und sichern RHEL 8. In unserem nächsten Artikel zeigen wir, wie Sie einen FTP-Server mithilfe von SSL / TLS-Verbindungen sichern. Bis dahin bleib bei uns.