Zabezpečení serveru Apache na CentOS 6

Při zabezpečení serveru je snadné používat zkratky, ale riskujete ztrátu dat v případě, že útočník získá root přístup k některému z vašich serverů. Dokonce i pro jednoduché instalace musíte svůj server předem zabezpečit. Zabezpečení serverů je široké téma a liší se v závislosti na operačním systému a aplikacích, které na nich běží.

Tento tutoriál se zaměřuje na zabezpečení Apache pod CentOS 6. Existuje několik kroků po instalaci, které můžete podniknout, abyste se ochránili před eskalací oprávnění a také před útoky s nedostatečnými oprávněními.

Bez dalších řečí můžeme začít.

Krok 1 – Instalace webového serveru

Samozřejmě, pokud nemáte nainstalovaný Apache nebo PHP, měli byste to udělat nyní. Spusťte tento příkaz jako uživatel root nebo použijte sudo:

yum install httpd php

Krok 2 – Zabezpečení domovských adresářů

Nyní, když je Apache nainstalován, pojďme do toho a začněme jej zabezpečovat. Nejprve se chceme ujistit, že adresáře ostatních uživatelů nejsou viditelné pro nikoho kromě vlastníka. Nastavíme všechny domovské adresáře na 700, takže své vlastní soubory mohou prohlížet pouze příslušní vlastníci domovských adresářů. Spusťte tento příkaz jako root nebo použijte sudo:

chmod 700 /home
chmod 700 /home/*
chmod 700 /home/*/*

Použitím zástupných znaků pokrýváme všechny soubory, které se aktuálně nacházejí v domovském adresáři.

Krok 3 – Aplikujte na Apache bezpečnostní opravu pro oddělení uživatelských oprávnění

Než opravíme Apache, musíme nejprve nainstalovat úložiště, které obsahuje balíček s opravou. Spusťte následující příkazy jako root (nebo sudo).

yum install epel-release
yum install httpd-itk

Pomocí "apache2-mpm-itk" můžeme říci, jak by měl PHP běžet na základě virtuálního hostitele. Přidává novou možnost konfigurace AssignUserId virtualhost-user virtualhost-user-group, která nám umožňuje říci Apache/PHP, aby spouštěl uživatelský kód pod konkrétním uživatelským účtem.

Pokud sdílíte tento server, předpokládám, že jste již dříve vytvořili virtuálního hostitele pro Apache. V takovém případě můžete přeskočit na krok 4.

Krok 3 – Vytvoření prvního virtuálního hostitele

Chcete-li vytvořit virtuálního hostitele v Apache, můžete postupovat podle šablony níže.

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
</VirtualHost>

Otevřete svůj oblíbený textový editor /etc/httpd/conf.d/example-virtualhost.confa přidejte do něj výše uvedený obsah. Zde je příkaz pro použití nano:

nano /etc/httpd/conf.d/example-virtualhost.conf

Let me explain the configuration here. When we specify "NameVirtualHost", we're actually telling the web server that we're hosting multiple domains on one IP. Now, in this example, I used mytest.website as a example domain. Change that to yours, or a domain of your choice. DocumentRoot is what tells Apache where the content is located. ServerName is a directive we use to tell Apache the website's domain. And one last tag, </VirtualHost>, which tells Apache that's the end of the virtual host configuration.

Step 4 - Configuring Apache to run as another user

As mentioned earlier, part of securing your server includes running Apache/PHP as a separate user for each virtual host. Telling Apache to do this is simple after we've applied the patch - all you need to do is add:

AssignUserId vhost-user vhost-user-group

... do vaší konfigurace. Takto by vypadal příklad virtuálního hostitele po přidání této možnosti:

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
AssignUserId vhost-user vhost-user-group

</VirtualHost>

Kouzlo je v řádku začínajícím AssignUserId. S touto volbou říkáme Apache/PHP, aby běžel jako následující uživatel/skupina.

Krok 5 - Skrytí verze Apache

Tento krok je docela jednoduchý; stačí otevřít konfigurační soubor Apache provedením následujícího příkazu jako uživatel root:

nano /etc/httpd/conf/httpd.conf

Najděte "ServerTokens" a změňte volbu za ním na "ProductOnly". To říká Apache, aby pouze odhalil, že je to "Apache", místo "Apache/2.2" nebo něco podobného.

Krok 6 – Restartujte Apache, abyste použili změny

Nyní, když jsme zabezpečili server, musíme restartovat server Apache. Udělejte to spuštěním následujícího příkazu jako root nebo pomocí sudo:

service httpd restart

Závěr

Toto je jen několik kroků, které můžete podniknout k zabezpečení serveru. Ještě jednou, i když je to někdo, komu důvěřujete, kdo hostuje web na vašem serveru, měli byste plánovat jeho ochranu. Ve výše uvedených scénářích, i když je uživatelský účet kompromitován, útočník nezíská přístup k celému serveru.

Zanechat komentář

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.

Útoky DDOS: Stručný přehled

Útoky DDOS: Stručný přehled

Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.

Revoluční vynálezy od Googlu, které vám usnadní život.

Revoluční vynálezy od Googlu, které vám usnadní život.

Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…

Technologická singularita: vzdálená budoucnost lidské civilizace?

Technologická singularita: vzdálená budoucnost lidské civilizace?

Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.

Funkcionality vrstev referenční architektury velkých dat

Funkcionality vrstev referenční architektury velkých dat

Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.

Evoluce ukládání dat – Infografika

Evoluce ukládání dat – Infografika

Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více