ゼロトラストのこれまで
まずはGoogleTrendで何時頃から注目されているのか見てみた。
確認できる限り、2005/05には検索ワードに登場していたようだった。
その後、2010年にFressterResearch社のジョン・キンダーバーグ氏がゼロトラストを提唱し、検索が増え始める。
2014年、GoogleがBlogにてBeyondCorpの考え方を公開。
2019年、ゼロトラストのオライリー本登場。
ゼロトラストが解決する課題
これまでは境界防御という形式でプライベートネットワーク内のセキュリティを担保していた。
しかし、近年の多様な標的型攻撃に境界防御が通用しなくなってきている。
ゼロトラストではすべてのアクセスについてユーザーやデバイスに関わる認証を行い、アプリケーションやデータを不正アクセスから保護することができる。
Identity-Aware Proxy(IAP)
一言にゼロトラスト、と言っても様々な種類のソリューションがある。
そのうちでも本記事ではIAPと呼ばれる種類のソリューションの以下の3つのOSSについて比較していく。
- Hashicorp Boundary
- teleport
IAPはサーバーやアプリケーションへのアクセスを中継する時に、管理されたIDで認証するという考え方となっている。
Hashicorp Boundary
2020/10頃に登場したOSS製品で現在のgithubスター3.1k※1。
現在の最新バージョンは0.7.4※1。
Hashicorp製品同士の連携に強い。
boundary
はサーバー・クライアントで同じバイナリを使用する。
サーバーとアカウントをセットアップしたら以下のようなコマンドでバックエンドに接続する。
boundary connect ssh -style putty -target-id ttcp_XXXXXXXXXX
sshの他にhttp
、postgres
、rdp
などがある。
postgresqlのクライアントとしてpsql
を、RDPクライアントとしてmstsc
を使用する。
上記以外のクライアントを使いたい場合は-execオプションを利用する。
例)boundary connect -target-id ttcp_XXXXXXXXXX -exec mysql -- -h mysql.example.com -u admin -p
teleport
2016/06頃に登場したOSS製品で現在のgithubスター10.9k※1。
現在の最新バージョンは8.1.1※1。
製品として成熟しており、ドキュメントが読みやすい。
OSS版以外にエンタープライズ、及びクラウド版もある。
クライアントはtsh
コマンドと管理者向けにtctl
を利用する。
tctl
コマンドでユーザーを追加したりトークンを追加したりする。
teleport
コマンドでサーバーを起動したりクラウドDB(RDSなど)への接続を中継するプロキシエージェントを起動したりする。
teleport動作構成
teleportを実際構築するとなるとそこそこややこしかったので構成をまとめてみる。
まとめ
製品の歴史、完成度、見た目、機能などなど総合してteleportが良さそうに見える。
ただし導入難易度が少し高めか?
記事補足
※1 2022/01/28 時点での情報を記載。