web-dev-qa-db-ja.com

AWS-IAM権限をチェックする要塞?

特定のユーザーが特定のEC2インスタンスに接続できるかどうかを確認するためにIAMをチェックする要塞ホストをAWSにセットアップすることは可能ですか?

少しぼやけているかもしれませんが、アイデアは次のとおりです。

会社に2人の顧客がいて、それぞれが1つのEC2インスタンスで動作していると仮定します。つまり、顧客AとB用にMachineAとMachineBがあります。次に、3人の従業員もいます。

  • ジョン-どこにでも接続できる必要があるシステム管理者
  • スティーブ-顧客A向けの製品に取り組んでいる開発者。明らかに彼はMachineAにのみ接続できるはずです。
  • メアリー-顧客B向けの製品に取り組んでいる開発者。明らかに彼女はMachineBにのみ接続できるはずです。

両方のマシンはプライベートサブネットで実行され、それらへの接続はパブリックサブネットの要塞ホストを介してのみ可能です。さて、IAMでユーザーのグループを検証して、このユーザーが特定のマシンに接続できることを確認するように、この要塞を構成することは可能でしょうか?

したがって、メアリーがSSHを介して要塞に接続するとき、彼女は自分のIDを使用します。そこで彼女はMachineBにジャンプしようとするので、Bastionはユーザーの資格情報をチェックし、彼女がグループdevsBに属していることを確認し、接続を許可しますが、MachineA何らかの理由で...

2

AWS System Manager を利用して、IAMでec2インスタンスへのアクセス制御を管理できます。

1
Henrik Pingel

SSHコンテキストでテストするのは少し難しいかもしれないので、IAMグループのメンバーシップには依存しません。

代わりに、すべてのユーザーに個々のユーザーアカウントで要塞ホストへのSSHアクセスを許可し、適切なユーザーのみが各顧客のインスタンスにアクセスできるようにします。

最も簡単な方法は、Steveの公開SSHキーをMachineA:/home/ec2-user/.ssh/authorized_keysに追加することです。同様に、MachineBに対するメアリーの公開鍵。

次に、 SSH ProxyJumpSSH Agentアクセスを容易にするため。

お役に立てば幸いです:)

0
MLu

aws-gate を使用できます。これは、EC2インスタンス接続からのSSHキーアップロード機能、SSH over SSMトンネリングを組み合わせ、アクセスはIAMポリシーを介して完全に管理され、監査にAWSCloudTrailを使用します。

0
xenol