NFsec Logo

Ograniczanie dostępu do MongoDB w środowisku chmury

23/12/2013 w Administracja, Bezpieczeństwo Brak komentarzy.  (artykuł nr 426, ilość słów: 273)

A

ktualnie baza MongoDB (v2.4.8) nie posiada możliwości ograniczenia dostępu do wybranych adresów IP na poziomie warstwy aplikacji. Mechanizmem, który można szybko do tego wykorzystać jest netfilter. Daje się on szybko dostosować szczególnie w środowisku wirtualizacji, w którym maszyna wirtualna posiada zmienny, wewnętrzny adres IP na interfejsie eth0 – a jej zewnętrzny adres przechodzi przez mechanizm NAT.

Jest wiele skryptów z udziałem iptables, które pobierają aktualny adres IP z interfejsu eth0 i stosują odpowiednie reguły – jednak najlepszym rozwiązaniem jest takie, które nie jest zależne od zmiennych warunków sieciowych – dlatego, jeśli nasza baza ma posiadać możliwość łączenia się sama do siebie przez interfejs eth0 blokując tym samym resztę (+ oprócz wybranych) zewnętrznych adresów IP wystarczy zastosować markowanie pakietów:

iptables -t mangle -A OUTPUT -p tcp --dport 27017 -j MARK --set-mark 12345
iptables -A INPUT -i eth0 -p tcp --dport 27017 -m mark --mark 0x3039 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 27017 -s 1.2.3.4/32 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 27017 -s 0.0.0.0/0 -j REJECT

Pierwsza reguła markuje (dec) wszystkie lokalne pakiety wychodzące z naszej maszyny, których docelowym portem jest tcp 27017. Druga wpuszcza pakiety, które są oznaczone 12345 (tutaj hex). Trzecia zezwala na łączenie się innej zewnętrznej maszyny (może to być np. slave Mongo). Czwarta blokuje wszystkie inne adresy.

Więcej informacji: MongoDB Security Access Control

Kategorie K a t e g o r i e : Administracja, Bezpieczeństwo

Tagi T a g i : , , , , , ,

Komentowanie tego wpisu jest zablokowane.