rela1470のブログ

rela1470がブログです。

2020年 Kyash コーポレートエンジニアリング振り返り

Kyash Advent Calendar 2020 23日目です! adventar.org 今年は2回記事を書かなくても良いくらいには組織も大きくなっている...感慨深い...

はじめに

株式会社Kyash
Information&Security Team
Corporate Engineer
のわたなべです。

www.kyash.co

毎年恒例*1*2*3になりました、今年のお仕事を振り返るブログです。

昨年のOneLoginに関するブログは、本当に大きな反響を頂きました。改めてお礼申し上げます! rela1470.hatenablog.jp rela1470.hatenablog.jp rela1470.hatenablog.jp

f:id:rela1470:20201222141820p:plain
OneLogin公式サイトでも(いきなり)取り上げていただきました!

2020年サマリ

Kyashの2020年の社内システムはこんな感じです。

f:id:rela1470:20201222180921p:plain
今回のために作ったものではないので、全てを網羅しているわけではありません。

ではでは1つずつ振り返りたいと思います。

オンボーディングのフルリモート化

やはり2020年でいちばん大きいのは、コロナ禍における自宅勤務への強制移行でしょうか。
入社時の対応もすべてリモートで行っており、それまでは対面でやっていたPCセットアップも、同タイミングでJamfでの自動化を行うことが出来ました。
Jamfは2019年12月に契約して、ちょうどJump Startが終わったタイミングでした。本当に導入しておいてよかった...!

Macのゼロタッチデプロイメントへの移行

f:id:rela1470:20201222154917p:plain
開封の状態で自宅へ郵送します。
基本的に開封Macを自宅へ郵送し、入社当日に開封してもらっています。
これはMacの工場から手元に届くまでに細工をされていないことを証明する、という厳密なゼロタッチデプロイメントを実現できることになり、よりセキュリティの向上に繋がりました。

現在行っているセットアップ内容はこんな感じです。

f:id:rela1470:20201222154741p:plain
PC名の変更、各種ツールのインストール、EDRインストール、EFIパスワードとFileVault有効化

DEP端末なのでセットアップ時にリモートマネージメントの画面が走るのですが、ここでOneLoginのvLDAP認証を行うことにより、ユーザー名とパスワードの統一も実現できています。

f:id:rela1470:20201222155239p:plain
このタイミングではjamfはLDAPでしかユーザー認証ができません

f:id:rela1470:20201222155334p:plain
ここでマニュアル通りコーヒーを飲む必要があります。コーヒーを飲まないとセットアップは失敗します。(諸説あります)

あ、DEPなのでもちろん失敗も多い*4*5です。そのため、Self Service上からも同様の処理が実行できるようにはしてあります。ここはもう少しなんとかしてほしいところですけどね...まあ仕方がないです。

フルリモート化の弊害として、わたなべ自宅に大量のPC在庫が...
毎週のようにPCを持って営業所に通っているので、ヤマト運輸のおばちゃんに顔と会社名を覚えられました。

f:id:rela1470:20201222160519p:plain
IKEAで棚を買ってきました

新規ツール導入

さて、2019年にOneLoginの導入を行い、根幹の整備をずっと行ってきました。
2020年はそれをベースに沢山のツールを導入してきました。
こうやって見ると多いですね。ツールを使うことが目的にならないよう、改めて気を引き締めようと思いました。

ピュアクラウドPBX

しばらく電話対応のためにバックオフィスチームが出社する、という前時代的な対応が発生してしまったため、ピュアクラウドPBXであるDialPadを導入しました。

www.dialpad.co.jp

コロナ対策支援の無償利用期間中は大変お世話になりました。 管理画面もわかりやすく、ルーティングもすぐに変更できます。大きなトラブルなく、本当にスムーズに移行を完了できました。

MDMツール

2019年の記事でも書きましたが、MacはJamf Pro、WindowsはIntuneをそれぞれ導入しました。 www.jamf.com www.microsoft.com

先述したようにほぼキッティングをゼロコスト化出来たので、大きな成果だなと感じています。
これを導入していなかったらどうなっていたか...

EDRツール

こちらも2019年の記事で書きましたが、CrowdStrike Falconを導入しました。

www.crowdstrike.jp

弊社はInsightとPreventの導入です。肝心の検知率もそうですが、管理画面がカッコいいのがステキです。

f:id:rela1470:20201222162733p:plain
これはOneLogin DesktopというPCのパスワードを書き換える怪しいツールが動作した様子です。
1年運用しましたが、大きなトラブルもなく、インシデント発火も適切で使い勝手も良いですね。

Zoom

社内MTGのオンライン化に伴い、最初はG Suite契約内に入っていたGoogle Meetを導入しました。
ただ録画機能等のコロナ対策支援が終了したタイミングで再考し、録画機能がついている上位プランへの移行、Zoomの新規契約のどちらもコストが変わらない、ということを考え、Zoomの導入をすることに決めました。
これは導入前にも各社員が取引先とのやり取り等でアカウントを発行しており、所謂シャドーIT化してしまっていたこともあり、今回の新規契約で会社管理のアカウントに移行出来ることもメリットとして考えました。

f:id:rela1470:20201222150712p:plain
今回契約したのはZoom MeetingsビジネスとZoom Roomsライセンスです。
Zoom Meetingsビジネスを契約することによって、会社全体をテナントして管理出来るようになります。
f:id:rela1470:20201222150746p:plain
今回は会社メールアドレスでZoomアカウントを発行しているユーザーすべてをテナント管理化しました。

f:id:rela1470:20201222150913p:plain
アカウント移行はシステムが自動で行ってくれ、初回ログイン時に以下のような画面が出ます。

