WinSCP mit sudo nutzen
Vorwort
Diese Dokumentation beschreibt den Installationsvorgang bzw. Nutzung von WinSCP mit sudo-Rechten.
Bitte vergewissern Sie sich, dass Ihr System über die nötigen Voraussetzungen verfügt, wie in der Infobox beschrieben. Weiterhin sind Grundkenntnisse im Umgang mit Linux erforderlich, da die Vorgehensweise, wie sie hier beschrieben ist, in manchen Teilen abweichen kann. Kein System ist wie das Andere. Die Dokumentation wurde sorgfältig von mir geprüft. Dennoch kann ich keinerlei Haftung für Schäden an Ihrem System oder eine Gewährleistung übernehmen. Bitte verwenden Sie diese Dokumentation auf eigene Gefahr.
Verwendete Software:
Voraussetzungen:
Weitere, empfohlene Dokumentationen:
Schritt für Schritt
Root-Rechte einräumen
Während der gesamten Dokumentation werden Root-Rechte benötigt. Um auf das Voranstellen von sudo
zu verzichten, verschaffen Sie sich für die gesamte Sitzung erhöhte Rechte mit:
# sudo -i
Sudoers-Eintrag erstellen
Da die SFTP-Session mit der User-ID des angemeldeten Benutzers gestartet wird, sind Datei- und Verzeichniszugriffe nur im Rahmen der dem Benutzer zugewiesesen Benutzerechte möglich.
Ein nachträgliches Anheben des Benutzers, z.B. mit sudo -i
und einer erneuten Passwortabfrage lässt das SFTP-Protokoll nicht zu.
Es wird also ein Benutzer benötigt, der eine SFTP-Session mit erhöhten Rechten (sudo
) starten darf, ohne dass dabei eine zusätzliche Passworteingabe nötig ist.
Dieses Recht kann in der Sudoers-Datei erteilt werden.
Zunächst wird der Ort der SFTP-Binary ermittelt:
# cat /etc/ssh/sshd_config | grep -i sftp-server
Subsystem sftp /usr/lib/openssh/sftp-server
Erstellen Sie nun eine neue Datei /etc/sudoers.d/winscp
mit nach folgendem Syntax:
Ersetzen Sie <USER>
durch den gewünschten Benutznamen.
# nano /etc/sudoers.d/winscp
<USER> ALL=(root) NOPASSWD: /usr/lib/openssh/sftp-server
Es kann auch eine Gruppe angegeben werden. Für Gruppen muss %
vorangestellt werden:
%<GROUP> ALL=(root) NOPASSWD: /usr/lib/openssh/sftp-server
Schränken Sie die Zugriffsrechte auf die Datei ein:
# chmod 440 /etc/sudoers.d/winscp
WinSCP einrichten
Öffnen Sie WinSCP und fügen Sie unter SFTP in den Erweiterten Einstellungen folgenden Parameter hinzu:
sudo /usr/lib/openssh/sftp-server
Abschluss
Verbinden Sie sich nun mit dem Server.
Sie haben jetzt Vollzugriff auf sämtliche Dateien und Verzeichnisse.