Veröffentlicht in Linux, Tools

WinSCP: SFTP Server mit sudo-Befehl ausführen

Wer die Amazon Elastic Compute Cloud (kurz Amazon EC2) benutzt, der wird festgestellt haben, dass ein Login als root-Benutzer aus Sicherheitsgründen bei den von Amazon vorgegebenen Images nicht möglich ist. Stattdessen soll man sich als ec2-user anmelden und Befehle des Superusers mit dem Kommando sudo ausführen.

Verwendet man einen SFTP-Client (wie etwa WinSCP), dann kann das einen negativen Effekt haben. Möchte man nämlich über die grafische Oberfläche eine Datei öffnen, auf die der ec2-user normalerweise keinen Zugriff hat, bekommt man nur eine Permission denied-Anzeige:

Um das zu umgehen, muss der SFTP Server der EC2-Instanz mit dem sudo-Befehl ausgeführt werden.

Die Binärdatei des SFTP Servers kann sich je nach Installationen an folgenden Orten befinden: /usr/libexec/openssh/sftp-server/usr/lib/openssh/sftp-server oder /bin/sftp-server. Um die SFTP-Verbindung als Superuser zu benutzen, muss dann beispielsweise folgendes Kommando bei der Anmeldung ausgeführt werden: sudo su -c /usr/libexec/openssh/sftp-server.

Das kann man in WinSCP wie folgt einsellen:

  1. Gespeicherte Sitzung auswählen
  2. Bearbeiten
  3. Expertenmodus anwählen
  4. Umgebung -> SFTP auswählen
  5. sudo su -c /usr/libexec/openssh/sftp-server bei den Protokolloptionen für den SFTP Server eintragen
  6. Speichern
  7. Anmelden

Dieses Verfahren funktioniert allerdings nur, wenn man für die Anmeldung als ec2-user einen Schlüssel verwendet (und keine Passwort-Authentifikation).

Veröffentlicht in Linux

Linux Befehle

uptime  -> Speicherressourcen überwachen (Werte 1 min. – 5 min. – 15 min.)
top  -> Speicherressourcen überwachen (Werte 1min. – 5 min. – 15 min.)
finger  -> Wer ist angemeldet mit Zeitanzeige
who  -> Wer arbeitet am System
screen  -> um eine Sitzung für Partner zu eröffnen
screen -r -x  -> um in die vorher eröffnete Sitzung mit einzusteigen
netstat -anp  -> zeigt gestartete Dienste

ausführen in etc/init.d
./dienstname zap  -> beendet Dienst ohne zu überprüfen ob er läuft
./dienstname start  -> startet angegebenen Dienst
./dienstname stop  -> beendet angegebenen Dienst
./dienstname status  -> zeigt Status des Dienstes

ps -ax  -> zeigt alle laufenden Prozesse
dmesg  -> zeigt „blocks“ auf der Firewall an

tail -f /var/log/squid/access.log  -> zeigt „live“ die Einträge im Log an
cat /var/log/squid/access.log | grep „Suchbegriff“  -> um in einer Datei etwas zu suchen
tail -f /var/log/qmail-send/current  -> zeigt „live“ den Mailversand/empfang
fgrep -lir ‚ Suchbegriff ‚ *  -> sucht nach Suchbegriff in Unterordnern
fgrep -lir ‚ Suchbegriff ‚ * | xargs rm  -> löscht gefundene Dateien