Das folgende Tutorial hat für mich funktioniert und bietet hilfreiche Screenshots. Um sich als normaler Benutzer mit sudo-Berechtigungen anzumelden, mussten lediglich einige WinSCP-Optionen angepasst werden:
http://cvlive.blogspot.de/2014/03/how-to-login-in-as-ssh-root-user-from.html
Stellen Sie das Sitzungs- / Dateiprotokoll auf: SCP, geben Sie die IP-Adresse des Hosts / der Instanz, den Port - normalerweise 22 - und den regulären Benutzernamen ein. Geben Sie die Kennwortanmeldeinformationen ein, wenn die Anmeldung dies erfordert. Fügen Sie die entsprechende private Schlüsseldatei des Benutzers in Advanced / SSH / Authentication hinzu.
Durch Deaktivieren der erweiterten / SSH / Authentifizierung / Versuch "Tastaturinteraktive" Authentifizierung sollte Advanced / Environment / SCP Shell / Shell / Shell: sudo su - Sudo-Berechtigungen für den Zugriff auf Webserver-Verzeichnisse als Benutzer ohne Eigentümer bereitstellen.
Update: 08/03/2017
Die WinSCP-Protokollierung kann hilfreich sein, um Probleme zu beheben.
woncp.net/eng/docs/logging:
[WinSCP] Die Protokollierung kann auf der Seite "Protokollierung" des Dialogfelds "Einstellungen" aktiviert werden. Die Protokollierung kann auch über die Befehlszeile mit den Parametern / log und / xmllog aktiviert werden. Dies ist besonders bei Skripten hilfreich. In der .NET-Assembly wird die Sitzungsprotokollierung mithilfe von Session.SessionLogPath1) aktiviert.
Abhängig von WinSCP-Verbindungsfehlern muss bei einigen Serverinstallationen möglicherweise eine Anweisung zur Datei (Ubunto, CentOS, anderer Linux-Server) / etc / sudoers hinzugefügt werden, damit für einen bestimmten Benutzer kein TTY erforderlich ist. Das Erstellen einer Datei in /etc/sudoers.d/ (mit einem Tool wie Amazon Command Line Interface oder PuTTY) ist möglicherweise eine bessere Option als das Bearbeiten von / etc / sudoers. Einige / etc / sudoers-Versionen empfehlen es:
Diese Datei MUSS mit dem Befehl 'visudo' als root bearbeitet werden. Bitte ziehen Sie in Betracht, lokalen Inhalt in /etc/sudoers.d/ hinzuzufügen, anstatt diese Datei direkt zu ändern. Weitere Informationen zum Schreiben einer Sudoers-Datei finden Sie in der Manpage.
Wenn Sie eine Sudoers-Datei (als Root) über die Befehlszeile bearbeiten, sollte der Befehl 'visudo' zum Öffnen der Datei verwendet werden, da die Datei auf Syntaxfehler analysiert wird. /etc/sudoers.d/ -Dateien gehören normalerweise root und werden mit minimalen Berechtigungen geändert. Auf die Standarddatei / etc / sudoers kann verwiesen werden, da sie bei der Installation automatisch die empfohlenen chmod-Berechtigungen haben sollte. zB: 0440 r - r -----.
superuser.com/a/869145:
visudo -f /etc/sudoers.d/somefilename
Defaults:username !requiretty
Hilfreiche Links:
- Stackoverflow: stackoverflow.com/questions/25688850/cloud-init-how-to-add-default-user-to-sudoers-d
- www.digitalocean.com/community/tutorials/how-to-edit-the-sudoers-file-on-ubuntu-and-centos
WinSCP-Forum: - winscp.net/forum/viewtopic.php?t=3046 - winscp.net/forum/viewtopic.php?t=2109
WinSCP Doc: https://winscp.net/eng/docs/faq_su
Mit dem SCP-Protokoll können Sie den folgenden Befehl als benutzerdefinierte Shell auf der Seite SCP / Shell des Dialogfelds Erweiterte Site-Einstellungen angeben:
sudo -s
[...]
Da WinSCP keine Terminalemulation implementieren kann, muss die Option sudoers deaktiviert sein.
Anweisungen in Ubuntu Apache / etc / sudoers empfehlen, Anweisungen zu /etc/sudoers.d hinzuzufügen, anstatt / etc / sudoers direkt zu bearbeiten. Abhängig von der Installation kann das Hinzufügen einer Direktive zu /etc/sudoers.d/cloud-init ebenfalls funktionieren.
Es kann hilfreich sein, einen SSH-Testbenutzer mit Sudo-Berechtigungen zu erstellen, indem Sie die in der Instanzdokumentation angegebenen Schritte ausführen, um sicherzustellen, dass der Benutzer Instanzeinstellungen empfohlen hat und alle Aktualisierungen von Server-Sudoer-Dateien durchgeführt und entfernt werden können, ohne andere Benutzer zu beeinträchtigen.