sql >> Databáze >  >> NoSQL >> MongoDB

Bezpečné nasazení MongoDB na Amazon AWS

Minulý týden mě jeden z mých zákazníků požádal o doporučení architektury pro bezpečné nasazení produkčních instancí MongoDB na Amazon EC2 AWS. To mě přimělo přemýšlet o tématu a tento blogový příspěvek je výsledkem. Příliš mnoho společností vystavuje své produkční databáze MongoDB na internetu, když existují lepší možnosti. Pravidlo #1 zabezpečení je omezit fyzický přístup k vašim databázovým serverům. I když jsou vaše přihlašovací údaje kompromitovány, výrazně to snižuje dopad, pokud útočník nemůže získat přístup k vašim serverům.

Než se ponoříme do podrobností, vraťme se trochu zpět a připomeňme si, jak pracovníci IT nasazovali databáze ve světě AWS před Amazonem. Pamatuji si několik různých konfigurací:

1. Konfigurace duální brány firewall DMZ (demilitarizovaná zóna)

V této konfiguraci jsou servery přední a střední vrstvy nasazeny v DMZ a databázové servery jsou za druhým firewallem. Přední firewall umožňuje připojení na webových portech a zadní firewall umožňuje připojení pouze na databázových portech.

2. VLAN – Méně populární než Dual Firewall DMZ

Databázové servery a front-end servery jsou na samostatných VLAN. V propojení trunku mezi dvěma VLAN jsou povoleny pouze databázové porty.

Technicky se od té doby nic moc nezměnilo. Techniky jsou však nyní jiné. Už nemluvíte o DMZ a firewallech, ale mluvíte o VPC a bezpečnostních skupinách. Pokud jste větší podnik s IT personálem, určitě bych se podíval na Amazon VPC. Poskytuje vám velkou kontrolu nad sítí vrstvy 3 a můžete umístit své databáze do soukromé podsítě a nevystavovat je internetu. To je však mnohem delší téma na další blogový příspěvek. Pokud jste již nastavili VPC a chcete nastavit MongoDB ve VPC, zde je můj příspěvek na blogu, který vás provede jednotlivými kroky – Nasazení MongoDB na Amazon VPC.

Ve zbytku tohoto příspěvku se zaměřím na EC2-classic.

3 kroky ke konfiguraci Dual Firewall DMZ v AWS

1. Vytvořte skupinu zabezpečení pro své servery MongoDB

Skupina zabezpečení může pokrývat celý region – takže i když máte sadu replik, můžete své repliky distribuovat do zón dostupnosti v regionu a stále je mít ve stejné skupině zabezpečení . Vytvořte skupinu zabezpečení pro své servery MongoDB a přidejte všechny své servery mongo pouze do této skupiny zabezpečení.

2. Vytvořte skupinu zabezpečení pro své servery střední/přední úrovně

Vytvořte další skupinu zabezpečení pro své servery MongoDB střední a/nebo přední úrovně.

3. Nakonfigurujte svůj přístup k skupině zabezpečení MongoDB

Nakonfigurujte svou skupinu zabezpečení MongoDB tak, aby umožňovala přístup k serverům přední úrovně pouze na portech MongoDB. Nakonfigurujte svou frontendovou bezpečnostní skupinu tak, aby otevírala webové porty k internetu.

Nakonfigurujte Dual Firewall DMZ v AWS prostřednictvím ScaleGrid

1. Vytvořte skupinu zabezpečení v AWS

Přihlaste se do konzole Amazon a vytvořte skupinu zabezpečení pro své servery střední a přední úrovně. Skupinu zabezpečení nazvěme „AppServerSG“. Nakonfigurujte tuto skupinu zabezpečení tak, aby podle potřeby otevřela port http/https. Umístěte své servery střední a přední úrovně do této skupiny zabezpečení.

2. Vytvořte cloudový profil ScaleGrid AWS

Přihlaste se do konzoly ScaleGrid a klikněte na kartu Machine Pool. Vytvořte si vlastní vlastní fond strojů, abyste mohli nasadit a spravovat instance mongo ve svém vlastním účtu AWS. Na záložce Machine pool klikněte na tlačítko vytvořit. Zadejte svůj Amazon API klíč a tajný klíč a stiskněte Další:

3. Vyberte svůj region AWS pro MongoDB

Vyberte oblast AWS podle svého výběru pro nasazení MongoDB:

4. Nakonfigurujte zásady přístupu

Toto je hlavní krok pro konfiguraci zabezpečení. Vyberte možnost, abyste povolili přístup k vašim serverům MongoDB pouze počítačům v konkrétní skupině zabezpečení. Poté vyberte skupiny zabezpečení, kterým chcete poskytnout přístup. Zadejte název fondu počítačů a poté klikněte na tlačítko Další:

5. Vytvořte svůj MongoDB Cluster

Přejděte zpět na stránku nasazení MongoDB v hlavní konzoli. Kliknutím na „Vytvořit“ vytvoříte nový cluster MongoDB. Ve výběru Fond počítačů vyberte fond počítačů, který jste právě vytvořili, a vytvořte cluster.

Toto je jen jedna z technik, jak zabezpečit nasazení MongoDB na AWS. Pokud máte nějaké další návrhy, použijte prosím sekce komentářů, abyste nám poskytli zpětnou vazbu. Podrobnější bezpečnostní postupy naleznete v bezpečnostních postupech 10gen. Jako vždy, pokud máte nějaké dotazy, napište nám na adresu [email protected].


  1. Vypořádání se se změnami schématu v Mongoose

  2. Základní úvahy o zálohování MongoDB

  3. Mongodb:Nepodařilo se připojit k 127.0.0.1:27017, důvod:errno:10061

  4. Azure DataBricks Stream foreach selže s NotSerializableException