Ich habe einen Kunden, der ftp
Zugriff auf eine bestimmte Datei auf einem unserer Server haben möchte
Der Server läuft
CentOS 7
Root-Login ist deaktiviert
Passwort-Login ist deaktiviert (erfordert SSH-Schlüssel zum Login)
SSH erfolgt über einen nicht standardmäßigen Port
Ist es machbar/möglich, dem Client FTP-Zugriff auf die Datei zu gewähren? Ich habe das Gefühl, dass ich alle „Best Practices“ zur Sicherung der Server befolgt habe, und FTP scheint einige dieser Punkte zu untergraben.
Übersehe ich hier etwas? Müssen wir uns einen anderen Ansatz überlegen, um die Sicherheit aufrechtzuerhalten?
Antwort1
FTP ist grundsätzlich unsicher, da alles im Klaren übertragen wird.
Da Sie bereits SSH haben, verwenden Sie entwederscpodersftpbeide nutzen das SSH-Protokoll. Sie können sogar Clients wie Filezilla verwenden, um eine Verbindung zu Ihrem SFTP-Server herzustellen.
Wenn nicht bereits aktiviert, können Sie hinzufügen
Subsystem sftp /usr/lib/openssh/sftp-server
zu Ihrer Datei /etc/ssh/sshd_config.
Sie können den spezifischen Benutzer weiter sperren, indem Sie Anweisungen zur sshd_config hinzufügen (falls dies erforderlich ist).
Match User alice
# Force the connection to use SFTP and chroot to the required directory.
ForceCommand internal-sftp
ChrootDirectory /home/alice
# Disable tunneling, authentication agent, TCP and X11 forwarding.
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
Dadurch könnte Alice nur eine Verbindung über SFTP herstellen, nicht über SSH/SCP.
Antwort2
FTPS (FTP über SSL) ist vorhanden, Sie sollten jedoch die Verwendung von SCP in Betracht ziehen, wenn SSH bereits vorhanden ist.