
■はじめに
本記事ではTaniumのエンドポイントクライアントのインストール手順をご紹介しています。
インストールまでの準備や、詳細な手順/オプションは以下のTaniumの公式サイトに詳細なマニュアルがございますので、そちらからご確認ください。
-Taniumクライアントの導入-
=============================
もくじ
■はじめに
■エンドポイントのローカルでインストールしてみよう<Windows編>
■エンドポイントのローカルでインストールしてみよう<Linux編(ubuntu)>
■最後に
=============================
■はじめに
Taniumクライアントにより取得された情報は、リニアチェーンを経由しTaniumサーバーへ連携されます。
本記事ではTanium初学者の私がTaniumクライアントをインストールしていきますので、同作業を予定している方は参考程度に見ていただけますと幸いです。
※Taniumの管理サーバーでの設定等は事前に完了している前提での記事になります。
先に結論だけ書いておくと、基本的にはインストーラをダウンロードして叩けばいけるレベルの優しい難易度です。
TaniumクライアントはWindows、mac、Linux、他Unix系(Solaris、AIX)をサポートしています。
今回は検証環境の都合などもあり、WindowsとLinux(ubuntu)での手順を画像付きでお届けします。
==================================
インストール要件や環境ごとの設定等の関連項目は以下のようなものが準備されていますので、適宜ご確認ください。
※遷移先の右上の検索窓からドキュメントや項目の検索も可能です!
・サポートOS
Supported operating systems
・ハードウェア要件
Hardware requirements
※モジュールによって上記に追加のハードウェア要件があります。
・ネットワーク関連の要件
Network connectivity, ports, and firewalls
・セキュリティからのTaniumの除外
Host system security exclusions
各種環境での追加の確認項目など
・多数のエンドポイントへの導入の際に
クライアント管理を使用して Tanium クライアントを展開する
・エンドポイントがタニウムクラウド プロキシ サーバーを経由する場合
HTTPS フォワード プロキシ サーバー経由で接続する
・サブネットと WAN 接続:ネットワークに、デフォルトの /24 アドレス マスクで定義された同じサブネット上のピア間のワイド エリア ネットワーク (WAN) 接続が含まれている場合
クライアント ピアリング
・リソースが制限されているエンドポイント、仮想化サーバー、または仮想デスクトップ インフラストラクチャ (VDI) インスタンスに Tanium Client を展開する場合
VDI エンドポイントおよびリソースが制限されているその他のエンドポイントの Tanium Client 設定の調整
仮想デスクトップ インフラストラクチャ (VDI) インスタンスでの Tanium Client の準備」を参照してください。
機能や用途ごとの要件などもあるので、環境に合わせて適宜ご確認ください!
==================================
ではインストールを早速始めていきましょう!
■エンドポイントのローカルでインストールしてみよう<Windows編>
ではまず一番シンプルで親しみやすいWindowsのデスクトップでのインストールからまいります。
流れとしては [ インストーラのダウンロード → インストーラの実行 → 管理コンソールでの状態確認 ]となります。
では...
インストーラのダウンロード
[ Shared Services(工具のマーク) > Client Management ]の順番でクリックしダウンロードの画面まで移動します。
※一部スクショと文章で日本語と英語が入ります。適宜読み替えていただけますと幸いです。
Install the Tanium Client externally の Download Installer をクリックすると、
・各OSに対応したインストーラー
・Tanium Client Container (コンテナのモニターを行う際に利用)
・Cloud Initialization File (クラウドとの接続に問題があった際に公開キーをリセットするに利用)
の一覧が出てきます。
今回はWindows環境へのローカルインストールなので、Download Windows Packages をダウンロードします。
ダウンロードされたファイルはZip化されているため解凍します。
まずは中身を確認してみましょう。
□install.bat ←選択
□SetupClient.exe ←選択
■tanium‑init.dat ←必須
の3ファイルが入っていることが確認できると思います。
インストールにはインストールの実行を行うファイル(install.bat or SetupClient.exe)とデータファイル(tanium‑init.dat)の組み合わせが必要になります。
どれかかがセキュリティなどで検出されて隔離...となっていたりする場合はエラーでインストールできない可能性があります。
ご利用のセキュリティソフトなどで例外設定等を実施後に再度ダウンロードしてください。
※今回は都合上SetupClient.exeを起動するだけのインストールをお見せしますが、Install.batを使用したインストールについても記事後半に少し解説いたします。
また、以下の通りTanium社公式ページに注意喚起されています。
tanium-init.datファイルを、公開されているソースコードリポジトリやパブリックインターネットからアクセスできるその他の場所など、組織外で配布または保存しないように注意してください。配布は、Taniumクライアントの展開における特定の用途に限定してください。
このファイルには秘密鍵が含まれていないため、Tanium環境を制御するために使用することはできませんが、悪意のあるユーザーがこのファイルを使用して承認されていないクライアントに接続し、この不正アクセスを利用して組織がTaniumをどのように使用しているかを知ることができます。
引用:インストーラを使用してTaniumクライアントをWindowsエンドポイントに展開する -インストールの準備-
要するに「悪意のある攻撃者がこのファイルを使用しTanium サーバーに未承認のクライアントを接続したり、組織のネットワークにおける Tanium の利用方法や設定情報を観察/分析されたりする危険がある」ので取り扱いには注意してください。という事ですね。
ADなどで展開を考えている場合は、共有ディレクトリなどの設定に気を付けましょう!
インストーラの実行
SetupClient.exeで[ 右クリック > 管理者として実行 ]を行いインストーラを実行します。
インストールウィザードが立ち上がり、製品アグリーメントが表示されます。(よく読んで)Next→I Agreeで進んでいきます。
インストールパスの指定です。Nextをクリックするとインストールプロセスが開始されます。
数秒で完了します。
インストールの完了画面が表示されたらFinishをクリックしてインストール完了です。
もちろん環境にもよりますが、インストールにかかる時間(インストーラの実行からインストール完了まで)は大体10数秒くらいです。
かなり素早くインストールが完了するため、これだけであれば工数的な負荷はありません。
また、デバイスの再起動なども不要です。
管理コンソールでの状態確認
ぱっと確認する方法としては以下が早いと思われます。
・InteructからQuestionを発行して結果を確認
・Client Statusから該当する端末を確認
マニュアルでは接続の確認に際してまずInteructから以下のQuestionを発行しています。
とはいえ台数により素早く確認できる方法を適宜ご選択いただくのがベターかと思われます。
それぞれの手順を記載します。
・InteructからQuestionを発行して結果を確認
Inteructで質問するのであれば、以下のコマンドを実行すると良いとのこと。
コンソールの最上部にすぐにQuestionを入力できる箇所もありますが、今回は勉強のためにしっかりとInteructに移動してから実施します。
[ module > Overview(概要) ] の順でクリックします。
前述のQuestionを入力しEnterを押下します。
実行結果のグリッドにインストールした端末が含まれているか確認しましょう。
ちなみに今回インストールしたのは[WIN-ERR1SCAHIU5]です。問題なくインストールできていますね。
※ドメイン参加端末はFQDNの形で表記されます。
・Client Statusから該当する端末を確認
管理コンソールからTaniumuクライアントの接続状態を確認します。
[ Administration(歯車) > Client Status ]の順でクリックします。
クライアントがインストールされた端末が一覧で表示されます。
台数によっては表の右上にある項目のフィルタを活用しましょう。
Windowsの手動インストールについては以上になります。
本項でご紹介とはなりませんでしたがCLIを利用して設定を同時に行うインストールやサイレントインストールも可能なようですので、興味がある方はメーカーマニュアルを是非ご確認ください!
Tanium Client コマンドラインインストール例
■エンドポイントのローカルでインストールしてみよう<Linux編(ubuntu)>
次に、Linuxベースのディストリビューションだとどのような感じか見てみましょう。
今回の実践では最初からスーパーユーザーとして作業します。
本番環境等ではユーザーを切り替えること自体にリスクを伴う場合もあるので、ユーザーを切り替えずに適宜コマンドの先頭にsudoをつけるなどして対応でもよいかもしれません。
インストーラのダウンロード
まずはインストーラをダウンロードします。
Windowsの時と同様の手順なので割愛します。
選択するのがLinuxのインストーラという部分だけご注意ください。
ダウンロードしたzipの解凍ですが、Linuxだと以下のコマンドでできるのでご参考までに。
解凍してみると、以下のようにすべてのLinuxディストリビューションのインストーラが含まれています。
構成はWindowsと似たような感じです。
・Installer package files for each Linux distribution (such as TaniumClient-7.6.4.2106-1.oel8.x86_64.rpm) ←これが各ディストリビューション分
・install.sh
・tanium-init.dat
インストーラの実行
私は未実施ですが、インストールディレクトリをデフォルト以外に変更する場合は、シンボリックリンクを設定します。
以下のコマンドで実施できるのでこちらも参考にしてください。
※インストールディレクトリは"固定ドライブ"であることが必須です!
↑ /appbin/Tanium の部分が変更先のディレクトリですね。
準備が出来たらインストーラを実行してみましょう。
・Redhat や SUSE
・Debian や Ubuntu
私の環境(ubuntu20)と作業時のTaniumClientのバージョンだとこんな感じですね。
ディストリビューションでTaniumの大文字と小文字分けてくれているのは、Tab補完しやすくてありがたいですね。
「あれ、パッケージ見つからないぞ」という方はその点を確認してみましょう。
コマンドを実行するとこんな感じです。
インストーラを実行しただけだと、まだTaniumサーバとの接続はされていませんし、サービスも起動していません。
ここらへんがWindowsと違う部分ですね。
インストーラを実行した時の出力を確認してみましょう。
TaniumClient service installed. Complete installation by:
1. Set ServerName with '/opt/Tanium/TaniumClient/TaniumClient config set ServerName <name>'
2. Set any desired optional settings (ServerPort, LogVerbosityLevel, etc) by running '/opt/Tanium/TaniumClient/TaniumClient config set <key> <value>'
3. Copy tanium-init.dat into /opt/Tanium/TaniumClient
4. Start the TaniumClient with 'systemctl start taniumclient.service'
翻訳↓
TaniumClient サービスがインストールされました。以下の手順でインストールを完了します:
1. opt/Tanium/TaniumClient/TaniumClientのconfig set ServerName <name>' でServerNameを設定
2. '/opt/Tanium/TaniumClient/TaniumClient config set <key> <value>' で任意のオプション設定(ServerPort、LogVerbosityLevelなど)を設定
3. tanium-init.datを/opt/Tanium/TaniumClientにコピー
4. systemctl start taniumclient.service' で TaniumClient を起動します。
シンボリックリンク云々は一旦「そうなんだ」で良さそうですね。
その下の手順部分を順番に実施していきましょう。
1. opt/Tanium/TaniumClient/TaniumClientのconfig set ServerName <name>' でServerNameを設定
これはサーバーネームの設定ですね。
インストールする端末のホスト名を指定の部分に入力してコマンド実行が必要のようですが...。
Tanium公式マニュアルでは以下のように言及されています。
-------------------
クライアントが接続できるTanium CloudクライアントEdge URLからの完全修飾ドメイン名 (FQDN) をカンマで区切ります。
通常、インストール パッケージに含まれるtanium-init.datファイルには適切なFQDNが含まれているため、この引数は省略します。
サーバー アドレスを手動で指定する必要がある場合は、適切なFQDNについてTaniumサポートにお問い合わせください。
-------------------
とりあえずこの環境では手動実行は不要みたいなので、割愛します。
手動での設定が必要な環境の場合は、こちらの引数でサーバー名を設定することを忘れずに!
※試しに手動でもサーバー名の設定を実施してみましたが、変な影響は出ていないようです。
「書いてあるから不要なのに手動で設定しちゃった!」という場合でも、間違ったサーバー名でなければ問題はなさそうです。
2. '/opt/Tanium/TaniumClient/TaniumClient config set <key> <value>' で任意のオプション設定(ServerPort、LogVerbosityLevelなど)を設定
こちらも任意とのことですが、ログレベル?となった方のために少しだけ。
TaniumClientによる、エンドポイントでのログ記録レベルについての設定項目です。
0:ログ記録は無効になります。ベストプラクティスとしては、ログ記録を無効にしないでください。
1 (デフォルト):通常の操作ではこの値を使用します。
41:トラブルシューティング時にこの値を使用します。
91以上:短期間のみの完全なログ記録にはこの値を使用します。
デフォルトで通常時の記録レベルが設定されているようなので、何かしらのトラブル発生時の参考程度に覚えておいていただければよいかと。
不要なログまで記録すると思わぬところでログ爆発が起きるので、最初はデフォルトで問題ないですね。
また、後々に管理コンソールから設定の変更も可能なのでご心配なくといったところです。
3. tanium-init.datを/opt/Tanium/TaniumClientにコピー
Taniumとの接続に必要な設定情報をロードできるように配置します。
そのためこれはマニュアルでも必須となっています。
以下のコマンドでコピーします。※datファイルがあるディレクトリに移動して実行するか、ディレクトリを指定したコマンドに書き直しましょう。
4. systemctl start taniumclient.service' で TaniumClient を起動します。
サービスの起動を行います。
ついでに状態確認です。
当たり前といえば当たり前ですが、自動起動もしっかり設定されています。うれしいですね。
あとは、Windowsと同様にTaniumとの疎通を確認して問題なければ完了です!
お疲れ様でした!(__)
■最後に
Tanium導入いかがでしたでしょうか。
以下のような効率的な大規模のインストールなどについては、記事が長くなりすぎたため機会があれば別の記事でご紹介いたします。
クライアント管理を使用して Tanium クライアントを展開する
そのためまずは基本を押さえる。ということでエンドポイントへのTaniumクライアントインストールでした。
ご一読いただき、ありがとうございました。
※本ブログの内容は投稿時点での情報となります。今後アップデートが重なるにつれ
正確性、最新性、完全性は保証できませんのでご了承ください。
他のオススメ記事はこちら
著者紹介

SB C&S株式会社
技術統括部 第2技術部 2課
宮澤 建人