Apache HTTP

Az Apache-kiszolgáló biztonságának védelme

Az Apache-kiszolgáló biztonságának védelme
Az Apache egy népszerű, nyílt forráskódú webszerver, amely Linux és Windows rendszerekhez egyaránt elérhető. Lehetővé teszi a sokféle felhasználási eset konfigurálását, a HTML weboldalaktól a HyperText Preprocessor (PHP) dinamikus webalkalmazások tartalmáig.Az Apache biztonságos és robusztus platformot kínál a webalkalmazások telepítéséhez. Ugyanakkor továbbra is fontos a legújabb biztonsági javítások telepítése és a szerver megfelelő beállítása a biztonságos környezet kialakítása érdekében a webalkalmazások számára.
Ebben a cikkben néhány tippet és trükköt talál az Apache Web Server konfigurációinak megerősítésére és az általános biztonság javítására.

Nem privilegizált felhasználói fiók

A nem root vagy nem privilegizált felhasználói fiók célja, hogy korlátozza a felhasználót a rendszeren belüli bizonyos feladatok felesleges hozzáférésétől. Az Apache webkiszolgálóval összefüggésben ez azt jelenti, hogy korlátozott környezetben kell működnie, csak a szükséges engedélyekkel. Alapértelmezés szerint az Apache démonfiókjogosultságokkal fut. Létrehozhat egy külön nem root felhasználói fiókot a biztonsági résekkel járó fenyegetések elkerülése érdekében.

Továbbá, ha az apache2 és a MySQL azonos felhasználói hitelesítő adatokkal rendelkezik, akkor az egyszeri szolgáltatás folyamatának bármely kérdése hatással lesz a másikra. A webkiszolgáló felhasználói és csoportjogosultságainak megváltoztatásához lépjen az / etc / apache2 oldalra, nyissa meg az envvars fájlt, és állítsa be a felhasználót és a csoportot egy új, nem privilegizált fiókhasználóra, mondjuk „apache”, és mentse a fájlt.

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / envvars
... kivágás…
export APACHE_RUN_USER = apache
export APACHE_RUN_GROUP = apache
... kivágás…

A következő paranccsal módosíthatja a telepítési könyvtár tulajdonjogát az új, nem root felhasználóra.

ubuntu @ ubuntu ~: $ sudo chown -R apache: apache / etc / apache2
A módosítások mentéséhez adja ki a következő parancsot:
ubuntu @ ubuntu ~: $ sudo service apache2 indítsa újra

Tartsa naprakészen az Apache-t

Az Apache arról híres, hogy biztonságos platformot kínál egy nagyon aggódó fejlesztői közösséggel, amely ritkán találkozik biztonsági hibákkal. Mindazonáltal normális kérdéseket felfedezni a szoftver kiadása után. Ezért elengedhetetlen a webkiszolgáló naprakészen tartása a legfrissebb biztonsági funkciók kihasználása érdekében. Azt is javasoljuk, hogy kövesse az Apache Server bejelentési listáit, hogy naprakész legyen az Apache fejlesztői közösség új bejelentéseiről, kiadásairól és biztonsági frissítéseiről.

Az apache frissítéséhez az apt használatával írja be a következőt:

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

Tiltsa le a kiszolgáló aláírását

Az Apache Server alapértelmezett konfigurációja sok részletet tár fel a szerverrel és annak beállításával kapcsolatban. Például engedélyezett ServerSignature és ServerTokens irányelvek az / etc / apache2 / apache2 könyvtárban.conf fájl hozzáad egy további fejlécet a HTTP-válaszhoz, amely potenciálisan érzékeny információkat tár fel. Ezek az információk tartalmazzák a kiszolgáló beállításainak részleteit, például a kiszolgáló verzióját és az operációs rendszert, amelyek segíthetik a támadót a felderítési folyamatban. Az apache2 szerkesztésével letilthatja ezeket az irányelveket.conf fájlt a vim / nano segítségével, és adja hozzá a következő irányelvet:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... kivágás…
ServerSignature ki
... kivágás…
ServerTokens Prod
... kivágás…

Indítsa újra az Apache-t a módosítások frissítéséhez.

Tiltsa le a Kiszolgálókönyvtár-listákat

A Directory listák a gyökérmappába vagy alkönyvtárakba mentett összes tartalmat jelenítik meg. A címtárfájlok tartalmazhatnak nem nyilvános megjelenítésre szánt érzékeny információkat, például PHP-szkripteket, konfigurációs fájlokat, jelszavakat tartalmazó fájlokat, naplókat stb.
A címjegyzékek tiltásához módosítsa az Apache szerver konfigurációs fájlját az apache2 szerkesztésével.conf fájl:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... kivágás…

Opciók -Indexek

... kivágás…

VAGY

... kivágás…

Opciók -Indexek

... kivágás…

Ezt az irányelvet hozzáadhatja a .a fő webhelykönyvtár htaccess fájlja.

A rendszerbeállítások védelme

A .A htaccess fájl egy kényelmes és hatékony szolgáltatás, amely lehetővé teszi a konfigurációt a fő apache2-n kívül.conf fájl. Azokban az esetekben azonban, amikor a felhasználók fájlokat tölthetnek fel a szerverre, a támadók ezt kihasználhatják saját.htaccess ”fájl rosszindulatú konfigurációkkal. Tehát, ha nem ezt a funkciót használja, letilthatja a .htaccess irányelv, i.e.:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... kivágás…
#AccessFileName .htaccess
... kivágás…