f:id:rela1470:20201222151405p:plain
会社全体でオプションの設定を強制できるので、適切なセキュリティを保てます。

f:id:rela1470:20201222151211p:plain
会社の仮想背景をデフォルト登録できるのは面白いな、と思いました。

Zoom Roomsは会議室用のライセンスです。これに関してはまた別の機会に触れられたらと思います。
まだまだ使いこなせておらず、Zoom難しいなと思っています...笑
頑張って改善するから社内のみんなも待っててね!

人事管理ツール

人事管理ツールとしてカオナビを導入することになったため、その導入サポートを行いました。

www.kaonavi.jp

カオナビはシングルサインオンに対応しているものの、SAMLプロビジョニング等の機能はありません
そのため、API連携機能を自作し、初期ユーザーをOneLoginから流し込むツールを作成しました。

f:id:rela1470:20201222173814p:plain
ただし結構な力技です
余談ですが、これがKyashで唯一、PHPで書かれているリポジトリになります笑*6

ちょっと癖があるAPIですが、APIが公開されているというだけで本当に助かるので、全SaaSツールはAPIを公開してください。まじで。

カオナビが導入されたことにより、社員マスターのプライマリをOneLoginからカオナビに変更しました。
人事の方にカオナビ上で異動や入退社を入力してもらい、それをAPI経由でOneLoginに反映する仕組みです。
もともとOneLoginのMapping機能を使って社内アプリ権限を管理しているので、カオナビの部署異動がOneLoginに反映されれば、自動で各種アプリの権限も変更されます。
これにより、伝言ゲームだった人事マスター更新が職掌から外れました。

BCP対策ツール

安否確認ツールとして、トヨクモ安否確認サービス2を導入しました。
社員全員に一括連絡や回答をもらうツールです。

anpi.toyokumo.co.jp

こちらもAPIが公開されているので、データ連携ツールを自作しました。欲を言うとSAML対応してほしいなあ。

Web研修ツール

年に一度、リスク・コンプライアンス研修や情報セキュリティ研修を履修する必要があり、その管理ツールとしてGoogle Classroomを導入しました。
学校向けのツールではあるものの、提出物の管理などが出来るので、研修ツールとして代用しました。
全社員が入ったクラスを作成して、労務の方が担任になっている、という形です。ちょっとおもしろいですね。

f:id:rela1470:20201222172002p:plain
期日の設定、だれが提出したかの管理等、基本的な機能は賄えます。

ただ、Googleのツールではあるものの、Googleグループの連動等が出来ないのでちょっと癖があるツールです。
まあ年度中にそう何回も転校生が来るなんてことはないですからね。設計思想的にはしょうがないと思います。
会社で使う場合は、月に何度も転校生がくるので、どうにかしなくてはいけません。

ということで、こちらもAPIが公開されているので、ユーザー管理の部分だけ自作しました。
GUI上ではクラス編入に本人のapproveが必要なのですが、API経由で生徒を招待するとスキップできます。豆知識。

f:id:rela1470:20201222173115p:plain
PHPで書くと、composerでgoogle/apiclientを入れるだけなので簡単です。

SIEMツール

社内用のSaaS導入が増え、ログもばらばらになってきました。保存期間も契約によって違うので、証跡残しのためにSumo Logicを導入しました。CrowdStrikeと併用して、インシデント対応に備えています。

www.sumologic.jp

横断的にログ解析ができるようになったことに加え、イベントの重要度に応じて通知を自動で送るように出来ました。

f:id:rela1470:20201222173421p:plain
入社管理の部屋にアカウント作成時に通知を送るなど

f:id:rela1470:20201222182850p:plain
あ、僕が飼ってるBotは4匹います。

今回、初回導入支援としてペンティオさんに入っていただき、非常に助かりました。本当にありがとうございました。

Forward Proxy

弊社の社内システムはすべてゼロトラストネットワークの概念を念頭に設計されており、IPアドレス制限等は行っていません。
しかし、取引先によってはIPアドレスの申請等が必要になる場合があります。緊急事態宣言下では暫定的に各担当者の自宅IPアドレスを申請していたりしていました。
やはり会社として用意をしたほうが良いだろうとは思っていたのですが、自分がVPNが嫌いなのでどうしよう...というタイミングで、SREのyuu26からForward Proxyはどうかという提案を頂きました。*7

f:id:rela1470:20201222145208p:plain
Squid + OneLogin

結果的に、Forward ProxyはVPNと違ってWebブラウザ上のIPアドレス制限の迂回のみにしか使えないものなので、システム的にもリスクヘッジ的にもよいバランスだったなと思います。
本人が詳細な記事を書いていますので、ぜひご一読ください!

ちなみにこのProxyはOneLogin RADIUSを使って認証しており、こちら側の工数はほぼ0でした。すばら!

f:id:rela1470:20201222144715p:plain
接続元IPアドレスと使わせたい人がアサインされたRoleを指定するだけ。うーん便利。

ちなみにちなみに、このシステムを利用した際にもSlackに通知が来るように仕込んであります。Sumo Logic便利。

まとめ

ということで、2020年も怒涛の1年でした。
こうちゃんとまとめると、色々導入してきたな...

これからもセキュリティ担保を第一に、会社全体を縁の下から支えたいと思います!

We are Hiring!

同じチームで働く同僚募集中です!
open.talentio.com

他の募集職種はこちら
open.talentio.com

*1:2019年振り2回目

*2:2回目なのでもう恒例です

*3:諸説あります

*4:ちゃんとコーヒーを飲まなかったなどが原因です

*5:諸説あります

*6:プロダクトはGo

*7:そして用意してもらいました