Utoky na server

Všetko ohľadom Linuxu...
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Utoky na server

Príspevok od používateľa Numline1 »

Zdravim,

mam mensi problem so zabezpecenim vlastneho serveru. Ako som mal moznost otestovat, utoky typu Slowloris su voci nemu velmi efektivne. Je tam nainstalovany Apache2, jedna sa o Debian stable.

Skusal som aj veci typu mod_evasive, ale neboli vobec ucinne.

Moja otazka znie, ako by bolo rozumne to zabezpecit a ake dalsie druhy utokov by som mal brat do uvahy (take, akym je mozne sa branit). Instalacii proxy a podobne by som sa rad vyhol.

Dakujem za rady!
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

Debian stable znamena 6 squeeze? Tam uz je apache ktory je patchnuty proti danemu problemu, teda ak dodrziavas aj nejaky update.

Nginx ako reverzna proxy je simple/fast riesenie, popremyslaj.

Vyskusaj priamo iptables http://www.cert.org/blogs/certcc/2009/0 ... erver.html
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Ano, Squeeze. Apache tam ma viacero mpm verzii, ja pouzivam itk, mozno to nie je fixnute v kazdej, kedze som skusal perl script, ktory je bezne na nete (http://ha.ckers.org/slowloris/slowloris.pl) a server prestal na par minut odpovedat.

Islo by to riesit aj Squidom, ale reverznu proxy beriem ako posledne riesenie, ale pouvazujem nad tym. Rad by som predtym skusil mod_qos, aj ked konfiguracia je dost nepekna. Mod_noloris a mod_antiloris uz su mimo repozitarov od etch-u, takze mozno to je naozaj fixnute, skusim to este raz.

Diky za radu
Ovecka
Darca
Darca
Používateľov profilový obrázok
Príspevky: 1227
Registrovaný: 25 aug 2005, 0:57

Re: Utoky na server

Príspevok od používateľa Ovecka »

Len lre info Ak pustis ten pl z pc z ktoreho nasledne pozeras dostupnost apacha moze sa tvarit nedostupny
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Nie, jasne ze to nie je ten isty PC, je to iny server. Teraz som ale podrobnejsie pozeral live reporty z toho, co sa deje, ked sa utok spusti. Apache spawne okolo 40 procesov a minie sa RAM. Cize je mozne, ze Apache je nejakym sposobom osetreny, ale nemoze odpovedat kvoli nedostatku RAM. Idealne by ale bolo, ak by jeden klient nemohol mat viac ako jedno alebo dve pripojenia.

Kód: Vybrať všetko

TimeOut 6
MaxKeepAliveRequests 128
KeepAliveTimeout 4

<IfModule mpm_itk_module>
    StartServers          4
    MinSpareServers       4
    MaxSpareServers      12
    MaxClients           64
    MaxRequestsPerChild  32
    AssignUserId www-data www-data
</IfModule>
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

O aku konfiguraciu servera sa jedna? RAM/CPU etc.

Squid ako reverznu proxy, to nie. Fakt vyskusaj nginx. Cele sa to da nakonfigurovat do 5min. Premenit porty z 80 na iny dostupny napr od 50 000 vyssie a na fw povoleny len z vnutornej IP a si zahojeny. Cele toto zaberie do pol hodiny s tym, ze ak zapnes cache na nginxe na statiku, tak dost aj usetris na systemovych prostriedkoch.
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

masterdead napísal:O aku konfiguraciu servera sa jedna? RAM/CPU etc.

Squid ako reverznu proxy, to nie. Fakt vyskusaj nginx. Cele sa to da nakonfigurovat do 5min. Premenit porty z 80 na iny dostupny napr od 50 000 vyssie a na fw povoleny len z vnutornej IP a si zahojeny. Cele toto zaberie do pol hodiny s tym, ze ak zapnes cache na nginxe na statiku, tak dost aj usetris na systemovych prostriedkoch.
Je to VPS, jedno jadro s giga ramky. Ten Nginx vyzera ako dobre riesenie (nechcel som pouzivat Nginx ako standalone server, kedze mi tam chybala podpora .htaccess), urcite to vyskusam, konfiguracie sa az tak nebojim, skor ma trapi to, ako zabranit Apachu, aby spustal tak vela procesov (aj ked sa bude pristupovat cez medzivrstvu). Dik za rady.
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

Prave to ti pomoze, prestane sa spustat tolko procesov. Ale bolo by v tom pripade idealne pouzivat aj cache na nginxe.
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Samozrejme, to chapem. Lenze rovnako sa moze stat, ze Nginx-u preskoci a otvori vela spojeni (alebo sa niekomu podari dostat priamo k Apache a urobi to iste). Je to sice velmi nepravdepodobne, ale niekde to musi ist obmedzit, urcite to nemoze ist do nekonecna.

//autoeditácia príspevku (30 Jún 2012, 19:12)
Nginx uspesne nahodeny, ako proxy funguje :) Slowloris tomu nic nerobi, teraz uz len doriesit SSL a svet bude opat krasny. Vdaka za rady.

//autoeditácia príspevku (03 Júl 2012, 20:59)
Zdravim, mam este jednu otazku, neviem sa s tym pohnut uz par dni. Ako vyriesim SSL? Ktory z modelov pouzit?

Apache2 so SSL na porte 8443 (napriklad) a certifikaty v configu > Nginx na 443 bez certifikatov
Apache2 so SSL na porte 8443 bez certifikatov > Nginx na 443 s certifikatmi
Apache na 80 bez SSL > Nginx na 443 a certifikaty

Ani jeden sa mi totiz nepodarilo rozbehat a dosli mi napady. Vdaka za rady.
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

SSL na nginxe, apache na 80. Primarna je sifrovana komunikacia klient - nginx server.
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Dakujem, aj som si myslel, avsak mi to neslo, mozno preto, ze nginx pouziva troch ine formaty certifikatov ako mam v Apachi. A komunikacia medzi Apachom a Nginxom je potom bezpecna? Nemoze byt odpocuvana cez niekoho, kto by potencialne ziskal pristup k serveru?
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

Porozmyslaj co si napisal. Komunikacia medzi nginxom a apachom je standardna po lokalnych IP, z vonka nedostupna. Ak uz niekto dostane pristup na server nebude musiet nic odpocuvat, nemyslis?
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Okej, uz sa zda, ze to funguje, bolo len treba pregenerovat certifikaty. Teraz sa potlkam s poslednym problemom, ktorym je nastavenie Apacha tak, aby prijmal iba requesty, ktore prisli z nginxu. Nastavenie Listen direktivy na 127.0.0.1:8181 ani iptables na drop 8181 z * a nasledne allow 8181 z 127.0.0.1 nepomaha, vzdy dostanem Bad Gateway.
masterdead
SysAdmin
SysAdmin
Používateľov profilový obrázok
Príspevky: 1809
Registrovaný: 03 aug 2005, 23:32
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Utoky na server

Príspevok od používateľa masterdead »

iptables -A INPUT -i eth0 -p TCP --dport 8181 -j DROP
a listen nechaj kludne co chces, vsetko co pojde z interfacu na ten port bude dropnute.
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: Utoky na server

Príspevok od používateľa Numline1 »

Super, ide to, velka vdaka este raz. Problem bol, ze som pouzival blokovanie toho portu globalne a nie len na eth0 (v mojom pripade venet0).
Napísať odpoveď