Apache HTTP

Jak zabezpečit váš server Apache

Jak zabezpečit váš server Apache
Apache je populární webový server s otevřeným zdrojovým kódem, který je k dispozici pro systémy Linux i Windows. Umožňuje konfiguraci pro nejrůznější případy použití, od webových stránek HTML po dynamický obsah webových aplikací HyperText Preprocessor (PHP).Apache poskytuje bezpečnou a robustní platformu pro nasazení vašich webových aplikací. Stále je však důležité instalovat nejnovější bezpečnostní záplaty a správně konfigurovat server, aby bylo zajištěno bezpečné prostředí pro vaše webové aplikace.
V tomto článku najdete několik tipů a triků, jak posílit vaše konfigurace webového serveru Apache a zlepšit obecné zabezpečení.

Účet neprivilegovaného uživatele

Účelem účtu uživatele bez oprávnění root nebo neprivilegovaného uživatele je omezit uživatele před zbytečným přístupem k určitým úkolům v systému. V kontextu webového serveru Apache to znamená, že by měl fungovat v omezeném prostředí pouze s potřebnými oprávněními. Ve výchozím nastavení běží Apache s oprávněními účtu démona. Můžete si vytvořit samostatný uživatelský účet bez oprávnění root, abyste se vyhnuli hrozbám v případě slabých míst zabezpečení.

Kromě toho, pokud apache2 a MySQL mají stejná pověření uživatele, jakýkoli problém v procesu služby jednou bude mít dopad na druhou. Chcete-li změnit oprávnění uživatele a skupiny pro webový server, přejděte na / etc / apache2, otevřete soubor envvars a nastavte uživatele a skupinu na nového uživatele účtu bez oprávnění, řekněme „apache“ a uložte soubor.

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / envvars
... snip ..
export APACHE_RUN_USER = apache
export APACHE_RUN_GROUP = apache
... snip ..

Následující příkaz můžete také použít ke změně vlastnictví instalačního adresáře na nového uživatele bez oprávnění root.

ubuntu @ ubuntu ~: $ sudo chown -R apache: apache / etc / apache2
Chcete-li uložit změny, zadejte následující příkaz:
ubuntu @ ubuntu ~: $ sudo service apache2 restart

Udržujte Apache aktuální

Apache je známý tím, že poskytuje bezpečnou platformu s vysoce znepokojenou vývojářskou komunitou, která málokdy čelí žádným bezpečnostním chybám. Je však normální objevit problémy po vydání softwaru. Proto je nezbytné udržovat webový server aktuální, aby bylo možné využívat nejnovější funkce zabezpečení. Rovněž se doporučuje sledovat seznamy oznámení serveru Apache, abyste se neustále informovali o nových oznámeních, vydáních a aktualizacích zabezpečení od vývojové komunity Apache.

Chcete-li aktualizovat svůj apache pomocí apt, zadejte následující:

ubuntu @ ubuntu ~: $ sudo apt-get aktualizace
ubuntu @ ubuntu ~: $ sudo apt-get upgrade

Zakázat podpis serveru

Výchozí konfigurace serveru Apache poskytuje mnoho podrobností o serveru a jeho nastavení. Například povolené direktivy ServerSignature a ServerTokens v souboru / etc / apache2 / apache2.soubor conf přidá do odpovědi HTTP další záhlaví, které vystavuje potenciálně citlivé informace. Tyto informace zahrnují podrobnosti o nastavení serveru, jako je verze serveru a hostitelský operační systém, které mohou útočníkovi pomoci s procesem průzkumu. Tyto směrnice můžete deaktivovat úpravou apache2.conf soubor přes vim / nano a přidejte následující směrnici:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... snip ..
Podpis serveru je vypnutý
... snip ..
ServerTokens Prod
... snip ..

Restartujte Apache a aktualizujte změny.

Zakažte výpisy adresářů serveru

Výpisy adresáře zobrazují veškerý obsah uložený v kořenové složce nebo podadresářích. Soubory adresáře mohou obsahovat citlivé informace, které nejsou určeny pro veřejné zobrazení, jako jsou skripty PHP, konfigurační soubory, soubory obsahující hesla, protokoly atd.
Chcete-li zakázat výpisy adresářů, změňte konfigurační soubor serveru Apache úpravou apache2.conf soubor jako:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... snip ..

Možnosti - Indexy

... snip ..

NEBO

... snip ..

Možnosti - Indexy

... snip ..

Tuto směrnici můžete také přidat do složky .soubor htaccess vašeho hlavního adresáře webových stránek.

Chraňte nastavení systému

The .Soubor htaccess je pohodlná a výkonná funkce, která umožňuje konfiguraci mimo hlavní apache2.soubor conf. V případech, kdy uživatel může nahrát soubory na server, to však může útočník zneužít k nahrání svých vlastních “.soubor htaccess ”se škodlivými konfiguracemi. Pokud tedy tuto funkci nepoužíváte, můžete deaktivovat .směrnice htaccess, tj.E.:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... snip ..
#AccessFileName .htaccess
... snip ..

