SE(しがないエンジニア)のブログ

IT技術ネタ(クラウド・セキュリティ周り)が中心です!他雑記(お馬さん 他いろいろ)もあり。

ネットワークの基礎ワードを掘り下げる(備忘録)

IT業界に割と長く居ながら・・・・。

ネットワークのことをあまり理解していないなぁ、、と痛感した最近。浅い理解でも仕事をできる部分もありますが、クラウド時代も含めてネットワークはやはり深く理解していかないとマズいと感じています。そんなこんなで下記の本をざっくり読了しました。
www.ohmsha.co.jp
仕事をする上で言葉だけ知っている部分が結構あると思いますが、いざ人に説明するとなると表面上だけ説明しているだけで、実は自分自身も理解していない、ということに陥ってたりします。(´。`)

では早速

デフォルトゲートウェイ

「あぁ、あの Windows で設定するインターネットに出るためのアレでしょ?」という回答だと NG なわけでして。それ程度で今まで考えていて無知だった自分が恥ずかしいです。詳しく解説しているページはこちらです。
http://www5e.biglobe.ne.jp/~komichan/network/n1_defaultGW.html
PC やサーバが他ネットワークのホストと通信するときに最初にパケットを転送する装置(ルータや L3 スイッチを指す)です。よくあるケースとして会社内の Windows(例) クライアントに設定するデフォルトゲートウェイはこの「ルータ」を指すことが多いと思います。ちなみに、これは必ずしもこのルータからインターネットに出るとは限りません。
別用語にもなってしまいますが、「ルーティング」という言葉を聞くとついつい前述のルータ側のみにルーティングを持っているイメージをしてしまいますが実際は PC やサーバでもそのルーティングを持っていたりします。

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先 ネットマスク ゲートウェイ インターフェイス メトリック
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.122 35
127.0.0.0 255.0.0.0 リンク上 127.0.0.1 331
127.0.0.1 255.255.255.255 リンク上 127.0.0.1 331
(以下略)
具体的にでは PC やサーバでルーティング情報として登録しているのは何なのか?というと「直接接続しているネットワーク」と「デフォルトルート(0.0.0.0)」に大別されます。そして、話を戻しデフォルトゲートウェイを設定するというのがこのルーティングテーブルに後者の「デフォルトルート(0.0.0.0)」をスタティックルートとして登録する、ということに結びつきます。0.0.0.0 のネクストホップ(次に転送すべき隣接ルータ)がクライアントに設定したアドレス(例:よくある 192.168.1.1)になります。

ブロードキャストアドレス

「あぁ、その名の通り、ネットワーク内にワーってパケット投げるためのアドレスじゃん。」という・・・・では、その「ネットワーク内」ってどれだけのエリアを指すのかというと、あくまでもそれは「同一ネットワーク内」ということになります。ルータなどの中継機器を通して他のネットワークに転送されることはありません。また、用途の一例としては「ARP」(Adress Resolution Protocol IP アドレスから MAC 情報を得る)要求でブロードキャストアドレスを使用します。

DNS(の名前解決順序)

よくある、あるあるですが「DNS がダメになって、名前解決が出来ない。IP 直打ちだと上手く行くんだけどなぁ。」というトラブル。では、その DNS ってどうやって名前解決してるのでしょうか?当たり前な話ですが、「btsn.hatenablog.com」を IP アドレスで打つとなるとそう簡単には覚えられません。いや、「btsn~~」もちょっと覚えにくいのですが。笑

c:\>nslookup btsn.hatenablog.com
サーバー: UnKnown
Address: 192.168.1.1

権限のない回答:
名前: btsn.hatenablog.com
Addresses: 13.115.18.61
13.230.115.161

この IP を元に whois してみると「ec2-13-115-18-61.ap-northeast-1.compute.amazonaws.com」と出るのですが、はてなブログAWS で動いている?とか?何はともあれ、このように DNS として名前解決をする流れはどう説明すると良いのでしょうか?JPNIC のページに歴史を含めて分かりやすい解説があったのでご紹介致します。(敢えて要約をこちらに記載する必要がないくらい詳細!)
インターネット10分講座 DNS - JPNIC
とまぁ、今回はここまで!また、気分で追記します。m(_ _)m

Office 2019 2PC の場合のインストール方法について

諸事情にて Office 2019 購入の必要があり、、

今までは Office 2013 H & B を利用していたのですが、諸事情により Office 2019 H & B を購入する運びになりました。最近、よく「2 台の~~」とか「5 台まで」みたいな記述を見かけるのですが今回の Office 2019 も「2 台の~~」ということで初体験だったのでメモ書きを残します。
f:id:btsn:20200603001054j:plain
こちらが表?です。この厚紙が \40,000 近くするなんて・・・・という話は置いておいて。
f:id:btsn:20200603003319j:plain
裏はこんな感じです。2019 からかどうかは分からないのですが下記 URL にてセットアップが可能です。
https://office.com/setup

インストールには何が必要?

こちら、「Microsoft アカウント」が必要になります。Windows のログイン用に最近は作らされたり(無理にする必要はないですが)することもあるので持っている人も多いかもしれません。作成したアカウントをベースにログインすると下記のような画像の状態になります。
f:id:btsn:20200603004839p:plain
1PC 目はそれでこのまま進めるのですが、2PC 目は?となると。こちらに関しては 1PC 目をインストールした Microsoft アカウントを利用することになります。
f:id:btsn:20200603005120p:plain
ここで赤枠の部分をクリックして別画面に遷移します。すると、その Microsoft アカウントで紐付いた「サービスとサブスクリプション」が表示されます。
f:id:btsn:20200603005328p:plain
2PC 目に関してはこちらで「インストールする」で進行すれば OK です。注意しなければいけないのが気づかずに別の Microsoft アカウントでログインした場合。その場合は「サービスと~~」の画面で Office 2019 の表示がされません。されない場合は要確認です。

在宅勤務中(4月~)に参加したオンラインセミナー振り返り

ここ最近のブログ記事化

ここ最近は記事にはしたいものの中々まとめる時間がなく日々が過ぎてしまっております。気持ちとしては 2~3 日に一本はペースとして上げたいのですが、気持ちも上げていかないとアレですね。(・ω・)

そんなこんなで。。

ひとまず、リハビリ記事?として、4月の在宅勤務環境下から参加しているセミナーをつらつらと振り返ろうと思います。

4月中

自分自身が管理者(の下っ端です)を担当している LanScope のコミュニティです。30名を超える皆様にご参加頂き、私も Splunk との連携記事を利用してお話させて頂きました。(4/23)
lanscopeusers.connpass.com
振り返り記事も一応書いてます。
btsn.hatenablog.com
続いては参加者が 2000名!? を超えていたオンラインイベントです。ただ、途中までしか参加出来ず放送自体も中々大変だったそうで・・・・運営の皆様、お疲れ様です。(4/24)
forkwell.connpass.com
続いては Jazug 絡みだったのですがイベント自体が中止に、ただ、緊急事態宣言が発令されていた中でのイベント運営は難しいところもあり、運営の方も苦渋の決断だったのかなと思います。また、明けて某品川やその他の場所で Jazug のイベントに参加できれば良いな!と思います。
jazug.connpass.com

5月中

5月の一発目は GW 中外出していなかったこともあり、時間もあったのでこちらに。Azure をもくもくと学んでおりますが、この辺の DevOps 関連は全く無知だったので非常に勉強になりました。Microsoft MVP の方のお話をこんなに気軽な形で拝聴できるのは良い時代だなぁと感じます。
tfsug.connpass.com
二発目は間が空いてしまってますが、自社で利用している Pleasanter と MA ツール(Mautic)の連携ということで拝聴。ただ、どんな感じで連携すると利活用できるのかの説明が少なかったのでちょっと残念でした。(勿論、この連携を利用することで自社のマーケの活用幅が広がるのは間違いないのですが。)
reedex.connpass.com
三発目は仕事の関係で参加できず。Kubernetes 界隈で有名な青山さんのお話、後で Twitter のつぶやきとかも追ってたのですが拝聴したかったなぁ。。
forkwell.connpass.com
四発目に関しては無事参加できたのでホッと一息。アツい Kubernetes の話を存分に拝聴できて良かったです。以前、ブログ記事を10本近く読書と共にアップしていたのですがそれからあまりウォッチできてないとついつい忘れてしまいがち。なので、気軽に参加できる昨今だからこそ、理解を再度深めるという意味で参加して良かったです。
k8sjp.connpass.com

緊急事態宣言こそ解除されたものの、このコロナ禍を通じてイベントのオンライン化はこれからも持続しそうです。気軽に参加できて知識の習得を身近に感じれるという意味で非常にオススメです。私自身は大した数参加できておりませんが、6月は時間を上手くぬって多めに参加していこうと思います。

「de:code 2020」のお知らせが出ましたね!

「Build 2020」に続き!

日本時間の 5/20(水)AM12:00 より「Build 2020」のデジタルイベントが開催されます。未だ登録できるかどうかですが前段階の記事はこちらです。
btsn.hatenablog.com
そして、「de:code 2020」に関してもここ数日チェックしておりましたが情報が出てきたようです!
www.microsoft.com
勿論、デジタルイベントなわけですが、ビックリしたのがその開催期間、なんと 6/17(水)~6/30(火) の 2 Week だそうで。物凄く長いですね。セッションリストを見る限りでは未だその紐付けは分からないですがリストを眺めているだけでも楽しいです。笑
セッション リスト | de:code (decode) 2020 | 開発者をはじめとする IT に携わるすべてのエンジニアのためのイベント
記事的にひとまずはコレだけですが、追ってまた登録方法等が公開されましたら追記致します。

追記(Appendix)

2020/05/30

「de:code 2020」の登録が開始したようです。要 Microsoft アカウントで各種情報の入力が必要となります。

2020/06/23

地味にですが、毎日仕事の傍らで少しずつ興味のあるセッションを拝聴しております。オンラインですとこの辺が気軽にできるのが嬉しいですね!(まだ、これからのセッションもあるので今後発掘予定。。)

2020/06/27

オンラインで行われているという背景もあるからなのか、期間延長の連絡が昨日来ました!現状では 7/17(金)17:00 まで延長されるようで。全 108 セッション公開済で見逃しのある方もこの機会に是非☆

RocketChat の REST API を利用しメッセージを飛ばしてみる

RocketChat の REST API を利用してメッセージを飛ばしたい!

自社ではオンプレミスでチャットを運用したいということもあり RocketChat を利用しております。「Slack 風」と呼ばれていることもあり、ほぼほぼ同じ利用感で運用可能です。当ブログの記事でも過去に Plaeasanter との連携記事を書いたりしたのですが今回は簡易的な通知を個別に構築したい、という思いがあり REST API を調査してみました。公開されているドキュメントは下記の通り。
Rocket.Chat Documentation - Rocket.Chat REST API
最も最速で試せそうな流れでメモ書きとして残します。笑

検証メモ

連携したいユーザ(≒投稿ユーザ)のマイアカウントで「パーソナルアクセストークン」を発行します。トークンとユーザIDは(おそらくですが)後から確認不可なので何か別の txt ファイルなどに控えます。
f:id:btsn:20200510144537p:plain
これをベースに RocketChat に疎通可能な Linux サーバ(Windows でも OK)から curl コマンドを実行してみます。

# curl -H "X-Auth-Token: (token)" \
> -H "X-User-Id: (user_id)" \
> -H "Content-type:application/json" \
> http://(server_name):(port)/api/v1/chat.postMessage \
> -d '{ "channel": "#(channel_name)", "text": "This is a test!" }'
括弧書きのところは適宜変更して下さい。成功すると・・・・。
{"ts":1588950642332,"channel":"#(channel_name)","message":{"alias":"","msg":"This is a test!","attachments":[],"parseUrls":true,"groupable":false,"ts":"2020-05-08T15:10:40.438Z","u":{"_id":"(user_id)","username":"(user_name)","name":"(name)"},"rid":"eb5ixakqPkEc8ug5z","_id":"CHPMQ5FBMJDP3mdZM","_updatedAt":"2020-05-08T15:10:41.701Z","mentions":[],"channels":[]},"success":true}
こんな感じのレスポンスが来ます。NGの場合は「Invalid Channel」他、エラーメッセージが戻しますので適宜対応しましょう。ちなみに、投稿された RocketChat の方では。(curl コマンドの実行は別サーバから行っております)
f:id:btsn:20200510145633p:plain
簡単ですね!PHP で Pleasanter の API を実行可能なので今度はデータ未入力の警告として RocketChat でメッセージを飛ばすなどに活用しようと思います。

「Build 2020」に参加登録してみる

Build といえば

マイクロソフト社が例年5月頃に開催している開発者向けのイベントで米シアトルで開催されております。が、今年は COVID-19 の影響もありオンラインイベントとなりました。詳しくは下記リンクの記事を参照下さい。
www.itmedia.co.jp
例年の参加費用を見ると直近で $2395.00 とかなりお高いもの、かつ、これは会議のみの値段なのでおいそれと簡単に参加できるものではありません。しかし!前述の記事にもある通り今年は参加料が無料ということで見逃せない形となっております。ちなみに、「de:code」という「Build」の内容を凝縮したイベントも例年日本で開催されているのですがこちらもデジタルイベントとして開催されるようです。
www.microsoft.com

登録方法は?

まず、「de:code」の前に「Build」で先取りしたい場合に登録はどうすれば良いのか?というところから。
f:id:btsn:20200507151701p:plain
「Register Now」を選択します。
f:id:btsn:20200507152026p:plain
Microsoft Account」を選択します。
f:id:btsn:20200507152224p:plain
例のごとく、ID / PASS を入力します。
f:id:btsn:20200507165211p:plain
アクセス許可を一読の上、「はい」を押下します。
f:id:btsn:20200507171344p:plain
「1. Contact Information」を記入します。基本は必須のところのみでOKのようです。続いて「2. Profile」と。最終的に「3. Registration Summary」へ辿り着けばOKです。
f:id:btsn:20200507172351p:plain
あとは、折り返しメールが「1. Contact Information」で入力したメールアドレスに着信しているか確認しましょう。

以上です!

第1回 LanScope User Community (Online) にオンライン登壇しました

こんなご時世だからこそ!

昨今のコロナウイルスや緊急事態宣言の世相を受けてコミュニティイベントのオンライン開催化が加速しております。私自身が運営管理者を担当させて頂いている LanScope Cat のコミュニティも本日オンラインイベント開催でした。登壇者は Zoom 部屋に集まって、それを Youtube Live に転送する。細かい仕組みは良く分かってないのですが、明日行われている大型イベントも同様の形式なようでスタンダードな形式なんですね。(ちなみに Zoom で話している内容は多少のタイムラグを含めて Youtube Live に転送されるようです)

【本日開催されたイベント】
lanscopeusers.connpass.com

【明日開催予定の大型イベント】参加者現在 2250 人超え!?
forkwell.connpass.com

今後も状況の長期化が予想される中で更に加速し、様々なソリューションの組み合わせで凝らされた工夫が生まれそうです。

イベントの感想

全体の流れ

主催者また本日の進行役だったキャラクター(あずみんさん)が事前にレクチャーもしてくれたおかげで非常にスムーズでした。1時間があっという間(LT枠は「4」でした)に完了。Zoom 側で基本音声拾っていた為、Youtube Live 側のチャットにフライングしてコメントしてたかもしれません・・・・これって、どうすれば解消出来るんでしょう?

登壇感想

・1人目のひこさん
今回の在宅勤務に至る道のり、リモコンキャット推し、インフラ準備はちゃんとやろうの振り返り、9.3 は早めに入れておけば良かった話 等。

・2人目の中本さん
中の人の登場!実践的な取り組みの数々、VPN 枯渇の苦労話 他、セキュリティ会社の中の人の話はとても貴重!そして、急遽の在宅勤務化で今は段ボールの上にパソコンの環境があるとか無いとか。。(・ω・)

・3人目は私
先日、アップした Splunk 連携のお話をさせて頂きました。突貫でインフラ準備したは良いものの勤怠が未整備(≒不透明)なままだったので実態を掴むためのツールとして取り入れたソリューションの紹介をしました。

・4人目は Kazuma さん
スタートアップベンチャーあるある(資産状況の未整備)からどうやって環境構築して脱却したか、現状の在宅勤務の取り組み、An Free の活用法(PCに使えるのか!?) 等。

Splunk 連携の記事に関しては下記を参照下さい。
btsn.hatenablog.com

全体通して、1人目が 9.3 入れれば良かったで、2人目が 9.3 勤怠ログ活用してます、3人目で 9.3 勤怠ログ強化の話の流れだったので、あずみんさんの作成した発表順、練られているなぁと感じました、スゴい!

振り返り

時間に関しては気にしながらの対応だったのでほぼほぼ時間内(10分)に収まったかなと思います。ただ、今回のような形式(オンライン)が初でインターネットの向こう側で30人以上の方が聞いている、と思うと最初緊張してしまいました。総括としては Youtube Live のチャットが盛り上がって楽しかったですけど!また、機会があったら登壇したいです。

拝聴して下さった皆様

拙い発表だったと思いますが、ご静聴頂きまして有難う御座いました。世の中の情シスの方の一助になれば嬉しいです。ちなみに、コミュニティ参加人数の目標直近は「100」のようです!Cat 初心者の方~上級者の方・情シスの方・情シスやりつつ総務兼務の方 他、お気軽にコミュニティにご参加下さいませ☆(要 Connpass 登録)
lanscopeusers.connpass.com

Pleasanter で「編集モード」から一括更新を自動で行う方法(空更新)

システムの前提(週報→勤怠管理)

自社では以前 Excel にて週報システムなるものが存在していました。Windows PC に SONYFelica リーダをつけて csv 出力をしそれを Excel のアドオンで取り込むというもの。今回、Pleasanter にリプレイスするにあたり、Felica カードはそのままに Pittouch というリーダを利用しました。こんな感じのやつです。
PitTouch Pro2 勤怠パッケージ | SST 株式会社スマート・ソリューション・テクノロジー
これでスキャンするとある Linux サーバの php を実行(Pittouch PHP API)し更にそこから Pleasanter の PHP API を利用して運用している勤怠管理のサイトに書き込むというものです。作りとしては良くある「1回目のスキャンは出勤」「2回目のスキャンは退勤」「3回目以降は出退勤済なのでエラー」といった感じです。勿論、勤怠管理のサイトはゴリゴリと JavaScriptjQuery を利用しております。

お困りごと と その対応

サイトにアクセスした際にデータ更新のオーバーヘッドがあるサイトに関しては基本利用するユーザのボタン押下をトリガーにデータを更新させるのが(個人的に)Pleasanter の作法なのかな?と思っております。そうなると、一覧画面上で JavaScript で計算し表示されたデータは見た目上は(サイトの)データベースのフィールドに格納されていると思いきや入っておらず差異があったりします。自社の場合は「更新」ボタンを押下させる為に「一覧モード」から「編集モード」に一度遷移して「更新」を押下する必要がありました。これは非常に面倒!というわけで改造しました。笑(いや、ワンクリックの差なんですけどね。。)

☆「データ最新化」ボタンを作成する

var regbtnhtml = '<button id="datarenewal" class="button button-icon validate ui-button ui-corner-all ui-widget applied" type="button" accesskey="s" data-icon="ui-icon-arrowreturn-1-n" data-action="print" data-method="post"><span class="ui-button-icon ui-icon ui-icon-arrowreturn-1-n"></span><span class="ui-button-icon-space"> </span>データ最新化</button>';
$('#MainCommands').append(regbtnhtml);

☆ボタンを押下した際の挙動を作る
自社の場合は社員マスターサイトの各社員レコードに「データ最新化」列を設け、その値を見て判断するようにしています。基本は「0」にしておいてボタン押下時に「1」に切り替えます。更新時には通常で利用する API Update で問題ありません。そして、ボタンの処理最下部には下記を忘れずに。これが無いと「編集モード」に遷移できません。

$('button[data-action="Index"]').click();

☆「$p.events.after_set_Index」を利用し「データ最新化」に対する対応を入れる
通常の「編集モード」押下と判断するため、2点目の処理の対応を入れております。「1」が立っている時のみ「更新」ボタンを自動的に押下するようにします。ただし、最終的には「一覧モード」に戻るので「0」へ戻すのは忘れないようにしましょう。コメント行で表すと下記のような感じです。

$p.events.after_set_Index = function () {
    // 変数用意

    // get -> 1 なら update 0 ならスルー
    // API 処理

    // データ最新化する
    if(updateFlag === 1) {
        $('button[data-action="UpdateByGrid"]').click();
    }
}

しかし!これでは上手く行かず・・・・0件更新で「一覧モード」に戻ってしまいます。悩んだ末、Update click() 直前に下記の Delay を入れることで正常に更新できるようになりました。下記の場合は1秒の遅延になります。

setTimeout(function(){
    $('button[data-action="UpdateByGrid"]').click();
},1000);

今回は一例ですが、その他のボタンを画面下部に作成する時も同様の手順で対応できると思います。

Pleasanter の添付ファイルやコメントの「×」を消す方法

削除のボタンを消したい!

添付ファイルやコメントの追加は許可したいけど削除は許可したくない!そんなことありませんか?Pleasanter 標準の機能としてはそこまで細かくコントロールできない為、(見た目上での調整ですが)対応できました。ちなみに、今回のケースは「添付ファイル」と「コメント」に限定した話となります。

実際の削除法は?

当初、jQuery の hide() を利用しつつ MutationObserver にて対応したのですが失敗。添付ファイル部分で DOM を監視する際に1つの追加であれば OK だったのですが、2つ以上は「×」が表示され NG でした。
developer.mozilla.org
他で色々と試行錯誤したうちに辿り着いたのはスタイルにて対応する方法でした。なぜ、コレを最初に思い浮かばなかったのだろう。。笑

div.ui-icon.ui-icon-circle-close.delete-file {
    /* 添付ファイル */
    display:none
}
span.ui-icon.ui-icon-closethick {
    /* コメント */
    display:none
}

結果はこちら!
f:id:btsn:20200417003741p:plain

LanScope Cat × Splunk の連携を検証してみる

LanScope Cat 9.3 にて実装された勤怠ログ管理機能で

先日 LanScope Cat 9.3 にアップグレードした記事を掲載しているのですが、9.3 からは勤怠ログ管理機能が実装されています。昨今の「働き方改革」の一環で取り入れられた機能ではありますが、これには2つ課題点がありました。


1. Start - End までの詳細が分からない
実際に勤怠を確認する上で「業務時間内」の区分が単色ですと細かくどんな業務に取り組んでいるかが掴みにくいです。それを細かく知りたいという欲がありました。

2. 終業後(数時間後)に気になって操作するとバーがその分伸びてしまう(例:リモート時)
仮に19時に終業したとして数時間後に気になって再度ログインした場合は間が何も操作していないに関わらず実働したかのようにバーが伸びてしまいます。「1.」に関わるところでもあるのですが、間はアイドルとなっているはずなので基本はアイドルで拾ってほしいところです。


開発元の MOTEX 社様のススメもあり、Splunk と連携することでブレイクダウンした形で可視化可能ということで今回連携してみました。(Splunk の導入手順ポイントもあるので記事としては結構長めです!)

Splunk てなんぞや?

あらゆるデータをもとに適切なインサイトとアクションを導き出すソフトウェア(Splunk 社様のページから引用)とのことです。日々色々なITシステムから生成されるデータを加工し各組織が知りたい情報に可視化するツールというのがざっくりとした説明になると思います。ここ数年のバズワードからすると「ビッグデータ」が関連します。可視化した情報は障害対応に利用される側面を持ちますが今回のようなITセキュリティに対する親和性も非常に高いです。
そして、今回当記事で紹介するのは自社でも利用している LanScope Cat との連携です。
Splunkの紹介 | 連携製品 | LanScope Cat
LanScope Cat の Ver 9.0 より Syslog 転送(リアルタイム)が可能になったことにより各種 SIEM 製品との連携が強化されました。Splunk もその1つとなります。次の項では導入のざっくりとした流れをお伝えしつつ、迷いそうなポイントを個人的視点を踏まえお伝えします。

導入の概略

まずは LanScope Cat のマネージャー(弊社の場合は HACONEKO です)から Syslog 転送が可能なサーバに Splunk を導入します。前述の MOTEX 様の LanScope Cat × Splunk のページ下部にもリンクがありますが、下記リンクより各種情報を記入の上、Splunk Enterprise をダウンロードして下さい。私がダウンロードした際のバージョンは「8.0.3」でした。
f:id:btsn:20200410001851p:plain
ちなみに今回は Windows 10 Pro のマシンにインストールしております。
f:id:btsn:20200410002057p:plain
インストールに際して Customize Options を行っております。Python に関しては現在 3 系が主流なので「Python 3」を選択。インストールフォルダの変更、Local System Account の利用で対応しました。
f:id:btsn:20200410002457p:plainf:id:btsn:20200410002516p:plainf:id:btsn:20200410002527p:plain
ここから先に関しては MOTEX 様の保守運用サイトにアップされているマニュアルに沿って進めていきます。「LanScope Cat App for Splunk」と呼ばれる Splunk 用のアドオンをインストールします。これをインストールすることにより、LanScope Cat で収集したログのレポートを Splunk のダッシュボードに表示できます。App は提供された Sql を流し込むのみです。非常に楽チン。正常に追加されると Splunk のトップページ左袖メニューが下記のようになります。また、「LanScope Cat App for Splunk」をクリックするとメニュー追加が行われていることが分かります。
f:id:btsn:20200410003449p:plainf:id:btsn:20200410003709p:plain
更に今回の App のバージョンである「1.1.0」のレポート利用には「TimeLine」という App が別途必要です。なお、インストール途中に Splunk アカウントのユーザー名とパスワードが必要となります。
f:id:btsn:20200410004059p:plainf:id:btsn:20200410004116p:plain
その後は Splunk で受ける為のログ受信設定を行います。手順書に沿った形で少々迷いそうなところを記載しておきます。途中ポートを設定する場所がありますが、特段の社内セキュリティポリシーがなければ基本は Syslog のデフォルトポートである「514」を利用します。その後の「入力設定」では下記のようになるように設定します。また「確認」で同じ値になっているか確認して下さい。(ポートは「514」の場合)
f:id:btsn:20200410004627p:plainf:id:btsn:20200410004741p:plain
ここまでが Splunk 側の設定で次以降は LanScope Cat 側の設定です。手順書に沿っての「Syslog送信設定」が下記のようになるように設定して下さい。一部表示を削っておりますが、赤枠で囲んだ場所のみ設定変更すればOKです。「ホスト名またはIPアドレス」には Splunk を導入したサーバのIPアドレスを入力です。(「トークン」は元々入っていたと思います)
f:id:btsn:20200410005247p:plain
その後、「送信テスト」ボタンを押下しますが下記エラーが発生した場合は Splunk を導入したサーバ側で該当ネットワークの TCP 514 が受信規則で許可されているか確認して下さい。(または導入されているアンチウイルスソフトのポリシーを確認)
f:id:btsn:20200410010013p:plain
「送信テスト」が成功するとその下部の「送信対象」が選択できるようになります。今回は無償の範囲内なので一部のログ可視化を除外する形で(特に)勤怠ログ管理機能(Splunk 上では「LanScope Cat 勤務実態レポート」です)にフォーカスを合わせてます。アクティブ 50人 60~70台 程度が稼働している開発系の企業として目安にして下さいませ。
f:id:btsn:20200410114734p:plain
=====
500MB を超える日が30日以内に3回以上あるとロックがかかります。データの取り込みはできるが検索ができなくなります。とのことなので Syslog 取り込み後、数日は率をマメにチェックすることをオススメします。また、[設定]➡[モニターコンソール]➡[インデックス化]➡[ライセンス使用状況 - 過去 30 日]の切り替わった画面にて赤い棒の閾値まで届いてないかも要確認です。
f:id:btsn:20200410114853p:plain
MOTEX 様の話では「アプリ稼働ログ」と「アプリ通信ログ」だけで全体の半数くらいを占めるとのことです。ただ、これのチェックを外したら外したで可視化できなくなるグラフが出ることは注意下さい。他の注意点としては操作ログが大量に出力される点です。
=====

では、肝心の「LanScope Cat 勤務実態レポート」は?

冒頭の話に戻りますが、9.3 で盛り込まれた機能をブレイクダウンした可視化グラフが環境構築後に確認可能となります。

<LanScope Cat 勤務実態レポート>
f:id:btsn:20200410121545p:plain
f:id:btsn:20200415103706p:plain
f:id:btsn:20200415103719p:plain
f:id:btsn:20200415103735p:plain
*MOTEX 様のオススメは「相対」で「昨日」を選択するとのことでした(一部表示をカットしております)
*バーの各所はクリックしてドリルダウンすることが可能です。遷移先の表示データはかなり細かい粒度です。
*現状、在宅勤務で行われていることもあり、アクティブなウインドウが前面に残る場合はバーがそのまま伸びる可能性もあります。(それはそれで「ここで業務終了したんだな」と判断できます)

<LanScope Cat 業務分析レポート - MicrosoftOffice製品 操作時間【全体】>
f:id:btsn:20200410121934p:plain
*やはり、Excel の利用が多いんだなぁと実感。(逆に Word は殆ど利用されていないとか)

<LanScope Cat インベントリレポート - マシンベンダー割合【全体】>
f:id:btsn:20200410122503p:plain
*2019年度は DELL をメインで購入していたので増えたなぁ、という印象。

ご紹介した3種のレポートのうちで「LanScope Cat 勤務実態レポート」に関してはココまで詳細に出るのが感動しました。Cat のログの詳細さにも感動しつつ、Splunk のログ取込からデータ表示までの速さにも感動です!コレであれば「遠隔地でも労務状況を見える化できた事で在宅勤務にも安心して踏み切れた」と胸を張れそうです。ちなみに、Splunk を導入したサーバを localhost 以外からアクセスする際は TCP 8000 のポート開放が該当ネットワークの受信規則で必要となります。それでは、良い LanScope Cat × Splunk ライフを!