
smbclient-ngは、SMB共有と対話するための高速でユーザーフレンドリーな方法です。

smbclient-ngは、SMB共有を操作するための高速でユーザーフレンドリーな方法です。
[!NOTE] Goで書かれた新しいsmbclient-ngをチェックしてください。デフォルトでより高速で、クロスプラットフォーム対応です!
acls: 現在の作業ディレクトリ内のファイルとフォルダのACLを一覧表示します。構文: aclsbat: ファイルの内容を整形して表示します。構文: bat <file>bhead: ファイルの先頭n行を整形して表示します。構文: bhead <file>btail: ファイルの末尾n行を整形して表示します。構文: btail <file>cat: ファイルの内容を取得します。構文: cat <file>cd: 現在の作業ディレクトリを変更します。構文: cd <directory>close: リモートマシンへのSMB接続を閉じます。構文: closeconnect: リモートマシンに接続します(接続がタイムアウトした場合に便利です)。構文: connectdir: 現在の作業ディレクトリの内容を一覧表示します。構文: direxit: smbclient-ngスクリプトを終了します。構文: exitget: リモートファイルを取得します。構文: get [-r] <directory or file>help: このヘルプメッセージを表示します。構文: helphead: リモートファイルの先頭n行を取得します。構文: head <file>history: コマンド履歴を表示します。構文: historyinfo: サーバーまたは共有に関する情報を取得します。構文: info [server|share]lbat: ローカルファイルの内容を整形して表示します。構文: lbat <file>lcat: ローカルファイルの内容を表示します。構文: lcat <file>lcd: 現在のローカルディレクトリを変更します。構文: lcd <directory>lcp: ローカルファイルのコピーを作成します。構文: lcp <srcfile> <dstfile>lls: 現在のローカルディレクトリの内容を一覧表示します。構文: llslmkdir: 新しいローカルディレクトリを作成します。構文: lmkdir <directory>lpwd: 現在のローカルディレクトリを表示します。構文: lpwdlrename: ローカルファイルの名前を変更します。構文: lrename <oldfilename> <newfilename>lrm: ローカルファイルを削除します。構文: lrm <file>lrmdir: ローカルディレクトリを削除します。構文: lrmdir <directory>ls: 現在のリモート作業ディレクトリの内容を一覧表示します。構文: lsltree: ローカルディレクトリのツリー表示を行います。構文: ltree [directory]metadata: ファイルまたはディレクトリのメタデータを取得します。構文: metadata <file|directory>mkdir: 新しいリモートディレクトリを作成します。構文: mkdir <directory>module: 追加機能用の特定のモジュールを読み込みます。構文: module <name>mount: ローカルマシン上にリモート共有のマウントポイントを作成します。構文: mount <remote_path> <local_mountpoint>put: ローカルファイルまたはディレクトリをリモートディレクトリにアップロードします。構文: put [-r] <directory or file>reconnect: リモートマシンに再接続します(接続がタイムアウトした場合に便利です)。構文: reconnectreset: TTY出力をリセットします。バイナリファイルをstdoutに出力した後に壊れた場合に便利です。構文: resetrm: リモートファイルを削除します。構文: rm <file>rmdir: リモートディレクトリを削除します。構文: rmdir <directory>sessions: SMBセッションを管理します。構文: sessions [interact|create|delete|execute|list]shares: リモートマシンが提供するSMB共有を一覧表示します。構文: sharessizeof: フォルダのサイズを再帰的に計算します。構文: sizeof [directory|file]tail: リモートファイルの末尾n行を取得します。構文: tail <file>tree: リモートディレクトリのツリー表示を行います。構文: tree [directory]umount: ローカルマシン上のリモート共有のマウントポイントを削除します。構文: umount <local_mount_point>use: SMB共有を使用します。構文: use <sharename>smbclient-ng をインストールするには、pip、pip3、pipx を使用できます。以下のいずれかのコマンドをターミナルで実行すると、smbclient-ng をインストールできます:
pip を使用する場合:
python3 -m pip install smbclientng
pip3 を使用する場合:
pip3 install smbclientng
pipx を使用する場合:
pipx install smbclientng

$ ./smbclient-ng.py
_ _ _ _
___ _ __ ___ | |__ ___| (_) ___ _ __ | |_ _ __ __ _
/ __| '_ ` _ \| '_ \ / __| | |/ _ \ '_ \| __|____| '_ \ / _` |
\__ \ | | | | | |_) | (__| | | __/ | | | ||_____| | | | (_| |
|___/_| |_| |_|_.__/ \___|_|_|\___|_| |_|\__| |_| |_|\__, |
by @podalirius_ v2.1.8 |___/
usage: smbclientng [-h] [--debug] [--no-colors] [-l LOGFILE] [-T TIMEOUT] [-a ADVERTISED_NAME] [-C COMMAND] [-S STARTUP_SCRIPT] [-N] -H HOST [-P PORT] [-d DOMAIN] [-u USER]
[-p [PASSWORD] | --no-pass | --hashes [LMHASH:]NTHASH | --aes-key HEXKEY | -k | --kdcHost KDCHOST]
smbclient-ng, a fast and user-friendly way to interact with SMB shares.
options:
-h, --help show this help message and exit
Config:
--debug Enable debug mode.
--no-colors Disable colored output.
-l LOGFILE, --logfile LOGFILE
Log file path.
-T TIMEOUT, --timeout TIMEOUT
Timeout for SMB connections (default: 3s)
-a ADVERTISED_NAME, --advertised-name ADVERTISED_NAME
Advertised machine name.
Commands:
-C COMMAND, --command COMMAND
smbclient-ng commands to execute.
-S STARTUP_SCRIPT, --startup-script STARTUP_SCRIPT
Startup script with commands.
-N, --not-interactive
Non-interactive mode.
Target:
-H HOST, --host HOST Target SMB Server IP or hostname.
-P PORT, --port PORT Target SMB Server port (default: 445).
Authentication & Connection:
-d DOMAIN, --domain DOMAIN
Authentication domain.
-u USER, --user USER Username for authentication.
Secrets:
-p [PASSWORD], --password [PASSWORD]
Password.
--no-pass Do not prompt for a password.
--hashes [LMHASH:]NTHASH
NT/LM hashes.
--aes-key HEXKEY AES key for Kerberos authentication.
-k, --kerberos Use Kerberos authentication.
--kdcHost KDCHOST Fully qualified domain name (FQDN) of key distribution center (KDC) for Kerberos.
smbclient-ng -d "LAB" -u "Administrator" -p 'Admin123!' --host "10.0.0.201"
プルリクエストを歓迎します。他の機能を追加したい場合は、お気軽にIssueを開いてください。