Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

k8sのエンドポイントへの接続をサービストークン等で保護する #380

Open
kory33 opened this issue May 29, 2022 · 0 comments
Labels
Category: Terraform Terraform 周りのワークフロー、設定、ドキュメントに関するissue/PR

Comments

@kory33
Copy link
Member

kory33 commented May 29, 2022

現在、誰でも k8s-api.onp-k8s.admin.seichi.click にTCP接続を(cloudflare経由で)張れるようになっている。(影響範囲が極めて限定的であるとはいえ)k8sのAPIサーバーへのDoS攻撃などを防ぐため、これをサービストークンが無いと接続できないようにしたい。

より具体的には、今の GitHub Actions では

  • Cloudflare へのトンネルを張る
  • GitHub Actions の secret を TF_VAR_** にセット
  • tf apply / tf plan

という流れになっているが、これを

  • Cloudflare に(最短でexpireする)サービストークンを発行してもらい、そのサービストークンで k8s-api.onp-k8s.admin.seichi.click に認証できるように設定する
  • そのサービストークンを利用してCloudflare へのトンネルを張る
  • GitHub Actions の secret を TF_VAR_** にセット
  • tf apply / tf plan

という流れにしたい。最初のステップは terraform でやって良いが、最後のステップの tf apply / tf plan とは別のワークスペースに tfstate を置いておく必要がある。多分Terraform Cloudの機能で何とかなる。

@kory33 kory33 added the Category: Terraform Terraform 周りのワークフロー、設定、ドキュメントに関するissue/PR label May 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category: Terraform Terraform 周りのワークフロー、設定、ドキュメントに関するissue/PR
Projects
None yet
Development

No branches or pull requests

1 participant