MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Сигурно внедряване на MongoDB на Amazon AWS

Миналата седмица един от моите клиенти поиска препоръки за архитектура за сигурно разгръщане на производствени копия на MongoDB на Amazon EC2 AWS. Това ме накара да се замисля по темата и резултатът е тази публикация в блога. Твърде много компании излагат своите производствени бази данни MongoDB в интернет, когато има по-добри опции. Правило №1 за сигурност е да ограничите физическия достъп до сървърите на вашите бази данни. Дори ако вашите идентификационни данни са компрометирани, това значително намалява въздействието, ако нападателят няма достъп до сървърите ви.

Преди да се потопим в детайлите, нека се върнем малко назад и да си спомним как ИТ персоналът използваше за внедряване на бази данни в света на AWS преди Amazon. Мога да си спомня няколко различни конфигурации:

1. Конфигурация с двойна защитна стена DMZ (демилитаризирана зона)

В тази конфигурация сървърите от предно и средно ниво са разположени в DMZ, а сървърите на база данни са зад втората защитна стена. Предната защитна стена позволява връзки към уеб портовете, а задната защитна стена позволява връзки само към портовете на базата данни.

2. VLAN – по-малко популярен от DMZ с двойна защитна стена

Сървърите на базата данни и предните сървъри са на отделни VLAN. Само портовете на базата данни са разрешени в междусистемната връзка между двете VLAN.

Технически нищо не се е променило оттогава. Сега обаче техниките са различни. Вече не говорите за DMZ и защитни стени, а говорите по отношение на VPC и групи за сигурност. Ако сте по-голямо предприятие с ИТ персонал, определено бих разгледал Amazon VPC. Той ви дава много контрол върху мрежата от слой 3 и можете да поставите вашите бази данни в частна подмрежа и да не ги излагате на интернет. Това обаче е много по-дълга тема за друга публикация в блога. Ако вече сте настроили VPC и искате да настроите MongoDB във VPC, ето моята публикация в блога, за да ви преведе през стъпките – Разгръщане на MongoDB в Amazon VPC.

В останалата част от тази публикация ще се съсредоточа върху EC2-classic.

3 стъпки за конфигуриране на DMZ с двойна защитна стена в AWS

1. Създайте група за сигурност за вашите MongoDB сървъри

Група за сигурност може да обхваща цял регион – така че дори и да имате набор от реплики, можете да разпределите репликата си в зоните за наличност в региона и все още да ги имате в същата група за сигурност . Създайте група за сигурност за вашите MongoDB сървъри и добавете всичките си монго сървъри само към тази група за сигурност.

2. Създайте група за сигурност за вашите сървъри от средно/предно ниво

Създайте допълнителна група за сигурност за вашите сървъри на MongoDB от средно и/или предно ниво.

3. Конфигурирайте своя достъп до групата за сигурност MongoDB

Конфигурирайте вашата група за сигурност MongoDB, за да разрешите достъп до сървърите на предното ниво само на портовете на MongoDB. Конфигурирайте вашата група за сигурност на предния край, за да отваря уеб портовете към интернет.

Конфигурирайте DMZ с двойна защитна стена в AWS чрез ScaleGrid

1. Създайте група за сигурност в AWS

Влезте в конзолата си на Amazon и създайте група за сигурност за вашите сървъри от средно/предно ниво. Нека наречем групата за сигурност „AppServerSG“. Конфигурирайте тази група за сигурност, за да отваря http/https порта, ако е необходимо. Поставете сървърите си от средно и първо ниво в тази група за сигурност.

2. Създайте облачен профил на ScaleGrid AWS

Влезте в конзолата ScaleGrid и щракнете върху раздела Машинен пул. Създайте свой собствен персонализиран пул от машини, така че да можете да разгръщате и управлявате монго инстанции в собствения си акаунт в AWS. В раздела Машинен пул щракнете върху бутона за създаване. Въведете своя Amazon API ключ и таен ключ и натиснете Next:

3. Изберете вашия регион на AWS за MongoDB

Изберете региона на AWS по ваш избор за внедряване на MongoDB:

4. Конфигурирайте вашата политика за достъп

Това е основната стъпка за конфигурирането на сигурността. Изберете опцията да разрешите само на машини в определена група за сигурност да имат достъп до вашите MongoDB сървъри. След това изберете групите за сигурност, до които искате да предоставите достъп. Въведете име за вашия пул от машини и след това щракнете върху следващия:

5. Създайте своя MongoDB клъстер

Върнете се обратно до страницата си за внедряване на MongoDB в главната конзола. Щракнете върху „Създаване“, за да създадете нов MongoDB клъстер. В избора Машинен пул изберете машинния пул, който току-що създадохте, и създайте клъстера.

Това е само една от техниките за осигуряване на внедряването на MongoDB в AWS. Ако имате други предложения, моля, използвайте секциите за коментари, за да предоставите отзивите си. За по-подробни практики за сигурност вижте практиките за сигурност 10gen. Както винаги, ако имате въпроси, пишете ни на [email protected].


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да пагинирам с Mongoose в Node.js?

  2. java.lang.NoClassDefFoundError при използване на драйвер на MongoDB

  3. Как да конфигурирам MongoDB Java драйвер MongoOptions за производствена употреба?

  4. MongoDB:Как да актуализирам единичен поделемент в масив, посочен от индекса в масива?

  5. $unionWith – Еквивалент на MongoDB на UNION ALL