Hlavní navigace

Tipy na zabezpečení a zrychlení nginx

22. 12. 2015

Sdílet

Před časem jsme informovali o tipech pro Apache, nyní na serveru Tecmint vychází dvanáct tipů na zabezpečení a zrychlení webového serveru nginx. Dozvíte se, jak vypnout nepotřebné moduly, proč zakázat server_tokens, jak zakázat nechtěné user_agentsmethods.

Dále nastavíme vyrovnávací paměť, omezíme počet spojení z jedné IP, zakážeme hotlinkování obrázků, kde je to možné, zakážeme SSL a místo něj dáme TLS a na závěr přesměrujeme HTTP provoz na HTTPS .

Našli jste v článku chybu?
  • Aktualita je stará, nové názory již nelze přidávat.
  • 25. 12. 2015 22:44

    Vít Šesták

    Moc bych ten článek nedoporučoval.

    1. Udržovat Nginx aktuální – relativně OK, ale hlavní jsou případné bezpečnostní updaty. Při kompilaci ze zdrojáků může být zbytečně moc ruční práce ty případné bezpečnostní updaty řešit. Nezmiňují se ale o Debianím repozitáři s aktuální verzí, což mi přijde v některých směrech jako lepší alternativa.

    2. Odstranit nepotřebné moduly – pokud mám trošku RAMky ušetřit za cenu ruční kompilace, tak říkám ne. Attack surface tím nejspíš nesnížím, zmíněné moduly můžu nejspíš vypnout i v konfiguráku.

    3. Vypnutí server_tokens mi přijde jako asi nejlepší rada z toho článku :)

    4. Blokace UA: Hmm, mohlo by se teoreticky hodit, ale asi to nevyužiju.

    5. Statický obsah to má AFAIK defaultně a na dynamickém obsahu si to pořeší samotná aplikace. Proč se s tím párat v Nginxu?

    6. WTF? Nastavit velikosti bufferů může mít nějaký smysl z hlediska výkonu, ale pochybuju, že tím zabráním buffer overflow. A radši na to nebudu sahat, dokud tomu dostatečně nerozumím. Ostatně, s defaultními hodnotami bude server asi počítat nejvíc (tj. v případě chyby projevující se jen u určitých velikostí bufferu bude defaultní konfigurace právě ta nejvíce otestovaná), takže to může mít teoreticky přesně opačný efekt.

    7. Limit počtu spojení – taky bych na to radši nesahal. Co vím, kolik lidí přistupuje z téže IP adresy skrze NAT? Kdysi jsem četl, že Vodafone má údajně snad jen 8 IP adres na celou ČR pro mobilní internet. Dovedete si představit, co s tím udělá omezení počtu přístupů z jedné IP adresy… Taky se to bude „fajn“ ladit, až si někdo bude stěžovat, že mu to nejede.

    8. OK, error logy se hodí, ale přijde mi to trošku jako cpt. Obvious.

    9. Zákaz hotlinkování – mohlo by se hodit, ale obávám se, že přes vhodný meta tag můžu zakázat posílání refereru a tím obejít toto opatření. A odstřihnout lidi bez refereru je už docela kontroverzní.

    10. OK, zakázat SSL se hodí, ale dá se toho řešit víc. Spíš bych doporučil https://mozilla.github.io/server-side-tls/ssl-config-generator/ , který se tomu věnuje podrobněji.

    11. Cool, self-signed certifikát. To asi nemá moc široké využití. A v době Let's Encrypt je to obzvlášť ostuda.

    12. OK, takové přesměrování se hodí, ale je to spíš drobnost, kterou si v případě potřeby vygooglím. Kdyby řešil aspoň HSTS… (To mimochodem řeší https://mozilla.github.io/server-side-tls/ssl-config-generator/ .)


    Sečteno a podtrženo, prakticky jediný přínos článku vidím v zákazu server_tokens.

Byl pro vás článek přínosný?

Autor zprávičky

První linux nainstaloval kolem roku 1994 a u něj zůstal. Později vystudoval fyziku a získal doktorát.