wspsearch — SMB サーバに対して Windows Search プロトコル検索を実行
wspsearch
{//server/share} [--limit=results] [--search=phrase] [--kind=KIND] [--query=QUERY] [-?|--help] [--usage] [-d|--debuglevel=DEBUGLEVEL] [--debug-stdout] [-s|--configfile=CONFIGFILE] [--option=name=value] [-l|--log-basename=LOGFILEBASE] [--leak-report] [--leak-report-full] [-R|--name-resolve=NAME-RESOLVE-ORDER] [-O|--socket-options=SOCKETOPTIONS] [-m|--max-protocol=MAXPROTOCOL] [-n|--netbiosname=NETBIOSNAME] [--netbios-scope=SCOPE] [-W|--workgroup=WORKGROUP] [--realm=REALM] [-U|--user=[DOMAIN/]USERNAME[%PASSWORD]] [-N|--no-pass] [--password=STRING] [--pw-nt-hash] [-A|--authentication-file=FILE] [-P|--machine-pass] [--simple-bind-dn=DN] [--use-kerberos=desired|required|off] [--use-krb5-ccache=CCACHE] [--use-winbind-ccache] [--client-protection=sign|encrypt|off]
このプログラムは、samba(1)システムの一部である。
wspsearch は、WSP サービスが有効になっている SMB サーバーに対して Windows Search Protocol検索を実行するための簡単なユーティリティである。
SMB サーバ名か接続する先の IP アドレス。
サーバ上の共有名。
単純化された AQS (Advanced query syntax)のような 形式で指定されたクエリ。
Basic (AQS) 文法がサポートされている(参照節 を参照)。クエリは AND, OR と NOT 論理演算子 によって接続された一連の クエリで構成される。クエリ要素は本質的にはプロパティによって定義される 制限である。サポートされているサポートされてる演算子にはいくつか制限が あり、列挙された範囲のようないくつかのタイプのプロパティは全くサポート されてない。さらに、範囲値は AQS で指定されているようには区切られない (範囲は代わりに value-value として指定される)。Windows の検索 UI に 表示されるいくつかの特殊なケース(たとえば 'tiny'、'small'、'large' の ようなサイズ) は、多かれ少なかれキーワードとし処て理される例外である。 例を参照のこと。
インデックス全体で検索される単純なフレーズ
以下のうちのどれか;
Calendar
Communication
Contact
Document
Feed
Folder
Game
InstantMessage
Journal
Movie
Music
Link
Note
Picture
Program
RecordedTV
SearchFolder
Task
Video
WebHistory
返される結果の数の制限で、既定では 500個の結果までであり、 0 と言う制限値は制限無しを意味し、全ての結果が戻される。 there is a limit of 500 results, a limit of 0 indicates no limit and
コマンドラインオプションの要約を表示する。
簡単な使用法を表示する。
level
は0から10までの整数値である。
このパラメータが設定されていない場合の規定の値は、
クライアントアプリケーションに対しては、1 である。
この値を大きくするほど、サーバーの動作に関するより詳細な情報が ログファイルに記録される。レベル 0 では、致命的なエラーと重大な警告 のみが記録される。レベル 1 は日々の運用に適しており、少量の稼働状況 に関する情報を生成する。
1 より上のレベルは大量のログが生成されるので、問題解決の時にのみ 使用すべきである。 3 より上のレベルは開発者だけが利用するように設計されて おり、莫大な量のログデータが生成される。そのほとんどは非常に謎めいた内容 となっている。
このパラメーターの指定は、${prefix}/etc/smb.conf
ファイル中の、
log level パラメーターの
指定よりも優先する事に注意。
このパラメータはデバッグ出力を STDOUT にリダイレクトする。既定では、 すべてのクライアントはログを STDERR に出力する。
クライアントが必要とする詳細な設定を含むファイルを指定する。
このファイル中にある情報は、クライアントまたはサーバに対して
一般的であるか、あるいは、
client smb encrypt
のような、クライアント固有のオプションのみを提供することが
できる。詳細については ${prefix}/etc/smb.conf
を参照のこと。既定の
設定ファイルの名前はコンパイル時に決定される。
コマンドラインから smb.conf(5) オプション "<name>" に値 "<value>" を設定する。 これはコンパイル時の既定値と設定ファイルから読み込まれた オプションを上書きする。名前または値に空白が入っていた場合、 引用符で --option=name=value 全体を囲む。
ログ/デバッグファイルのベースディレクトリ名。拡張子
".progname"
が追加される (たとえば
log.smbclient, log.smbd など)。ログファイルは
クライアントによって削除されることはない。
終了時の talloc リークレポートを有効にする。
終了時の完全な talloc リークレポートを有効にする。
プログラムのバージョン番号を表示する。
SMB のユーザー名、またはユーザー名とパスワードを指定する。
もしも %password を指定しないと、ユーザーにパスワードの入力を求める。
クライアントはまず初めにUSER
、LOGNAME
の
順に環境変数の存在を調べ、もしもどちらかが存在するならば、その文字列を
大文字にする。環境変数が存在しない場合、ユーザー名として
GUEST
が用いられる。
このほかに、平文のユーザー名とパスワードを記述した認証ファイルを使用する
3番目のオプションがある。このオプションは主にスクリプト向けに用意されて
おり、認証情報をコマンドラインや環境変数に含めたくない場合に有用である。
このオプションを利用するときは、ファイルのパーミッションを確認し、ほかの
ユーザーから参照されないように注意すること。詳細は
-A
オプションを参照のこと。
パスワードをスクリプトに含める場合は注意すること。セキュリティを確保する ため、必要に応じてクライアントにパスワードを要求させることを推奨する。
このオプションを指定すると、クライアントはユーザーへの パスワード入力要求をしなくなる。パスワードが必要ないサービスに アクセスするときに有用である。
コマンドラインにパスワードが指定されておらず、このオプションも指定 されていないと、クライアントはパスワードを要求する。
もしも、パスワードがコマンドライン上で指定され、このオプションも 定義されていた場合、コマンドライン上のパスワードは無視され、 パスワードは使われない。
コマンド行上でパスワードを指定する。
パスワードをスクリプトに含める場合は注意すること。セキュリティを確保する ため、必要に応じてクライアントにパスワードを要求させることを推奨する。
提供したパスワードは NT ハッシュである。
このオプションは、指定したファイルから、接続時に使用する ユーザー名とパスワードを読み込むために使用する。 ファイルの形式は次の通り:
username = <value> password = <value> domain = <value>
ファイルのパーミッションを確認し、他のユーザーから参照されない ように注意すること。
保存されたマシンパスワードアカウントを使用する。
シンプルバインドで使う DN。
このパラメータは、Samba クライアントツールが Kerberos を 使って認証を試みるかを決定する。Kerberos 認証では、サービスに 接続する際、IP アドレスではなく、DNS 名を使用する必要がある。
ここでこのパラメータを指定すると、${prefix}/etc/smb.conf
ファイル中の
client use kerberos パラメータを
上書きすることに注意。
Kerberos認証用の資格情報キャッシュの場所を指定する。
これは --use-kerberos=required も同時に設定する。
winbindによってキャッシュされた資格情報を使うようにする。
クライアントツールが使うべき接続の保護を設定する。
ここでこのパラメータを指定すると、${prefix}/etc/smb.conf
ファイル中の
client protection パラメータを
上書きすることに注意。
さらに細かな制御が必要な場合は、以下を使用できる:
--option=clientsmbencrypt=OPTION
,
--option=clientipcsigning=OPTION
,
--option=clientsigning=OPTION
.
基本的なフレーズを使った検索:
'wspsearch -Usomeuser%password //server/share --phrase="cats"'
AQS のようなクエリを使用して、名前が p403 または p404 で始まる画像を検索:
'wspsearch -Usomeuser%password //server/share --query="ALL:$<p403 OR ALL:$<p404 AND System.Kind:picture"'
Adanced Query Syntax https://learn.microsoft.com/en-gb/windows/win32/search/-search-3x-advancedquerysyntax