web-dev-qa-db-ja.com

EC2での2要素認証

EC2で金融機関向けのものをホストする必要があります。銀行は完全な2要素認証を望んでいるので、パスワード付きのキーを使用してSSHを使用するようなものです。 SecureIDなどのようなものがあれば素晴らしいでしょう。 SSHを介してEC2環境への2要素認証を効果的に作成するにはどうすればよいですか?

また、OpenVPNを2要素認証の一部と見なすことはできますか?

7

duo_unix を使用すると、任意のSSHログイン方法に2要素認証を追加でき、 Duo OpenVPN統合 を使用すると、OpenVPNに2要素認証を追加できます。

免責事項、私はDuoで働いています。

5
Karl Anderson

更新

AWSは最近、以下の私の元の回答で言及されているEC2およびRDS内のIAMサポートのこの長年の欠点に対処するために AmazonEC2およびAmazonRDSのリソースレベルのアクセス許可 を発表しました。

今日、 Amazon EC2 および Amazon RDS のリソースレベルのアクセス許可を導入することで、IAMをさらに強力にしています。 [...]

EC2側では、IAMポリシーを作成して使用し、EC2インスタンス、EBSボリューム、イメージ、ElasticIPアドレスへのアクセスを制御できるようになりました。 [...]

これがあなたができることのほんの一部です:

  • 大規模なマルチユーザーEC2環境内で、ユーザーが限られたリソースセットを操作できるようにします。
  • 「開発」リソースと「テスト」リソースに異なる権限を設定します。
  • どのユーザーがどのインスタンスを終了できるかを制御します。
  • 特定のリソースを操作する場合は、MFA認証などの追加のセキュリティ対策が必要です。[emphasis mine]

強調したように、MFA 特定のリソースに作用する場合を使用することはEC2インスタンスでも可能になりました。たとえば、 EC2インスタンスの停止と終了を、ユーザー名/パスワードで認証されたユーザーに制限しますand MFAデバイスからの認証コード。


最初の回答

SecurIDと同様の2要素認証は、 AWS Identity and Access Management(IAM) を介して AWS Multi-Factor Authentication を介して簡単に利用できます。ただし、これが実際に質問に当てはまるかどうかは、特定のユースケース、つまり2要素認証で保護する必要のあるシナリオ(たとえば、前述のSSHアクセスとAWS管理コンソールアクセスとEC2でホストするウェブサイトへのアクセス)によって異なります。等。)。

具体的には、IAMはAWSマネジメントコンソールへのアクセスをカバーしますが、SSHはカバーしません。 さらに、EC2はAWS製品の1つであり、IAMはリソースレベルでは適用されず、サービスレベルでのみ適用されます。 他のAWS製品との統合 および AWS Identity andAccessの使用)を参照してください。 EC2 による管理、特に次の免責事項:

重要

Amazon EC2は、SSHキー、Windowsパスワード、およびセキュリティグループを使用して、特定のAmazonEC2インスタンスにアクセスできるユーザーを制御します。 IAMシステムを使用して、特定のインスタンスへのアクセスを許可または拒否することはできません。

多要素認証に関係なく、AWSではIAMの使用を強くお勧めします。

最後に、ユースケースに関しても役立つ可能性のあるIAMへの最近の2つの追加を強調したいと思います。

  • AWS Identity and Access Management-Now With Identity Federation -この新しい機能により、企業内の既存のID(ユーザーなど)は、IAMのきめ細かいアクセス制御を使用せずにAWSAPIとリソースにアクセスできます。 IDごとにIAMユーザーを作成する必要があります。
  • AWS仮想(ソフトウェア)多要素認証-RFC 6238サポート --MFA認証コードを生成するために購入できるハードウェアMFAデバイスをサポートします。 [...]本日、追加オプションである仮想MFAデバイスを導入することを発表しました。スマートフォンまたはタブレットでMFA認証コードを生成できるようになりました。
2
Steffen Opel

EC2コンソールへのアクセスを2要素で保護する必要があります。そこにあなたはアマゾンに翻弄されています。 SSHアクセスの場合、多くのオプションを実行できます。 SSHキーを実行し、キーにパスワードが必要です。ただし、誰かがパスワードを持つ証明書について嘘をついているSSHクライアントを作成することを妨げるものは何もないことに注意してください。 SSHはセキュリティPoVからは優れていますが、規制要件に常に合格するとは限りません。たとえば、キーを定期的に再生成する必要がある場合があります。 SSHはそれをサポートしていません。

2要素認証システムを使用する場合は、PAMRADIUSが最適です。 http://www.wikidsystems.com/support/wikid-support-center/how-to/pam-radius-how-to

hth、

1
nowen

EC2には、そのサービスに対する2要素認証があります。これは重要な最初のステップです。

ただし、所有していないクラウドサービスでホストされているものは、せいぜい安全でないと見なす必要があります。

その理由は、共有メモリと共有リソースを備えた仮想マシンがあるためです。 EC2では、データがどこにあるのか、どのように効果的に保存されているのかがわかりません。あなたのVPSが他の組織の他のVPSと共有されていることに気付くかもしれません。

したがって、EC2の財務データをEBSドライブに保存する場合は、暗号化する必要があります。

したがって、これは安全だと思うかもしれませんが、最も弱いリンクと同じくらい安全です。

引用すると 別の情報源 彼はそれをよく言っているからです。

...しかしVMインスタンスは他のインスタンスと物理ハードウェアを共有することが多く、EC2はパブリックサービスであるため、これらの共存VMは完全に友好的ではない可能性があります。ここでの主な脅威はもちろんです。 、ソフトウェアの脆弱性-攻撃者が1つのVMから別のVMに侵入する可能性があります。しかし、ソフトウェアを完成させたとしても、攻撃者が== = [(VM $ ===インスタンスは共存VMで サイドチャネル攻撃 を実行できる可能性があります。

これにより、このタイプの攻撃に対して2要素認証が役に立たなくなります。

さて、あなたがそれと一緒に暮らすことができるなら、あなたはそれをどのように行いますか? このstackoverflowの質問/回答 より良いものの1つであるGoogle認証システムの使用に関するいくつかの回答を提供します。

しかし、そこには多くの2要素認証オプションがあり、ハードウェアキーフォブを必要とするものもあれば、Google認証システムのように携帯電話を使用するものもあります。銀行または金融機関は、実際に許可する2要素認証方法を義務付ける場合があります。

OpenIDは、openidを使用して多くのサービスにログインできるという点で優れたアイデアです。ただし、1回のログインで多くのものにアクセスできるため、欠陥もあります。簡単なGoogleと私は、OpenIDと2要素認証を使用する http://wikid.com/ を見つけました。私はあなたの特定の場合にそれを使うことを躊躇するでしょう。

ちなみに、クレジットカードでのお支払いは受け付けますか? [〜#〜] pci [〜#〜] に準拠する必要がある場合がありますが、EC2インスタンスに準拠できるかどうかは完全にはわかりません。それらは非常に厳格ですが、正当な理由があります。カード支払いを直接受け入れず、クレジットカードデータを保存せずに、Webサイトとやり取りできるサードパーティの支払いプロバイダーサービスを利用することで、リスクを軽減する方法があります。

ペイメントカードを受け入れる加盟店の場合は、PCIデータセキュリティ基準に準拠する必要があります。正確なコンプライアンス要件は、ペイメントブランドまたはアクワイアラーからのみ確認できます。ただし、アクションを実行する前に、ここの情報とリンクから、背景情報と、実行する必要があることの一般的な理解を取得することをお勧めします。

1
Matt