NEBO
Zakázat .soubor htaccess s výjimkou speciálně povolených adresářů úpravou apache2.soubor conf a změna direktivy AllowOverRide na None;

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... snip ..

AllowOverride Žádný

... snip ..

Zabezpečené adresáře s ověřováním

Pomocí nástroje htpasswd můžete vytvořit pověření uživatele k ochraně všech nebo některých adresářů. Přejděte do složky serveru a pomocí následujícího příkazu vytvořte .soubor htpasswd pro ukládání hash hesel pro přihlašovací údaje přiřazené například uživateli s názvem dev.

[chráněno e-mailem] ~: $ sudo htpasswd -c / etc / apache2 / -htpasswd dev

Výše uvedený příkaz požádá o nové heslo a potvrzení hesla. Můžete si prohlédnout kočku ./ htpasswd soubor ke kontrole hash uložených pověření uživatele.

Nyní můžete automaticky nastavit konfigurační soubor v adresáři your_website, který potřebujete chránit úpravou .soubor htaccess. K povolení ověřování použijte následující příkaz a směrnice:

ubuntu @ ubuntu ~: $ sudo nano / var / www / your_website /.htaccess
... snip ..
AuthType Basic
AuthName "Přidat výzvu k dialogu"
AuthUserFile / etc / apache2 / uživatelské_jméno / název_domény /.htpasswd
Vyžadovat platného uživatele
... snip ..

Nezapomeňte přidat cestu podle vašich.

Spusťte nezbytné moduly

Výchozí konfigurace Apache zahrnuje povolené moduly, které možná ani nepotřebujete. Tyto předinstalované moduly otevírají dveře pro bezpečnostní problémy Apache, které již existují nebo mohou existovat v budoucnu. Chcete-li deaktivovat všechny tyto moduly, musíte nejprve pochopit, které moduly jsou nutné pro bezproblémové fungování vašeho webového serveru. Za tímto účelem zkontrolujte dokumentaci modulu apache, která pokrývá všechny dostupné moduly.

Dále použijte následující příkaz ke zjištění, které moduly běží na vašem serveru.

[chráněno e-mailem] ~: $ sudo ls / etc / apache2 / mods-enabled

Apache je dodáván s výkonným příkazem a2dismod pro deaktivaci modulu. Zabraňuje načtení modulu a při deaktivaci modulu vás vyzve s upozorněním, že akce může negativně ovlivnit váš server.

[chráněno e-mailem] ~: $ sudo a2dismod název_modulu

Modul můžete také deaktivovat komentováním v řádku LoadModule.

Zabraňte pomalému Loris a útoku DoS

Výchozí instalace serveru Apache jej nutí čekat na požadavky klientů příliš dlouho, což server vystaví útokům Slow Loris a DoS. Apache2.konfigurační soubor conf poskytuje direktivu, kterou můžete použít ke snížení hodnoty časového limitu na několik sekund, aby se zabránilo těmto typům útoků, tj.E.:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
Časový limit 60

Kromě toho nový server Apache přichází s praktickým modulem mod_reqtimeout, který poskytuje směrnici RequestReadTimeout k zabezpečení serveru před nelegitimními požadavky. Tato směrnice přichází s několika složitými konfiguracemi, takže si můžete přečíst související informace dostupné na stránce dokumentace.

Zakažte zbytečné požadavky HTTP

Neomezené požadavky HTTP / HTTPS mohou také vést k nízkému výkonu serveru nebo útoku DoS. Můžete omezit příjem požadavků HTTP na adresář pomocí LimitRequestBody na méně než 100 kB. Například pro vytvoření direktivy pro složku / var / www / your_website můžete přidat direktivu LimitRequestBody pod AllowOverride All, i.E.:

... snip ..

Možnosti - Indexy
AllowOverride All
LimitRequestBody 995367

... snip ..

Poznámka: Nezapomeňte restartovat Apache po provedených změnách, abyste jej odpovídajícím způsobem aktualizovali.

Závěr

Výchozí instalace serveru Apache může poskytnout útočníkům spoustu citlivých informací. Mezitím existuje spousta dalších způsobů (které nejsou uvedeny výše), jak zabezpečit také webový server Apache. Pokračujte ve výzkumu a udržujte si přehled o nových směrnicích a modulech, abyste svůj server dále zabezpečili.

Hry Nejlepší hry pro ruční sledování
Nejlepší hry pro ruční sledování
Oculus Quest nedávno představil skvělou myšlenku ručního sledování bez ovladačů. S neustále se zvyšujícím počtem her a aktivit, které provádějí podpor...
Hry Jak zobrazit překrytí OSD v linuxových aplikacích a hrách na celou obrazovku
Jak zobrazit překrytí OSD v linuxových aplikacích a hrách na celou obrazovku
Hraní her na celou obrazovku nebo používání aplikací v režimu celé obrazovky bez rozptýlení vás mohou odříznout od příslušných systémových informací v...
Hry Top 5 karet pro zachycení hry
Top 5 karet pro zachycení hry
Všichni jsme viděli a milovali streamování her na YouTube. PewDiePie, Jakesepticye a Markiplier jsou jen někteří z nejlepších hráčů, kteří vydělali mi...