Plesk FTP Nutzer und Passwort auslesen

15/05/2010

Wer viel mit seinem Plesk Server spielt (ja, ich mache sowas auch ab und an mal), benötigt desöfteren die Möglichkeit Benutzernamen und Passwörter seiner Zugänge sich anzeigen zu lassen. Bestes Beispiel für solch ein Szenario wäre ein Backupscript welches Webseiten, Datenbanken, FTP-Accounts, etc. sichert und dazu noch die Informationen aus der Datenbank zieht und sie in ein Dokument schreibt.

Ob das jemand macht bezweifel ich, aber die Möglichkeit gibt es. Mittels eines einfachen Befehl ist es möglich die Daten aus der Datenbank zu lesen:

Um nun loslegen zu können bedarf es einer SSH Verbindung zu deinem Plesk Server. Mittels ssh -l benutzername serveradresse erhälst Du den Zugriff über die Konsole auf deinen Server. Um die Datenbank nun abzufragen melde Dich als Nutzer/Adminstrator an deinem System an und gebe den Befehl ein:

1
mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e "select * from sys_users";

Jetzt erhälst Du eine Ausgabe, die so aussieht:

1
2
3
4
5
+----+---------------+----------------+------------------------+-------------+-------+
|  id  | login      | account_id | home                      | shell         | quota |
+----+---------------+----------------+------------------------+-------------+-------+
|  1   | username  |        1            | /pfad/zum/hosting | /bin/bash |   0     |
+----+---------------+----------------+------------------------+-------------+-------+

Jetzt müssen wir uns nur noch um das Passwort der ID 1 kümmern und das bekommen wir mit einer neuen Abfrage dann auch direkt in der Konsole präsentiert:

1
mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e "select * from accounts where id = 1";

Ausgabe sieht dann ungefähr so aus:

1
2
3
4
5
+----+-------+----------+
| id | type  | password |
+----+-------+----------+
|  1 | plain | p4ssw0rd |
+----+-------+----------+

Das war’s. ;)

15 REAKTIONEN

{ 15 comments… read them below or add one }

1 Big2k 25.05.2010

Kleiner Verbesserungsvorschlag. Man muss die account_id und nicht die id auswählen. :-)

Reply

2 Adrian 25.05.2010

Danke für die Info. Natürlich kannst Du auch eine andere ID abfragen.

VG

Reply

3 Alex 08.07.2010

kannst die sql-abfragen auch noch verbinden, dann bekommst du alle nutzernamen mit dem passwort

mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e “select login,password from sys_users,accounts where sys_users.id=accounts.id”;

Reply

4 Stefan 16.09.2010

Danke, genau das hab ich gesucht^^
vielen dank noch mal :) )

Reply

5 Karsten 12.11.2010

Ich frag mich grade ob man irgendwie ach das FTP Passwort von meinem Backup FTP-Repository Account herausfinden kann.

Dummerweise kenn ich dieses nicht mehr und müsste wenn ich es ändere,
das neue Passwort bei jedem Backup auf dem Server neu eintragen.

Weiß da jemand vielleicht mehr?

Reply

6 Adrian 12.11.2010

Wo hast Du denn dein FTP Backup denn liegen (Anbieter)?

Reply

7 Karsten 12.11.2010

Bei 1&1. Nur leider kann man seit kurzen das passwort nicht mehr sehen sondern nurnoch ändern.

Reply

8 Adrian 12.11.2010

Glaube weniger, dass man Dir gestatten wird dort irgendwelche Kennwörter auslesen zu können. Bleibt wohl nur noch das Kennwort dort zu ändern und später irgendwo zu dokumentieren.

Reply

9 Karsten 15.11.2010

Das ich es auf dem ftp nicht herausbekomme denk ich auch.Ich dachte nur, da es in plesk schon einige Mal eingerichtet wurde, müsste es irgendwo dort auf meinem Server gespeichert sein.

Reply

10 Adrian 09.12.2010

Bist Du hier schon weitergekommen Karsten?

Reply

11 siroques 14.12.2010

Habe das ganze nochmal etwas verschönt.
Nun wird die Domain inkl. Benutzername und Passwort ausgegeben. ;)

mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e ‘select domains.name,sys_users.login,password from sys_users left join accounts on (sys_users.account_id = accounts.id) left join domains on (sys_users.id = domains.id);’

Reply

12 Kime 26.12.2010

siroques mit dein code bekomme ich fehler
-bash: syntax error near unexpected token `(‘

Adrian du bist echt Supper man. Das habe ich auch gesucht, fehlt nur noch datenbank.das hastdu auch beschtimmt ich suche weiter ;)

LG

Reply

13 Adrian 27.12.2010

Moin Kime,

einfach nach dem Aufruf psa -e und am Ende das Hochkomma nochmal neu setzen.

mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa
-e 'select domains.name,sys_users.login,password
from sys_users left join accounts on
(sys_users.account_id = accounts.id) left join
domains on (sys_users.id = domains.id);'

Dann klappt das auch ;) Achja für den Aufruf benötigst Du Administrationsrechte (root).

Reply

14 siroques 27.12.2010

Yep, weiß auch nicht warum der Blog hier die Hochkommatas in Punkte konvertiert hat. 8)

Reply

15 Adrian 27.12.2010

Keine Ahnung warum; ist passiert. Mal sehen, ob ich das irgendwie ändern kann. Sry. Hauptsache die Lösung funktioniert.

Reply

Der Blog lebt von Deinem Kommentar!

Kommentarregeln: Bleib cool! Kritisch ist in Ordnung, aber wenn du unhöflich bist, dann lösche ich deinen Kommentar. Bitte benutze deinen persönlichen Namen, Nickname oder Initialen, jedoch nicht den Namen eines Unternehmens. Dies wird als Spam gewertet und gelöscht. Der Zusammenhang zwischen Namen und URL sollte nicht offensichtlich auf Spam hindeuten! ♥ Ansonsten, vielen Dank für den Kommentar und viel Spaß mit meinem Blog.

« Zurückblättern

Vorblättern »