Ich muss Sachen für ein Finanzinstitut auf EC2 hosten. Die Bank möchte eine vollständige Zwei-Faktor-Authentifizierung, also Dinge wie SSH mit einem Schlüssel mit Passwort. So etwas wie SecureID oder ähnliches wäre großartig. Wie kann ich effektiv eine Zwei-Faktor-Authentifizierung über SSH in meiner EC2-Umgebung erstellen?
Könnte ich OpenVPN auch als Teil der Zwei-Faktoren-Enzyklation betrachten?
security
amazon-ec2
authentication
two-factor
Stewart Robinson
quelle
quelle
Antworten:
Mit duo_unix können Sie für jede SSH-Anmeldemethode eine Zwei-Faktor-Authentifizierung hinzufügen, und mit der Duo OpenVPN-Integration können Sie OpenVPN eine Zwei-Faktor-Authentifizierung hinzufügen.
Haftungsausschluss, ich arbeite für Duo.
quelle
bastion
Docker-Container, der implementiertduo_unix
(und sogar SSH-Überwachungsprotokolle und Anmeldungsbenachrichtigungen über Slack): github.com/cloudposse/bastionAktualisieren
AWS hat kürzlich Berechtigungen auf Ressourcenebene für Amazon EC2 und Amazon RDS angekündigt , um diesen langjährigen Mangel an IAM-Unterstützung innerhalb von EC2 und RDS zu beheben, der in meiner ursprünglichen Antwort unten erwähnt wurde:
Wie bereits erwähnt, ist die Verwendung von MFA bei der Bearbeitung bestimmter Ressourcen jetzt auch für EC2-Instanzen möglich. Sie können beispielsweise das Stoppen und Beenden einer EC2-Instanz auf einen Benutzer beschränken, der durch Benutzername / Kennwort und einen Authentifizierungscode von einem MFA-Gerät authentifiziert ist.
Erste Antwort
Die SecurID-ähnliche Zwei-Faktor-Authentifizierung ist über AWS Identity and Access Management (IAM) mithilfe der AWS-Multi-Faktor-Authentifizierung verfügbar . Ob dies tatsächlich für Ihre Frage gilt, hängt jedoch von Ihrem speziellen Anwendungsfall ab, dh davon, welche Szenarien Sie mit einer Zwei-Faktor-Authentifizierung schützen müssen (z. B. der erwähnte SSH-Zugriff im Vergleich zum Zugriff auf die AWS Management Console im Vergleich zum Zugriff auf Websites, die Sie im Gegenzug auf EC2 hosten usw.).
Insbesondere deckt IAM den Zugriff auf die AWS Management Console ab, jedoch offensichtlich nicht auf SSH.
Außerdem ist EC2 eines der AWS-Produkte, bei denen IAM nicht auf Ressourcenebene, sondern nur auf Serviceebene angewendet wird (siehe Integration in andere AWS-Produkte und Verwendung) AWS Identity and Access Management mit EC2 , insbesondere der folgende Haftungsausschluss:Bitte beachten Sie, dass die Verwendung von IAM für alle AWS unabhängig von der Multifaktorauthentifizierung dringend empfohlen wird.
Abschließend möchte ich zwei neuere Ergänzungen zu IAM hervorheben, die möglicherweise auch in Bezug auf Ihren Anwendungsfall hilfreich sind:
quelle
Sie müssen den Zugriff auf die EC2-Konsole mit zwei Faktoren sichern. Dort sind Sie Amazon ausgeliefert. Für den SSH-Zugriff können Sie viele Optionen ausführen. Sie können SSH-Schlüssel ausführen und benötigen ein Kennwort. Beachten Sie jedoch, dass nichts jemanden davon abhält, einen SSH-Client zu schreiben, der über das Zertifikat mit einem Kennwort lügt. SSH eignet sich hervorragend für einen Sicherheits-PoV, erfüllt jedoch nicht immer die gesetzlichen Anforderungen. Beispielsweise müssen die Schlüssel möglicherweise regelmäßig neu generiert werden. SSH unterstützt das nicht.
Der PAM-Radius ist Ihr Freund, wenn Sie sich für ein Zwei-Faktor-Authentifizierungssystem entscheiden: http://www.wikidsystems.com/support/wikid-support-center/how-to/pam-radius-how-to
hth,
quelle
EC2 verfügt jetzt über eine 2-Faktor-Authentifizierung für seine Dienste, was ein wichtiger erster Schritt ist.
Alles, was auf einem Cloud-Dienst gehostet wird, den Sie nicht besitzen, sollte bestenfalls als unsicher angesehen werden.
Der Grund dafür ist, dass Sie eine virtuelle Maschine mit gemeinsam genutztem Speicher und gemeinsam genutzten Ressourcen haben. Mit EC2 wissen Sie nicht, wo sich die Daten befinden oder wie sie effektiv gespeichert werden. Möglicherweise stellen Sie fest, dass Ihr VPS mit anderen VPS anderer Organisationen geteilt wird.
Wenn Sie also Finanzdaten auf EC2 in einem EBS-Laufwerk speichern möchten, sollten Sie diese verschlüsseln.
Obwohl Sie vielleicht denken, dass dies sicher ist, sind Sie nur so sicher wie Ihr schwächstes Glied.
Um eine andere Quelle zu zitieren, weil er es gut sagt.
Dies würde die 2-Faktor-Authentifizierung gegen diese Art von Angriff unbrauchbar machen.
Wenn du damit leben kannst, wie machst du das? Diese Frage / Antwort zum Stackoverflow bietet Ihnen einige Antworten zur Verwendung von Google Authenticator, einem der besseren.
Es gibt jedoch viele 2-Faktor-Authentifizierungsoptionen. Einige erfordern Hardware-Schlüsselanhänger, andere wie Google Authenticator verwenden Ihr Mobiltelefon. Die Bank oder das Finanzinstitut kann tatsächlich vorschreiben, welche 2-Faktor-Authentifizierungsmethode sie zulassen.
OpenID ist insofern eine großartige Idee, als Sie sich mit Ihrer openid bei vielen Diensten anmelden können. Es ist aber auch fehlerhaft, weil es einem einzelnen Login ermöglicht, auf viele Dinge zuzugreifen. Ein schnelles Google und ich fanden http://wikid.com/ , das OpenID und 2-Faktor-Authentifizierung verwendet. Ich würde zögern, es in Ihrem speziellen Fall zu verwenden.
Akzeptieren Sie übrigens Zahlungen von Kreditkarten? Möglicherweise müssen Sie PCI- kompatibel sein, und ich bin mir nicht ganz sicher, ob Sie auf einer EC2-Instanz kompatibel sein können. Sie sind ziemlich streng, aber aus gutem Grund. Es gibt Möglichkeiten, Ihre Risiken zu verringern, indem Sie Kartenzahlungen nicht direkt akzeptieren und keine Kreditkartendaten speichern, sondern einen Zahlungsdienst eines Drittanbieters in Anspruch nehmen, mit dem Ihre Website interagieren kann.
quelle
Mit EC2 können Sie Ihre Computer mit verschiedenen SSH-Zertifikaten einrichten, die Sie erstellen können. Die einfachste Lösung für Sie besteht darin, nur eines zu erstellen, für das ein Kennwort erforderlich ist.
Beachten Sie auch die Sicherheitsbeschränkungen von EC2, die Sicherheit ist peripher und Sie wissen nicht, welche Computer was im Inneren tun. Stellen Sie daher eine strenge Sicherheit für die Kommunikation zwischen Computern her. Hierfür ist ein starkes Verschlüsselungs-VPN (OpenVPN oder Stunnel) sehr erwünscht.
quelle