Fizyda 34 Zgłoś post Napisano Maj 13, 2016 (edytowany) Podczas konfigurowania iptables (CSF) do działania z kontenerami LXC (dalej nazywane VM'kami) zacząłem zastanawiać się nad ruchem wychodzącym oraz bezpieczeństwem. CSF domyślnie blokuje większość portów wychodzących (OUTPUT) i pozostawia tylko kilka otwartych między innymi 53, 80, 443. Zacząłem zastanawiać się czy takie srogie restrykcje mają jakieś uzasadnienie pod kątem bezpieczeństwa, czy ma to jakiś sens. Moja konfiguracja wygląda w ten sposób że host pełni rolę routera. Na VMki przekierowywane są konkretne porty w zależności od usług które na nich działają. Zrobione jest to przez csf.redirect. Prosto i skutecznie, lecz w takiej konfiguracji VMki nie mają połączenia z internetem. Brak komunikacji z internetem dla VMek to spory problem bo nie można zaktualizować nic, ani zainstalować, dodatkowo jeśli np serwer HTTP będzie miał jakiś skrypt w PHP który pobiera coś z zewnętrznego serwera to zwyczajnie nie będzie działał. To samo tyczy się np TS3. Sposobem jaki znalazłem na to by VMki miały połączenie z internetem (dla ruchu wychodzącego) jest dodanie reguł w csfpre.sh: iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE Co jest zaczerpnięte stąd https://wiki.debian.org/LXC/SimpleBridge, plus zezwolenie na forwarding (csf ustawia domyślną politykę na drop) iptables -A FORWARD -i eth0 -o br-vm0 -j ACCEPT iptables -A FORWARD -i br-vm0 -o eth0 -j ACCEPT Takim oto sposobem mam połączenie z internetem na VMkach oraz przekierowane odpowiednie porty. Problem jest taki że ruch wychodzący z VMek jest jakby poza firewallem hosta, co za tym idzie jeśli np. na hoście zablokuję cały ruch wychodzący VMki i tak mogą się łączyć z internetem. Ponieważ nie da się zrobić przekierowań nat za firewallem, a przynajmniej tak przeczytałem na jednej ze stron to zacząłem zastanawiać się jak to naprawić. Jedyne co mi przyszło do głowy to instalacja CSF na VMkach, tylko szkoda zasobów i instalowania tego co już jest na hoscie. Dlatego zacząłem się zastanawiać czy jest w ogóle sens blokowania ruchu wychodzącego. Jeśli jest to jaki? W obecnej konfiguracji VMki i tak są ukryte w sieci lokalnej, a ruch przychodzący jest przekierowywany do nich taki jak ustawię na hoście. Więc czy instalować CSF na VMkach lub chociaż konfigurować na nich firewall (iptables)? -- lekki offtop -- Dodatkowo mam dziwną sytuację bo po jakimś czasie csf blokuje mi dostęp do SSH na hoście. Dziwna bo przeinstalowałem dziś CSF ponieważ miałem właśnie ten problem i myślałem że coś na grzebałem w plikach i w sumie wszystko działało przez jakiś czas. Teraz problem jakby powrócił, a ustawień nie zmieniałem. Klient SSH nie jest blokowany w hosts.denny bo sprawdzałem w iptables również brak jego ip. Nie aktualne, znalazłem przyczynę - zbanowało mnie co innego EDIT: Tak sobie myślę firewall na VMkach w sumie się przyda, bo ruch po przekierowanych portach i tak nie jest filtrowany przez firewall hosta więc przyda się coś do blokowania wszelkiego rodzaju syfu nawet na porcie 80/443 a tym bardziej przyda się to do zabezpieczenia TS3 by filtrować pakiety które mają ubić serwer. Chyba muszę zacząć stosować metodę gumowej kaczuszki Dużo przemyśleń mam a co za tym idzie często doznaję olśnienia chwilę po wysłaniu posta Edytowano Maj 13, 2016 przez Fizyda (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość Zgłoś post Napisano Maj 13, 2016 Tak sobie myślę firewall na VMkach w sumie się przyda, bo ruch po przekierowanych portach i tak nie jest filtrowany przez firewall hosta więc przyda się coś do blokowania wszelkiego rodzaju syfu nawet na porcie 80/443 a tym bardziej przyda się to do zabezpieczenia TS3 by filtrować pakiety które mają ubić serwer. Chyba muszę zacząć stosować metodę gumowej kaczuszki Dużo przemyśleń mam a co za tym idzie często doznaję olśnienia chwilę po wysłaniu posta Monitoruj sobie ruch chodzący w te i z powrotem a jak coś to blokuj całą VMkę. Nie baw się w jakieś skomplikowane filtrowania. Z reguły takie rozwiązanie jest dobre. Udostępnij ten post Link to postu Udostępnij na innych stronach