Switch branches/tags
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
AUTH-PROXY.md
AUTH.md
NODE.md
PARAMETERS.md
PROXY.md
README.md

README.md

Teleport Clusterの構成

図のようにteleportはProxy,Auth,Nodeの構成にて一つのClusterを構成します。
本稿では、ansibleを用いてEC2に対してauth, proxy, nodeをそれぞれ構成していきます。

  1. PlayBookのパラメーターについて
  2. authサーバーの構成
  3. proxyサーバーの構成
  4. nodeサーバーの構成
  5. auth-proxyサーバーの構成

Teleport Clusterの構成詳細

TeleportはAuthサーバーにて発行したTokenをProxy、Nodeの設定ファイル書き込み Teleportを起動する事でAuth⇔Proxy、Auth⇔NodeのJoinを行っています。 本Ansibleではこの手順を簡略化する為に以下の様な方法をとっています

teleport_cluster.svg

上図はTeleport Clusterのシンプルな構成です

  1. Authサーバー

    1. authサーバーは構築時に同時に証明書を扱うget-certとtokenを扱うpublish-tokenを導入します。
    2. get-certは実行時にLet's Encryptにアクセスを行い指定のドメインの証明書を取得しS3バケットにアップロードします
    3. publish-tokenは実行時にtctlを実行しTeleportのサーバーからProxy,Node,Trusted用の各tokenとCAを取得しSSMにアップロードします
  2. Proxyサーバー

    1. Proxyサーバーを構築時にpush-certget-tokenが導入されます
    2. push-certは実行時にS3バケットから証明書をダウンロードしてProxyサーバーのWEB証明書として使用します。
    3. get-tokenは実行時にSSMからProxy TokenとCAをダウンロードします
    4. teleportは2、3で取得したTokenとCAを使用してProxyサーバーとしてAuthサーバーに紐づきます
  3. Proxyサーバー

    1. Proxyサーバーを構築時にget-tokenが導入されます
    2. get-tokenは実行時にSSMからNode Tokenをダウンロードします
    3. teleportは2で取得したTokenを使用してNodeサーバーとしてAuthサーバーに紐づきます