SMB Check
Dieses Script überprüft die Funktionalität einer SMB Freigabe. Es prüft ob ein Login per übergebenen Username und Passwort erfolgreich ist. Weiterhin kann das Script über Parameter auch die SMB Freigabe auflisten.
Allgemeine Information
Das Script findet ihr am Ende des Artikels. Es wurde von Fabian Meier und Ullrich Weichert erstellt.
Usage
./check_smb -h Purpose of check_smb: ===================== Checking the given SMB target. This script shows if the given SMB target is online. It checks this by login into the share. usage: -h|--help Print this help... -v|--version Prints some releaseinfos... -u|--user Specify a user. -p|--password Specify the login password. -W|--workgroup Specify a workgroup aka domain. -d|--debug Specify SMB debuglevel(default 0). -H|--host S<a href="https://www.fu-solutions.de/wp-content/uploads/2017/06/check_smb.zip">check_smb</a>pecify the SMB server. -V|--verbose Fancy output - not just numbers... -T|--path SMB target to check... -b|--batch Boring Output for monitoring systems...:( 0 = Everything is ok! 1 = Something went terribly wrong!
Examples
Einfacher lesbarer Check
./check_smb -H localhost -u test -p PASSWORD -W Arbeitsgruppe -T Freigabe
Ausgabe:
## IF OK OK: Connected to host localhost and SMB directory Freigabe. ## IF not OK CRITICAL: Can't open SMB directory.
Check mit erweitertem Output
./check_smb -H localhost -u test -p PASSWORD -W Arbeitsgruppe -T Freigabe -V
Ausgabe:
## IF OK OK: Connected to host localhost and SMB directory Freigabe." List of Files: ========== File: . File: .. File: TestFile.DDD Connection to SMB host "localhost" closed. ## IF not OK CRITICAL: Can't open SMB directory. ERROR: No such file or directory
Weitere nützliche Parameter
Für einen Check mit erweitertem SMB Logging kann der Parameter -d N
oder --debug N
übergeben werden. Statt N eine Zahl zwischen 1 und 10. Der Parameter -b
oder --batch
sorgt dafür, dass das Script nur 0 oder 1 zurück gibt.
0 = Everything is ok! 1 = Something went terribly wrong!
Requirements
Mandatory parameters
Das Script überprüft die benötigten Parameter selbst und gibt bei fehlenden Parametern eine Warnung aus:
#[... Auszug Fehlermeldeung ...] ERROR: No User is defined, use parameter -u or --user. Exiting... ERROR: ./check_smb - arguments required. Mandatory paramater: user, host, password and targetpath. #[... Auszug Fehlermeldeung ...]
OS Requirements
Das Script benötigt die Standard PERL Bibliotheken. Zusätzlich verwendet es das Perl-Module Filesys-SmbClient. Beim Ausführen des Scriptes überprüft das Script ob die Packete installiert sind und gibt eine Warnung aus, wenn die Abhängigkeiten nicht erfüllt sind. Die Perlmodule können dann über den entsprechenden Paketmanager installiert werden.
RHEL
yum install perl-Filesys-SmbClient.x86_64 ## Neuere RHEL Versionen dnf install perl-Filesys-SmbClient.x86_64
Debian
apt-get install libfilesys-smbclient-perl
Warnung falls eine Abhängigkeit nicht erfüllt ist.
ERROR: Module "Filesys::SmbClient" is not installed! Requirements: RHEL perl-Filesys-SmbClient.x86_64 Deb libfilesys-smbclient-perl Exiting...
Download
Hier geht es zum Download des Scriptes "check_smb"
Schreibe einen Kommentar