VAGY
Kapcsolja ki a .htaccess fájl, kivéve a speciálisan engedélyezett könyvtárakat az apache2 szerkesztésével.conf fájl és az AllowOverRide irányelv None-ra fordítása;

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
... kivágás…

Nincs AllowOverride

... kivágás…

Biztonságos könyvtárak hitelesítéssel

A htpasswd segédprogram segítségével felhasználói hitelesítő adatokat hozhat létre az összes vagy néhány könyvtár védelme érdekében. Lépjen a szerver mappájába, és a következő paranccsal hozza létre a .htpasswd fájl jelszó-kivonatok tárolásához, mondjuk egy dev nevű felhasználóhoz rendelt hitelesítő adatokhoz.

[e-mail védett] ~: $ sudo htpasswd -c / etc / apache2 / -htpasswd dev

A fenti parancs meg fogja kérni az új jelszót és a jelszó megerősítését. Megtekintheti a macskát ./ htpasswd fájl a tárolt felhasználói hitelesítő adatok kivonatának ellenőrzéséhez.

Most automatikusan beállíthatja a konfigurációs fájlt a webhely_könyvtárában, amelyet meg kell védenie a .htaccess fájl. A hitelesítés engedélyezéséhez használja a következő parancsokat és irányelveket:

ubuntu @ ubuntu ~: $ sudo nano / var / www / your_website /.htaccess
... kivágás…
AuthType Basic
AuthName "A párbeszédpanel hozzáadása"
AuthUserFile / etc / apache2 / user_name / domain_name /.htpasswd
Érvényes felhasználót igényel
... kivágás…

Ne felejtse el hozzáadni az utat a sajátja szerint.

Futtassa a szükséges modulokat

Az alapértelmezett Apache-konfiguráció olyan engedélyezett modulokat tartalmaz, amelyekre Önnek talán nincs is szüksége. Ezek az előre telepített modulok megnyitják az Apache biztonsági problémáit, amelyek vagy léteznek, vagy a jövőben is létezhetnek. E modulok letiltásához először meg kell értenie, hogy mely modulokra van szükség a webkiszolgáló zavartalan működéséhez. Erre a célra nézze meg az apache modul dokumentációját, amely az összes rendelkezésre álló modult lefedi.

Ezután a következő paranccsal derítse ki, hogy mely modulok futnak a szerveren.

[email protected] ~: $ sudo ls / etc / apache2 / mods-enabled

Az Apache az a2dismod hatékony paranccsal érkezik, amely letiltja a modult. Megakadályozza a modul betöltését, és figyelmeztetést küld a modul letiltásakor, hogy a művelet negatívan befolyásolhatja a szervert.

[email protected] ~: $ sudo a2dismod modulnév

A modult letilthatja a LoadModule sor kommentjeivel is.

A lassú Loris és a DoS Attack megakadályozása

Az Apache kiszolgáló alapértelmezett telepítése arra kényszeríti, hogy túl sokáig várjon az ügyfelek kéréseire, ami lassú Loris és DoS támadásoknak teszi ki a kiszolgálót. Az apache2.A conf konfigurációs fájl egy utasítást tartalmaz, amelynek segítségével az időkorlátot néhány másodpercre csökkentheti az ilyen típusú támadások megelőzésére, azaz.e.:

ubuntu @ ubuntu ~: $ sudo vim / etc / apache2 / apache2.konf
Időtúllépés 60

Ezenkívül az új Apache szerver egy praktikus mod_reqtimeout modullal rendelkezik, amely egy RequestReadTimeout direktívát biztosít a kiszolgáló jogosulatlan kérések elleni védelméhez. Ez az irányelv néhány trükkös konfigurációval érkezik, így elolvashatja a kapcsolódó információkat a dokumentációs oldalon.

Tiltsa le a felesleges HTTP kéréseket

A korlátlan HTTP / HTTPS kérések a kiszolgáló alacsony teljesítményéhez vagy DoS támadáshoz is vezethetnek. A LimitRequestBody használatával 100 KB-nál kisebbre korlátozhatja a HTTP-kérelmek címtáronkénti fogadását. Például egy irányelv létrehozásához a / var / www / your_website mappához hozzáadhatja a LimitRequestBody irányelvet az AllowOverride All alatt,.e.:

... kivágás…

Opciók -Indexek
AllowOverride All
LimitRequestBody 995367

... kivágás…

Megjegyzés: Ne felejtse el újraindítani az Apache-ot az alkalmazott változtatások után, hogy megfelelően frissítse azt.

Következtetés

Az Apache szerver alapértelmezett telepítése rengeteg érzékeny információval szolgálhat a támadók számára a támadás során. Addig is rengeteg más (a fentiekben fel nem sorolt) módszer létezik az Apache webkiszolgáló biztonságára is. Folytassa a kutatást és tartsa naprakészen az új irányelveket és modulokat a szerver további biztonsága érdekében.

A League of Legends telepítése az Ubuntu 14-re.04
Ha rajongsz a League of Legendsért, akkor ez egy lehetőség arra, hogy teszteld a League of Legends játékot. Ne feledje, hogy a LOL a PlayOnLinux rends...
Telepítse a legújabb OpenRA stratégiai játékot az Ubuntu Linux rendszerre
Az OpenRA egy ingyenes / ingyenes valós idejű stratégiai játékmotor, amely újjáépíti a korai Westwood játékokat, mint például a klasszikus Command & C...
Telepítse a legújabb Dolphin Emulator for Gamecube & Wii szoftvert Linuxra
A Dolphin Emulator segítségével a kiválasztott Gamecube & Wii játékokat játszhatja Linux személyi számítógépeken (PC). Mivel a Dolphin Emulator szaba...