Skocz do zawartości
dan

Jaki firewall dla Debian 6 na OpenVZ?

Polecane posty

Witam,

 

korzystam z Debian 6 na OpenVZ z directAdminem. Poprzednio korzystalem z csf ale do poprawnego działania na OpenVZ brakuje mu modułów, do których nie ma dostępu.

 

W związku z tym pytanie i prośba o sugestie jak wdrożyć firewalla lub/i inne zabezpieczenia przy OpenVZ? Przynajmniej proszę o wskazanie kierunku z czego najlepiej korzystać przy takiej konfiguracji.

 

Pozdrawiam

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Samemu napisać regułki wykorzystujące dostępne moduły. A najlepiej to napisać do supportu aby włączyli te kilka modułów iptables.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Samemu napisać regułki wykorzystujące dostępne moduły. A najlepiej to napisać do supportu aby włączyli te kilka modułów iptables.

 

Support twierdzi: "Openvz w zastosowanej przez nas konfiguracji nie posiada powyższych modułów." Czy to możliwe czy po prostu nie chcą za bardzo grzebać?

Edytowano przez dan (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jakie to moduły?

 

#edit:

Właśnie dla testu zainstalowałem sobie na jednym vpsie csf i jakoś bez problemu przeszło. Więc możesz założyć, że nie chce im sie grzebać

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jakie to moduły?

 

#edit:

Właśnie dla testu zainstalowałem sobie na jednym vpsie csf i jakoś bez problemu przeszło. Więc możesz założyć, że nie chce im sie grzebać

 

Po instalacji csf odpalam:

root@server:~# perl /etc/csf/csftest.pl
Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...FAILED [FATAL Error: iptables: No chain/target/match by that name.] - Required for csf to function
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...FAILED [FATAL Error: iptables: No chain/target/match by that name.] - Required for csf to function
Testing ipt_limit/xt_limit...FAILED [FATAL Error: iptables: No chain/target/match by that name.] - Required for csf to function
Testing ipt_recent...FAILED [Error: iptables: No chain/target/match by that name.] - Required for PORTFLOOD and PORTKNOCKING features
Testing xt_connlimit...FAILED [Error: iptables: No chain/target/match by that name.] - Required for CONNLIMIT feature
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK

 

Oczywiście nie wykluczam, że ja coś źle robię - powoli wdrażam się w temat. Wszelakie podpowiedzi mile widziane.

Edytowano przez dan (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ja u siebie nie mam tylko xt_connlimit. W sumie nie wiem dlaczego, musze pogrzebać :)

 

root@dev:~/csf# ./csftest.pl
Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...FAILED [Error: iptables: Invalid argument. Run `dmesg' for more information.] - Required for CONNLIMIT feature
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Rozumiem, że testy przeprowadzasz u siebie na OpenVZ?

Napiszę jeszcze do supportu i zobaczę czy wykażą się elastycznością w podpięciu tych modułów czy zleją temat.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Rozumiem, że testy przeprowadzasz u siebie na OpenVZ?

Tak, na openvz

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

apf + set_monokern

No to zainstalowalem, dałem monokern 1, interface ustawiłem na venet0 i przy próbie uruchomienia apf sypie:

root@server:~/apf-9.7-2# apf -s
apf(27946): {glob} activating firewall
apf(27986): {glob} determined (IFACE_IN) venet0 has address 127.0.0.2
apf(27986): {glob} determined (IFACE_OUT) venet0 has address 127.0.0.2
apf(27986): {glob} loading preroute.rules
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
apf(27986): {resnet} downloading http://rfxn.com/downloads/reserved.networks
apf(27986): {resnet} parsing reserved.networks into /etc/apf/internals/reserved.networks
apf(27986): {glob} loading reserved.networks
apf(27986): {glob} loading bt.rules
apf(27986): {glob} loading common drop ports
apf(27986): {blk_ports} deny all to/from tcp port 135:139
apf(27986): {blk_ports} deny all to/from udp port 135:139
apf(27986): {blk_ports} deny all to/from tcp port 111
apf(27986): {blk_ports} deny all to/from udp port 111
apf(27986): {blk_ports} deny all to/from tcp port 513
apf(27986): {blk_ports} deny all to/from udp port 513
apf(27986): {blk_ports} deny all to/from tcp port 520
apf(27986): {blk_ports} deny all to/from udp port 520
apf(27986): {blk_ports} deny all to/from tcp port 445
apf(27986): {blk_ports} deny all to/from udp port 445
apf(27986): {blk_ports} deny all to/from tcp port 1433
apf(27986): {blk_ports} deny all to/from udp port 1433
apf(27986): {blk_ports} deny all to/from tcp port 1434
apf(27986): {blk_ports} deny all to/from udp port 1434
apf(27986): {blk_ports} deny all to/from tcp port 1234
apf(27986): {blk_ports} deny all to/from udp port 1234
apf(27986): {blk_ports} deny all to/from tcp port 1524
apf(27986): {blk_ports} deny all to/from udp port 1524
apf(27986): {blk_ports} deny all to/from tcp port 3127
apf(27986): {blk_ports} deny all to/from udp port 3127
apf(27986): {pkt_sanity} set active PKT_SANITY
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ALL NONE
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs SYN,FIN SYN,FIN
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs SYN,RST SYN,RST
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs FIN,RST FIN,RST
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ACK,FIN FIN
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ACK,URG URG
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ACK,PSH PSH
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ALL FIN,URG,PSH
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ALL SYN,RST,ACK,FIN,URG
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ALL ALL
apf(27986): {pkt_sanity} deny inbound tcp-flag pairs ALL FIN
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs ALL NONE
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs SYN,FIN SYN,FIN
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs SYN,RST SYN,RST
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs FIN,RST FIN,RST
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs ACK,FIN FIN
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs ACK,PSH PSH
apf(27986): {pkt_sanity} deny outbound tcp-flag pairs ACK,URG URG
apf(27986): {pkt_sanity} deny all fragmented udp
iptables: Memory allocation problem.
iptables: No chain/target/match by that name.
iptables v1.4.8: Couldn't load target `FRAG_UDP':/lib/xtables/libipt_FRAG_UDP.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.8: Couldn't load target `FRAG_UDP':/lib/xtables/libipt_FRAG_UDP.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
apf(27986): {pkt_sanity} deny inbound tcp port 0
apf(27986): {pkt_sanity} deny outbound tcp port 0
iptables: Memory allocation problem.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables v1.4.8: Couldn't load target `PZERO':/lib/xtables/libipt_PZERO.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.8: Couldn't load target `PZERO':/lib/xtables/libipt_PZERO.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
apf(27986): {blk_p2p} set active BLK_P2P
iptables: Memory allocation problem.
apf(27986): {blk_p2p} deny all to/from tcp port 1214
apf(27986): {blk_p2p} deny all to/from udp port 1214
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 2323
apf(27986): {blk_p2p} deny all to/from udp port 2323
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 4660:4678
apf(27986): {blk_p2p} deny all to/from udp port 4660:4678
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6257
apf(27986): {blk_p2p} deny all to/from udp port 6257
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6699
apf(27986): {blk_p2p} deny all to/from udp port 6699
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6346
apf(27986): {blk_p2p} deny all to/from udp port 6346
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6347
apf(27986): {blk_p2p} deny all to/from udp port 6347
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6881:6889
apf(27986): {blk_p2p} deny all to/from udp port 6881:6889
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 6346
apf(27986): {blk_p2p} deny all to/from udp port 6346
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
apf(27986): {blk_p2p} deny all to/from tcp port 7778
apf(27986): {blk_p2p} deny all to/from udp port 7778
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables v1.4.8: Couldn't load target `P2P':/lib/xtables/libipt_P2P.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.8: Couldn't load target `P2P':/lib/xtables/libipt_P2P.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
apf(27986): {glob} SET_REFRESH is set to 10 minutes
apf(27986): {glob} loading log.rules
apf(27986): {glob} virtual net subsystem disabled.
apf(27986): {glob} loading main.rules
apf(27986): {glob} opening inbound tcp port 22 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 3 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 5 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 11 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 0 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 30 on 0/0
iptables: Memory allocation problem.
apf(27986): {glob} opening inbound icmp type 8 on 0/0
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
apf(27986): {glob} resolv dns discovery for 8.8.8.8
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
apf(27986): {glob} resolv dns discovery for 8.8.4.4
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: Memory allocation problem.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: Memory allocation problem.
iptables: Memory allocation problem.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: Memory allocation problem.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
apf(27986): {glob} loading postroute.rules
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
FATAL: Could not load /lib/modules/2.6.32-274.el5.028stab093.2/modules.dep: No such file or directory
iptables: No chain/target/match by that name.
iptables: Memory allocation problem.
apf(27986): {glob} default (egress) output accept
apf(27986): {glob} default (ingress) input drop
iptables: Memory allocation problem.
iptables: Memory allocation problem.
iptables: Memory allocation problem.
apf(27946): {glob} firewall initalized
apf(27946): {glob} !!DEVELOPMENT MODE ENABLED!! - firewall will flush every 5 minutes.

 

Coś jakby nie do końca poprawnie... Jakieś sugestie co z tym zrobić?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie wszystkie moduły są aktywne... poproś providera by aktywował:

ipt_REJECT ip_tables pt_tos ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length"
IPTABLES="ipt_REJECT ipt_tos ipt_TOS ipt_LOG ip_conntrack ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length ipt_state iptable_nat ip_nat_ftp

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dostawca stwierdził, że odpali moduły ale ... nie wie kiedy. Czy za dzień, za miesiąc, za rok - nie wiadomo. "Podczas najbliższego restartu fizycznej maszyny", który odbędzie się nie wiadomo kiedy.

 

Faktycznie takie chocki klocki z odpaleniem tych modułów?

 

Aktualnie iptables zwraca takie moduły (o ile dobrze odczytuje)

 

root@server:~# cat /proc/net/ip_tables_matches
state
udp
tcp
length
ttl
tcpmss
multiport
multiport
limit
tos
icmp

 

Przy niemożności - powiedzmy - tymczasowej odpalenia firewalla co zostaje zrobić z zabezpieczaniem serwera?

 

Ręcznie klepać reguły iptables? Czy dostępne moduły wystarczą? Jakieś wskazówki w temacie? Ew. jakaś inna alternatywa?

Edytowano przez dan (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Napisz mu że nie trzeba restartować maszyny, może dodać moduły via vzctl set vzid opcja --save ...

ps. sugeruje zmianę providera, widać że nawet nie zna podstaw openvz :(

Edytowano przez tym (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

No niestety pomimo całej sympatii do dostawcy w tej materii kiszka. Czy jeśli maszyna-matka OpenVZ nie ma dodatkowych modułów do iptables to podawany sposób dodania ich do kontenera bez restartu matki też powinien zadziałać? Czy to dostawca za mało energii i chęci w proces dodawania włożył?

 

Bo dostawca dodał te moduły i test csf był ok, aczkolwiek sam iptables wywalał błędy, tj. np wywołanie iptables -L sypało błędem, bez listowania tabel, co oczywiście uniemożliwiało faktyczną prace firewalla.

 

I korzystając z okazji czy da się w iptables w ograniczonej konfiguracji bez modułu nat zrobić przekierowanie ruchu z portu z 80 na 81?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×