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

FTP-Server-Container Podman schnell und richtig und 4 schmutzige Schritte

Einführung

FTP-Server-Container steht für „File Transfer Protocol“ und ist ein ausgezeichnetes Protokoll zum Herunterladen von Dateien von einem entfernten oder lokalen Server oder zum Hochladen von Dateien auf den Server. Die Nutzung von FTP erweist sich nach korrekter Einrichtung als primäre Aufgabe. Es funktioniert, indem ein Server auf Verbindungen (standardmäßig auf Port 21) von Clients wartet. Die Clients können mit ihrem Benutzerkonto auf ein entferntes Verzeichnis zugreifen und dort Dateien herunterladen oder hochladen, je nachdem, welche Berechtigungen ihnen erteilt wurden. Es ist auch möglich, eine anonyme Autorisierung zu konfigurieren, was bedeutet, dass Benutzer ihr Konto nicht benötigen, um sich mit dem FTP-Server zu verbinden.


Unter Centos Linux sind viele verschiedene FTP-Server-Container und Client-Softwarepakete verfügbar. Sie können sogar standardmäßige GUI- und Befehlszeilen-Tools als FTP-Client verwenden. Darüber hinaus ist vsftpd ein elegantes und hochgradig konfigurierbares FTP-Serverpaket, das für viele Linux-Systeme, einschließlich Centos, bekannt ist.
In diesem Handbuch werden die schrittweisen Anweisungen zur Installation von vsftpd auf Centos erläutert. Wir werden auch sehen, wie Sie den Container-FTP-Server über verschiedene Einstellungen konfigurieren und dann die Befehlszeile, die GNOME-GUI oder die FTP-Client-Software verwenden, um eine Verbindung zum FTP-Server herzustellen. Anleitung zum Erstellen von FTP-Benutzern.

Umgebungsvariablen

Dieses Bild verwendet Umgebungsvariablen, um die Konfiguration einiger Parameter zur Laufzeit zu ermöglichen:

  • Variablenname:FTP_USER
  • Standardwert:admin
  • Akzeptierte Werte:Jede Zeichenfolge. Vermeiden Sie Leerzeichen und Sonderzeichen.
  • Beschreibung:Benutzername für das Standard-FTP-Konto. Wenn Sie es zur Laufzeit nicht über die Umgebungsvariable FTP_USER angeben, wird standardmäßig admin verwendet.
  • Variablenname:FTP_PASS
  • Standardwert:Zufallszeichenfolge.
  • Akzeptierte Werte:Jede Zeichenfolge.
  • Beschreibung:Wenn Sie kein Passwort für das Standard-FTP-Konto über FTP_PASS angeben, wird automatisch eine 16-stellige Zufallszeichenfolge generiert. Sie können diesen Wert über die Containerprotokolle abrufen.
  • Variablenname:PASV_ADDRESS
  • Standardwert:Docker-Host-IP / Hostname.
  • Akzeptierte Werte:Jede IPv4-Adresse oder jeder Hostname (siehe PASV_ADDRESS_RESOLVE).
  • Beschreibung:Wenn Sie keine IP-Adresse angeben, die im passiven Modus verwendet werden soll, verwenden Sie die geroutete IP-Adresse des Docker-Hosts. Denken Sie daran, dass dies eine lokale Adresse sein könnte.

Offengelegte Ports und Volumes

Das Image legt die Ports 20 und 21 offen. Außerdem werden zwei Volumes exportiert:/home/vsftpd, das die Home-Verzeichnisse der Benutzer enthält, und /var/log/vsftpd, das zum Speichern von Protokollen verwendet wird.
Wenn ein Home-Verzeichnis zwischen dem Host und dem Container (/home/vsftpd) geteilt wird, sollten die Eigentümer-Benutzer-ID und Gruppen-ID 14 und 50 sein. Dies entspricht dem FTP-Benutzer und der FTP-Gruppe des Containers, kann aber mit etwas anderem auf dem Host übereinstimmen.

Holen Sie das Bild aus dem Repository Ihrer Wahl

# podman pull fauria/vsftpd

Erstellen Sie einen Pod-FTP-Servercontainer:

Das FTP-Protokoll überwacht standardmäßig Port 21 für die Benutzerauthentifizierung und Port 20 für die Datenübertragung. Wir können dieses Verhalten jedoch ändern, indem wir eine geringfügige Änderung an der Datei /etc/vsftpd.conf vornehmen. Verwenden Sie am Ende der Datei die Direktive listen_port, um einen anderen Port anzugeben, den vsftpd verwenden soll.

# podman pod create --name vsftpdapp -p 21:21  --network bridge

Erstellen Sie einen Container im aktiven Modus unter Verwendung des Standardbenutzerkontos mit einem gebundenen Datenverzeichnis:

# mkdir /vsftpd_shared
# podman run --pod vsftpdapp --name vsftpd-server -v /vsftpd_shared:/home/vsftpd -d fauria/vsftpd:la
test

Um den Benutzer und das Passwort anzuzeigen, können Sie den folgenden Befehl verwenden.

# podman logs vsftpd-server

Erstellen Sie einen Produktionscontainer mit einem benutzerdefinierten Benutzerkonto, ein Datenverzeichnis binden und sowohl den aktiven als auch den passiven Modus aktivieren:

# podman run --pod vsftpdapp --name vsftpd-server --env FTP_USER=myuser --env FTP_PASS=mypass --env
PASV_ADDRESS=127.0.0.1 --restart=always -d fauria/vsftpd:latest

Manuell einen neuen FTP-Benutzer zu einem bestehenden Container hinzufügen:

# podman exec -i -t vsftpd-server bash
# mkdir /home/vsftpd/myuser
# chmod +x+o /home/vsftpd/myuser
# echo -e "myuser\nmypass" >> /etc/vsftpd/virtual_users.txt

Zugriff auf den FTP-Server-Container mit dem FTP-Befehl

ftp 192.168.56.101

Linux
  1. FTP-Server unter CentOS 7 / RHEL 7 installieren und konfigurieren – (vsftpfd)

  2. Verwenden von Dateien und Geräten in Podman-Containern ohne Root

  3. So verwenden Sie Podman in einem Container

  4. Schnelle und schmutzige Hacks:einzeiliger HTTP-Server

  5. Überblick über FTP und SFTP

Remote VS Code schnell und schmutzig einfach 100%

1 DNS-Server-Container Podman schmutzig einfach

1 Nagios xi Server-Container Schnell und einfach

HAProxy Server Container Podman schnell 100% einfach

Gewusst wie:Erste Schritte mit Windows-Containern und Docker

4 einfache Schritte zum Installieren und Konfigurieren von VMware Server 2 unter Linux