Bei der Verwaltung eines Linux-Servers ist es ein häufiges Sicherheitsproblem, Benutzern eingeschränkten Zugriff für Dateiübertragungen zu gewähren, ohne ihnen vollen Shell-Zugriff zu gewähren. Zwei Tools, die dies ermöglichen, sind rssh und scponly. Mit diesen eingeschränkten Shells können Benutzer bestimmte Dateiübertragungsvorgänge über SCP, SFTP und rsync durchführen, während die Ausführung von Befehlen verhindert wird.
In diesem Leitfaden werden wir die Installation und Einrichtung von rssh und scponly auf einem Linux-System behandeln.
Die meisten Linux-Distributionen stellen rssh in ihren Paket-Repositories zur Verfügung. Sie können es mit den folgenden Befehlen installieren:
Für Debian/Ubuntu:
sudo apt update && sudo apt install rssh -y
Für CentOS/RHEL:
sudo yum install rssh -y
Für Arch Linux:
sudo pacman -S rssh
Nach der Installation konfigurieren Sie rssh, indem Sie seine Konfigurationsdatei bearbeiten:
sudo nano /etc/rssh.conf
Dekommentieren Sie die erforderlichen Optionen, um SCP, SFTP oder rsync zuzulassen. Beispiel:
allowscp
erlaubtftp
erlaubtrsync
Speichern und beenden Sie die Datei.
Um rssh als Shell für einen bestimmten Benutzer einzurichten, führen Sie aus:
sudo usermod -s /usr/bin/rssh username
Nun kann der Benutzer nur noch erlaubte Operationen über SCP, SFTP oder rsync durchführen.
Für Debian-basierte Systeme:
sudo apt update && sudo apt install scponly -y
Für CentOS/RHEL:
sudo yum install scponly -y
Für Arch Linux:
sudo pacman -S scponly
Um einen Benutzer auf scponly zu beschränken, ändern Sie seine Shell:
sudo usermod -s /usr/bin/scponly benutzername
Um sicherzustellen, dass der Benutzer richtig eingeschränkt ist, testen Sie mit:
ssh benutzername@server
Es sollte den Shell-Zugriff verweigern, aber SCP/SFTP-Dateiübertragungen erlauben.
Um die Einrichtung zu überprüfen, versuchen Sie Dateiübertragungen mit:
Für SCP:
scp datei.txt benutzername@server:/home/benutzername/
Für SFTP:
sftp benutzername@server
Bei korrekter Einrichtung sollten die Benutzer in der Lage sein, Dateien zu übertragen, aber keine Befehle auszuführen.
Mit rssh und scponly können Administratoren die Sicherheit erhöhen, indem sie den Benutzerzugriff auf den Dateitransfer beschränken. Dies verhindert unbefugten Shell-Zugriff und ermöglicht gleichzeitig den notwendigen Dateiaustausch. Achten Sie darauf, die Konfigurationen regelmäßig zu aktualisieren, um sie mit den Sicherheitsrichtlinien in Einklang zu bringen.