SFTP oder SCP-Serverzugriff ohne root aber mit "sudo" über einen Dateimanger von Linux
Hallo Community,
ich habe für einen Windows-Client einen sftp-Zugriff auf einen Linux-Server (Ubuntu 14.04) über WinSCP eingerichtet. Ziel dabei war es, dies ohne root-Benutzer zu ermöglichen. Dies wurde so gelöst, dass der Benutzer nur einen Serverzugriff über ssh mit ssh-Schlüssel und Passprhase eingerichtet bekommen hat und dieser Benutzer per "sudo" arbeiten kann. Dank einer Anleitung mit einer kleinen Ergänzung gelang dies auch mit dem Dateimanger WinSCP. Es musste nur folgendes in der /etc/sudoes.tmp hinzugefügt werden:
benutzernamer ALL=NOPASSWD: /bin/su -c /usr/lib/openssh/sftp-server
So kann man nun auch Verzeichnisse erstellen und Dateien verschieben, ohne mit dem Benutzer root zu arbeiten, wenn auch mit root-Rechten.
Danach stellten sich mir 2 Fragen zu denen ich gerne eine Antwort hätte:
1. Diese Methode scheint mir doch sicherer zu sein wie z.B. bei Arbeiten im Webverzeichnis den Benutzer der Gruppe des Apache-Webservers "www-data" hinzuzufügen und der Gruppe Bearbeitungsrechte zu geben, da man damit auch den Webserver ein generelles Schreibrecht ermöglicht. Der Benutzerzugriff über ssh-Schlüssel und Passphrase ist relativ sicher, auch wenn er mit sudo den sftp-Server startet um damit für die Session root-Rechte erlangt. Habe ich hier etwas übersehen. Wie seht Ihr das?
2. Wie muß ich einen Dateimanger unter einem LinuxClient ansprechen um dieses auch von Linux zu ermöglichen?
Vielen Dank schon mal für Euer Wissen
Gruß
Christofer
ich habe für einen Windows-Client einen sftp-Zugriff auf einen Linux-Server (Ubuntu 14.04) über WinSCP eingerichtet. Ziel dabei war es, dies ohne root-Benutzer zu ermöglichen. Dies wurde so gelöst, dass der Benutzer nur einen Serverzugriff über ssh mit ssh-Schlüssel und Passprhase eingerichtet bekommen hat und dieser Benutzer per "sudo" arbeiten kann. Dank einer Anleitung mit einer kleinen Ergänzung gelang dies auch mit dem Dateimanger WinSCP. Es musste nur folgendes in der /etc/sudoes.tmp hinzugefügt werden:
benutzernamer ALL=NOPASSWD: /bin/su -c /usr/lib/openssh/sftp-server
So kann man nun auch Verzeichnisse erstellen und Dateien verschieben, ohne mit dem Benutzer root zu arbeiten, wenn auch mit root-Rechten.
Danach stellten sich mir 2 Fragen zu denen ich gerne eine Antwort hätte:
1. Diese Methode scheint mir doch sicherer zu sein wie z.B. bei Arbeiten im Webverzeichnis den Benutzer der Gruppe des Apache-Webservers "www-data" hinzuzufügen und der Gruppe Bearbeitungsrechte zu geben, da man damit auch den Webserver ein generelles Schreibrecht ermöglicht. Der Benutzerzugriff über ssh-Schlüssel und Passphrase ist relativ sicher, auch wenn er mit sudo den sftp-Server startet um damit für die Session root-Rechte erlangt. Habe ich hier etwas übersehen. Wie seht Ihr das?
2. Wie muß ich einen Dateimanger unter einem LinuxClient ansprechen um dieses auch von Linux zu ermöglichen?
Vielen Dank schon mal für Euer Wissen
Gruß
Christofer
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 281324
Url: https://administrator.de/forum/sftp-oder-scp-serverzugriff-ohne-root-aber-mit-sudo-ueber-einen-dateimanger-von-linux-281324.html
Ausgedruckt am: 08.05.2025 um 05:05 Uhr
5 Kommentare
Neuester Kommentar
Moin,
Die Frage ist doch, wogegen Du dich absichern willst? Sicher beinhaltet auch imerm eine Vorgabe, was der Angriffsvektor ist. Soll der User in seinen Rechten beschränkt werden, daß er keien Blödsinn anstellt?
Soll verhindert werden, daß der Account gekapert udn mißbraucht wird?
was soll denn erreicht werden?
Erst dann kann man eine Aussage darüber treffen, was "sicher" ist.
lks
Die Frage ist doch, wogegen Du dich absichern willst? Sicher beinhaltet auch imerm eine Vorgabe, was der Angriffsvektor ist. Soll der User in seinen Rechten beschränkt werden, daß er keien Blödsinn anstellt?
Soll verhindert werden, daß der Account gekapert udn mißbraucht wird?
was soll denn erreicht werden?
Erst dann kann man eine Aussage darüber treffen, was "sicher" ist.
lks
Zitat von @Christofer:
Moin lks,
ja richtig, diese Frage muß man sicherlich stellen. Es geht hierbei nicht um die Möglichkeiten des Benuteraccount
einzuschränken, sondern lediglich darum das er von außen gekapert werden könnte.
Moin lks,
ja richtig, diese Frage muß man sicherlich stellen. Es geht hierbei nicht um die Möglichkeiten des Benuteraccount
einzuschränken, sondern lediglich darum das er von außen gekapert werden könnte.
o.k. Dann reichtes, den ssh-zugang mit Zertifikat abzusichern, passphrase vernünftig wählen und passwortanmeldung über ssh deaktivieren!
wichtiig ist, daß ssh auf dem aktuellen stand ist udn die Keys nicht irgendwie anfällig sind. In dr vergangenheit gab es da nämlich einige Pannen. bei ssh, bzw den Distributionen, wenn der Zufall eben nicht "richtiger" Zufall war.
Und wenn DU X-Forwardinh machst, kannst Du ophen weiteres dateimaner auf dem Server aufrufen.
lks
PS. Unter Windows nehme ich für solche Anwendungsfälle cygwin. das bringt schon einen x-server mit.
Zitat von @Christofer:
X-Forwarding wäre natürlich auch eine Lösung an die ich noch nicht gedacht habe. Das werde ich mal ausprobieren.
X-Forwarding wäre natürlich auch eine Lösung an die ich noch nicht gedacht habe. Das werde ich mal ausprobieren.
Bedenke aber, daß X-Forwarding nur zu Maschinen gemacht werden soltle, denen man vertraut. Ansonsten gibt Du Dein lokales System unter die Kontrolle des externen Systems.
lks