Jak mogę bezpiecznie przechowywać dane uwierzytelniające AWS na komputerach osobistych?
Szczegółowo:
Wszyscy w naszym zespole wymagają poświadczeń bezpieczeństwa AWS do wykonywania zadań administracyjnych (poświadczenia są rozdzielone według roli). Poświadczenia te są zwykle przechowywane w postaci zwykłego tekstu w niektórych plikach konfiguracyjnych na dysku. Myślę, że jest to bardzo niepewne, szczególnie biorąc pod uwagę, że poświadczenia są rozdzielane między członków zespołu, kończą się kopią zapasową itp.
Wolałbym przechowywać te poświadczenia w postaci zaszyfrowanej (na przykład podobnej do kluczy ssh). Czy istnieje jakiś zautomatyzowany sposób? Czy też muszę zhakować skrypt bash, który używa na przykład openssl do szyfrowania danych?
W Internecie znajduje się wiele informacji na temat zabezpieczania poświadczeń w instancji EC2. Istnieje nawet funkcja ról Amazon IAM , ale ma ona również zastosowanie tylko do EC2.
źródło
Odpowiedzi:
https://github.com/realestate-com-au/credulous może być warte zbadania. Z opisu projektu:
Artykuł na blogu wprowadzającym znajduje się na stronie http://techblog.realestate.com.au/protecting-your-aws-keys-with-credulous/ .
źródło
Świetne pytanie - w zależności od osoby udzielającej odpowiedzi prawdopodobnie będziesz mieć kilka dróg do przebycia. Dam ci przykład tego, z czego korzystamy:
Przykład: zezwól na wszystkie działania ec2 dla administratora. Lub zezwalaj tylko na dostęp dla dewelopera na podstawie znacznika lub podsieci itp.
Uruchom instancje ec2 Linux za pomocą określonych ról IAM. Uruchom instancję dla każdej określonej roli lub użytkownika (dostosuj rozmiar / typ instancji zgodnie z potrzebą, budżetem itp.)
Skonfiguruj grupę zabezpieczeń dla każdej instancji, aby zezwalała tylko na określone podsieci lub pojedyncze adresy IP, dzięki czemu możesz zablokować wpływ ruchu do SSH.
Ustaw niestandardowego użytkownika / hasło dla SSH lub dołącz do domeny.
Każdemu logowaniu użytkownika lub SSH do instancji Linux należy przypisać ich rolę lub dostęp użytkownika.
Klucze API i dostęp są teraz dziedziczone z samej roli IAM instancji, co powoduje, że potrzeba przechowywania kluczy użytkowników nie ma znaczenia. Pamiętaj tylko o zablokowaniu grupy zabezpieczeń, udzielaj dostępu tylko określonym użytkownikom w Linux-ie. Użytkownik powinien mieć możliwość pisania skryptów za pomocą AWS API / korzystania z funkcji narzędzi API w normalny sposób.
Używamy tej metody od około roku - z dodatkowymi poprawkami bezpieczeństwa, takimi jak czas dzierżawy dostępu, kupionym w AWS HSM i działa świetnie.
Mam nadzieję, że to pomoże tobie lub komuś innemu.
źródło