- Mitglied seit
- 15. Mai 2008
- Beiträge
- 21.900
- Punkte für Reaktionen
- 14
- Punkte
- 0
Gelegentlich will man noch ein wenig mehr über die gemeinsamen Ordner oder auch (Samba-)Shares wissen. Hier eine Statusabfrage nach den wichtigsten Samba-Werten. Für manche Abfrage ist das Kennwort des admin nötig. Deshalb wird es zu Beginn abgefragt. Das ist eine nicht so schöne Geschichte; daher diese Seite auf keinen Fall außerhalb des lokalen Netzes einsetzen, weil sonst das Kennwort unverschlüsselt über Web läuft. Aber ohne Kennwort funktionieren die meisten Abfragen nicht.
(1) Die Datei /usr/syno/synoman/webman/3rdparty/samba.cfg enthält:
(2) Die Datei /usr/syno/synoman/phpsrc/samba/samba.php enthält:
Wie immer der Hinweis, dass alles auf eigene Kappe geht. Ich hab darauf verzichtet, das PHP-Skript als Anhang zu schicken, damit sich auch jeder sofort überzeugen kann, dass das Kennwort nicht von mir durch dubiose Funktionen ausspioniert wird. Nochmal der Hinweis: Dieses Skript-Seite nicht außerhalb des lokalen Netzes und am besten auch nur so wie vorgeschlagen im Disk Station Manager aufrufen. Auf keinen Fall in andere Webseiten als (embedded) Frame integrieren, da man das Passwort im Page-Container lesen könnte.
Und zuletzt wieder das Motivations-Bildchen:
|
(1) Die Datei /usr/syno/synoman/webman/3rdparty/samba.cfg enthält:
Rich (BBCode):
text = Samba
description = Samba
type = embedded
path = /phpsrc/samba/samba.php
(2) Die Datei /usr/syno/synoman/phpsrc/samba/samba.php enthält:
PHP:
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>cronjobs</title>
<style>body,input,td{font:12px Arial;margin-right:1px;margin-bottom:1px}
pre{font-size:10px;padding:2px;background-color:#eef}</style>
</head><body>
<form name="f" method="post" action="samba.php">
<input type="hidden" id="action" name="action" value="">
Admin's password: <input type="password" name="password" value="<?php print $_REQUEST['password'] ?>" />
<input type="button" value="go" onclick="submit()" /><br/><br/>
<?php
if ($_REQUEST['password'] != '') {
print '<pre title="net domain">';
passthru('net -U admin%'.$_REQUEST['password'].' domain|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net file">';
passthru('net -U admin%'.$_REQUEST['password'].' file|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net groupmap list">Groupmap list:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' groupmap list|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net lookup master">Lookup master:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' lookup master|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net lookup ldap">Lookup LDAP-Server:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' lookup ldap|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net lookup kdc">Lookup Kerberos-Server:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' lookup kdc|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net lookup dc">Lookup Domain-Server:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' lookup dc|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net printq">';
passthru('net -U admin%'.$_REQUEST['password'].' printq|egrep -v "^[\t\n ]*$"');
print '</pre><pre title="net server">Additional servers:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' server|grep -v "^[\t\n ]*$"');
print '</pre><pre title="net session">Samba sessions:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' session|grep -v "^[\t\n ]*$"');
print '</pre><pre title="net share">Samba shares:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' share|grep -v "^[\t\n ]*$"');
print '</pre><pre title="net status sessions">Status sessions:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' status sessions|grep -v "^[\t\n ]*$"');
print '</pre><pre title="net status shares">Status shares:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' status shares|grep -v "^[\t\n ]*$"');
print '</pre><pre title="net user">Samba users:<br/>';
passthru('net -U admin%'.$_REQUEST['password'].' user|grep -v "^[\t\n ]*$"');
print '</pre><pre title="nmblookup -S `uname -n`">NMB-Lookup:<br/>';
passthru('nmblookup -S `uname -n`|grep -v "^[\t\n ]*$"');
print '</pre><pre title="smbstatus">SMB-Status:<br/>';
passthru('smbstatus|grep -v "^[\t\n ]*$"');
print '</pre><pre title="/usr/syno/etc/smb.conf">/usr/syno/etc/smb.conf:<br/>';
passthru('cat /usr/syno/etc/smb.conf');
print '</pre>';
}
?>
</form></body></html>
Wie immer der Hinweis, dass alles auf eigene Kappe geht. Ich hab darauf verzichtet, das PHP-Skript als Anhang zu schicken, damit sich auch jeder sofort überzeugen kann, dass das Kennwort nicht von mir durch dubiose Funktionen ausspioniert wird. Nochmal der Hinweis: Dieses Skript-Seite nicht außerhalb des lokalen Netzes und am besten auch nur so wie vorgeschlagen im Disk Station Manager aufrufen. Auf keinen Fall in andere Webseiten als (embedded) Frame integrieren, da man das Passwort im Page-Container lesen könnte.
Und zuletzt wieder das Motivations-Bildchen:
|