Apache oktatóanyagok kezdőknek

mi az Apache?

Apache egy figyelemre méltó darab alkalmazás szoftver. Ez a legszélesebb körben használt webszerver alkalmazás a világon, több mint 50% – os részesedéssel a kereskedelmi webszerver piacon. Az Apache a legelterjedtebb webszerver alkalmazás Unix-szerű operációs rendszerekben, de szinte minden platformon használható, például Windows, OS X, OS/2 stb., A szó, Apache, vették a nevét az indián törzs “Apache”, híres a készségek hadviselés és stratégia készítése.

Ez egy moduláris, folyamat alapú webszerver alkalmazás, amely új szálat hoz létre minden egyidejű kapcsolattal. Számos funkciót támogat; ezek közül sok különálló modulként van összeállítva, és kiterjeszti az alapvető funkcionalitását, valamint mindent tud nyújtani a szerver oldali programozási nyelv támogatásától a hitelesítési mechanizmusig. A virtuális tárhely egy olyan szolgáltatás, amely lehetővé teszi egyetlen Apache webszerver számára, hogy számos különböző webhelyet kiszolgáljon.,

az Apache

telepítésének számos módja van a csomag vagy alkalmazás telepítésének. Vannak besorozott alábbi –

  1. egyik jellemzője ennek a nyílt forráskódú webes alkalmazás, hogy bárki lehet, hogy a telepítő, mint egy saját környezetben. Ez lehetővé tette a különböző gyártók, mint a Debian, Red Hat, FreeBSD, Suse stb. testreszabhatja a fájl helyét és konfigurációját apache figyelembe véve más telepített alkalmazások és base OS.,
  2. a gyártóalapú telepítőn kívül mindig van lehetőség a forráskódból történő telepítésre. Telepítése Apache forrás fájl egy platform független & működik az összes operációs rendszer.

az apache webkiszolgáló egy moduláris alkalmazás, ahol a rendszergazda kiválaszthatja a szükséges funkciókat, és különböző modulokat telepíthet saját igényei szerint.,

az összes modul dinamikus megosztott objektumként állítható össze (a DSO egy olyan objektumfájl, amelyet több alkalmazás is megoszthat a végrehajtás során), amely külön létezik a fő apache fájltól. A DSO megközelítés erősen ajánlott, nagyon egyszerűvé teszi a modulok hozzáadását/eltávolítását/frissítését a kiszolgálók konfigurációjából.

telepítse az Apache-t:Linux Platform

Red Hat vagy rpm alapú rendszereken

ha rpm-et használ (a RedHat csomagkezelő segédprogram alkalmazás telepítéséhez Linux rendszereken) alapú Linux disztribúció, azaz., Red Hat, Fedora, CentOs, Suse, telepítheti ezt az alkalmazást akár gyártó specifikus csomagkezelő, vagy közvetlenül az épület a rpm fájlt a rendelkezésre álló forrásból tarball.

telepítheti az Apache-t az alapértelmezett Csomagkezelőn keresztül, amely minden Red Hat alapú disztribúcióban elérhető, mint például a CentOs, a Red Hat és A Fedora.

# yum install httpd

az apache forrás tarball lehet alakítani egy rpm fájlt a következő paranccsal.

# rpmbuild -tb httpd-2.4.x.tar.bz2

kötelező a-devel csomag telepítése a kiszolgálóra a létrehozáshoz .rpm fájl forrásból.,

miután konvertálta a forrásfájlt rpm telepítővé, a következő parancsot használhatja az Apache telepítéséhez.

# rpm –ivh httpd-2.4.4-3.1.x86_64.rpm

a telepítés után a kiszolgáló nem indul el automatikusan, a szolgáltatás elindításához a következő parancs bármelyikét kell használnia Fedora, CentOs vagy Red Hat.

# /usr/sbin/apachectl start# service httpd start# /etc/init.d/httpd start

telepítse az Apache –t a forrásból

az apache telepítéséhez a-devel csomagot telepíteni kell a szerverre. .Az Apache legújabb elérhető verzióját itt töltheti le ., A forrásfájl letöltése után helyezze át a/usr / local / src mappába.

az Apache számára elérhető összes konfigurációs lehetőség megtekintéséhez használhatja ./ configure-Súgó opció. A leggyakoribb konfigurációs lehetőség-prefix={könyvtárnév telepítése}.

a fenti példa az Apache összeállítását mutatja a/usr / local / apache könyvtárban a DSO képességgel. A-enable-so opció, képes betölteni a szükséges modulokat apache futási időben keresztül DSO mechanizmus helyett igénylő újrakompilálás.,

a telepítés befejezése után böngészhet a webszerverek alapértelmezett oldalán a kedvenc böngészőjével. Ha a tűzfal engedélyezve van a kiszolgálón, akkor kivételt kell tennie az operációs rendszer tűzfalának 80-as portjára vonatkozóan. A 80-as port megnyitásához a következő parancsot használhatja.

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

service iptables save

a kiszolgáló IP-címének böngészésével láthatja az alapértelmezett Apache2 üdvözlő képernyőt.

mi a virtuális gazdagép?

egy Apache webkiszolgáló több webhelyet is fogadhat ugyanazon a kiszolgálón., Nem kell külön szerver gép, apache szoftver minden honlapon. Ez a virtuális gazdagép vagy a VHost fogalmával érhető el.

minden olyan tartomány, amelyet a webkiszolgálón szeretne elhelyezni, külön bejegyzéssel rendelkezik az apache konfigurációs fájlban.

az Apache Virtualhost

  1. Névalapú virtuális host
  2. Címalapú vagy IP alapú virtuális host és.

Névalapú virtuális gazdagép

név alapú virtuális tárhely több virtuális webhely egyetlen IP-címen történő fogadására szolgál.,

a név alapú virtuális tárhely konfigurálásához be kell állítania azt az IP-címet, amelyen az összes kívánt webhely Apache kérését megkapja. Ezt megteheti a NameVirutalHost irányelv az apache konfigurációs azaz httpd.conf / apache2.conf fájl.

Apache virtual host példa:

felveheti annyi virtuális hosts, mint egy a követelmény., A webkonfigurációs fájlokat a következőkkel ellenőrizheti:

#httpd –tSyntax OK

Ha a konfigurációs fájlnak Rossz szintaxisa van, akkor hibát fog okozni

IP-alapú virtuális host

az IP-alapú virtuális tárhely beállításához több IP-címre van szüksége a szerveren konfigurálva. Tehát a vhost apache száma függa kiszolgálón konfigurált IP-cím száma. Ha a kiszolgálónak 10 IP-címe van, létrehozhat 10 IP-alapú virtuális gazdagépet.

a fenti ábrán két weboldal példa1.,com és example2.com különböző IP-ket rendeltek hozzá, és IP-alapú virtuális tárhelyet használnak.

milyen Apache-nak kell futtatnia a Php fájlt?

PHP fájlok futtatása az Apache igényeinek megfelelően mod_php engedélyezve van a kiszolgálón. Ez lehetővé teszi az Apache értelmezését .Php fájlok. Php kezelőkkel rendelkezik, amelyek értelmezik a PHP kódot az apache-ban, és HTML-t küldenek a webszervernek.

Ha a mod_php engedélyezve van a kiszolgálón, akkor php nevű fájl lesz.conf in / etc / httpd / conf.d / könyvtár., Azt is ellenőrizze, hogy:

httpd -M | grep "php5_module"

A kimeneti hasonló lesz:

a Php rakodók az Apache

  • mod_php
  • CGI
  • FastCGI
  • suPHP

mod_phpis a legrégebbi PHP-kezelő, ettől a PHP része apache, s nem igényel semmilyen külső PHP folyamat. Ez a modul alapértelmezés szerint telepítve van minden Linux disztribúciós tárolóban, így a modul engedélyezése/letiltása nagyon egyszerű.,

Ha a FastCGI-t használja PHP kezelőjeként, beállíthatja, hogy a PHP több verzióját különböző fiókok használják a kiszolgálón.

FastCGI azaz mod_fastcgi egy kiterjesztése mod_fcgid, ahol a mod_fcgid egy nagy teljesítményű alternatívája CGI azaz mod_cgi . Elegendő számú CGI-példányt indít az egyidejű webes kérések kezeléséhez. Azt is használja suexec, hogy támogassa a különböző felhasználók saját példányai PHP, valamint javítja a web biztonság.

A Ruby fájlok futtatásához az Apache mod_ruby-ra van szükség. Az Apache a Ruby fájlokat a FastCGI segítségével is képes kezelni., Lehetőség van a ruby több verziójának használatára mod_fcgid, azaz FastCGI segítségével.

az apache utast is telepítheti, és konfigurálhatja az Apache-t, hogy a Ruby oldalak kiszolgálására használja.

(Phusion utas néven is ismert “utas” egy ingyenes web szerver modul, amelynek célja, hogy integrálja az Apache és Nginx )

lépéseket telepíteni mod_ruby a szerveren –

hogyan kell futtatni Ruby Apache

hozzá kell adni a mod_ruby modul az Apache konfiguráció azaz /etc/httpd/conf.d / ruby.adja hozzá a következő sort.

LoadModule ruby_module modules / mod_ruby.,tehát

Ha szeretné engedélyezni vagy letiltani ezeket a modulokat, akkor szerkesztenie kell az apache konfigurációs fájlt, kommentálnia vagy kibontania ezeket a modulokat, ha a webszerver már össze van állítva ezekkel a modulokkal.

az Apache webszerver

biztosítása a webszerver nagyon fontos, ez azt jelenti, hogy mások csak a kívánt információkat láthatják & az adatok védelme és a hozzáférés korlátozása.

Ezek olyan gyakori dolgok, amelyek növelik az Apache webszerverek biztonságát.,

1) Az Apache verzió és az operációs rendszer információinak elrejtése:

az Apache megjeleníti annak verzióját és az operációs rendszer nevét hibákban, az alábbi képernyőképen látható módon.

a hacker használhatja ezt az információt támadás elindításához a szerver vagy az operációs rendszer adott verziójában nyilvánosan elérhető sebezhetőségekkel.

annak érdekében, hogy az Apache webserverfromdisplaying ezt az információt, meg kell módosítani

“server signature” opció áll rendelkezésre az apache konfigurációs fájl., Alapértelmezés szerint “be”, be kell állítanunk”ki”.

vim /etc/httpd/conf/httpd.conf
ServerSignature OffServerTokens Prod

Mi is set “ServerTokens Ösztöke”, ami azt mondja a web szerver vissza egyetlen apacs elnyomja az OPERÁCIÓS rendszer nagyobb, illetve a kisebb változat

módosítása Után a konfigurációs fájlt, indítsa újra/újra az apache web szerver, hogy az hatékony legyen.,

service httpd restart

2) Letiltja a könyvtárlista

Ha a dokumentum gyökér könyvtár nem rendelkezik index fájl alapértelmezés szerint a apache webszerver megmutatja a dokumentum tartalmát gyökér könyvtárban.

Ez a funkció kikapcsolható egy adott könyvtár számára az Apache konfigurációs fájlban elérhető “options directive” segítségével.,

<Directory /var/www/html> Options -Indexes</Directory>

3) a felesleges modulok letiltása

jó gyakorlat az összes nem használt felesleges modul letiltása. Láthatja az Apache konfigurációs fájljában elérhető engedélyezett modul listáját –

a felsorolt modulok közül sok letiltható, mint példáulmod_imap, mod_include, mod_info, mod_userdir, mod_autoindex, mivel ezeket alig használják bármely termelési webszerver.

vi /etc/httpd/conf/httpd.conf#LoadModule auth_digest_module modules/mod_auth_digest.so

miután kommentálta a modult, mentse el a fájlt.,

indítsa újra az apache szolgáltatásokat a következő paranccsal.

/etc/init.d/httpd restart

4) a webes gyökérkönyvtáron kívüli fájlokhoz való hozzáférés korlátozása

Ha szeretné meggyőződni arról, hogy a web gyökérkönyvtáron kívüli fájlok nem érhetők el, akkor ellenőriznie kell, hogy a könyvtár korlátozott-e a webszerver konfigurációs fájljában az” Engedélyezés “és a” megtagadás ” opcióval.

<Directory/>Options NoneAllowOverride NoneOrder deny,allowDeny from all</Directory>

ha korlátozza acess kívül a web root directoy, akkor nem lesz képes elérni semmilyen fájlt található bármely más mappát a webszerver, akkor kap 404 visszatérési kódot.,

5) a mod_evasive használatával meg kell tagadnia a DoS támadást

Ha meg akarja védeni a webszerverét a Dos-tól (azaz a szolgáltatás megtagadása), engedélyeznie kell a mod_evasive modult. Ez egy harmadik féltől származó modul, amely érzékeli a Dos támadást, és megakadályozza, hogy a támadás annyi kárt okozzon, mint amennyit megtenne, ha elhagyja a pályáját. Letölthető itt.,

töltse le a fenti fájlt

6) a mod_security használatával az apache biztonság növelése érdekében

Ez a modul tűzfalként működik az Apache számára, és lehetővé teszi a forgalom valós idejű figyelését. Azt is megakadályozza, hogy a webszerver nyers erő támadások. A mod_security modul telepíthető a disztribúció alapértelmezett csomagkezelőjével.

7) a kérés méretének korlátozása

az Apache nem korlátozza a http kérés teljes méretét, amely DoS támadáshoz vezethet., Korlátozhatja az Apache direktíva “LimitRequestBody” kérésméretét a könyvtárcímkével. Az érték lehet állítani semmit 0-2 GB (azaz 2147483647 bájt), mint egy a követelmény.

<Directory "/var/www/html/uploads"> LimitRequestBody 512000</Directory>

Apache Log Format

az Apache naplók részletes információkat szolgáltatnak, amelyek segítenek a szerverrel kapcsolatos gyakori problémák felderítésében.

hozzáférési naplók létrehozása érdekében a mod_log_configmodule-t engedélyezni kell.

három irányelv érhető el az apache config fájlban, azaz

  • TransferLog: naplófájl létrehozása.
  • LogFormat: egyéni formátum megadása.,
  • CustomLog: naplófájl létrehozása és formázása.

TransferLog direktíva elérhető az apache konfigurációs fájlban, és a virtuális host naplófájlokat a beállított paraméterek szerint forgatja.

kétféle Apache Log formátum

  • közös Log formátum
  • kombinált Log formátum.

engedélyezheti őket az apache konfigurációs fájl, azaz apache2 szerkesztésével.conf (Debian / ubuntu) vagy httpd.,conf (rpm alapú rendszerek) fájl

Közös Log Format

LogFormat "%h %l %u %t \"%r\" %>s %b" commonCustomLog logs/access_log common

Közös Napló által generált Apache

 client denied by server configuration: /export/home/live/ap/htdocs/test

Kombinált Napló Formátum

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combinedCustomLog log/access_log combined

Itt

  • %h a távoli host
  • %l, az identitás, a felhasználó által meghatározott identd
  • %u a felhasználói név által meghatározott HTTP-hitelesítés
  • %t az idő, a szerver fejeztük be a kérelmet.
  • % r az ügyfél kérési sora. (“GET / HTTP / 1.,0”)
  • % >s a kiszolgálóról az Ügyfélnek küldött állapotkód (500, 404 stb.)
  • % b az ügyfélre adott válasz mérete (bájtban)
  • a hivatkozó az az oldal, amely ehhez az URL-hez kapcsolódik.
  • User-agent a böngésző azonosító karakterlánca.

az Apache által generált kombinált napló:

egyéni napló külön naplófájlt hoz létre a szerver minden virtuális Gazdagépéhez. Meg kell adni a konfigurációs fájl virtuális gazdagép szakaszában.,

az alább említett virtuális gazdagép-konfiguráció látható, a generált napló az adott virtuális gazdagép számára egyedi lesz, a formátum pedig kombinálódik.

konfigurálja az első gyártósort

1. Annak érdekében, hogy futó termelési webszerver legyen, szüksége van egy dedikált csomópontra (fizikai/virtuális vagy felhőpéldány), amely Linux/Unix, Windows, MacOS stb.

2. A webkiszolgálónak közvetlen hálózati kapcsolattal és staticIP-címmel kell rendelkeznie.

3., Meg kell, hogy az összes modul szükséges futó weboldalakat. Ha egy webszerver feldolgozza a PHP oldalakat, akkor engedélyeznie kell a PHP modult.

  1. azt is meg kell, hogy egy jó víruskereső alkalmazás konfigurálva és fut biztosítása érdekében a webszerver Malware vagy vírus támadások. Szüksége van egy mechanizmusra is, hogy rendszeresen frissítse a konfigurált víruskereső/anti malware alkalmazást kézi beavatkozás nélkül, hogy maximális hasznot szerezzen belőlük.,
  2. ha több száz domaint kell tárolni a webszerveren, akkor végre kell hajtania korlátozások fájlrendszer kvóta minden domain, adatbázisok száma minden domain hozhat létre, e – mail fiókok száma tartományonként stb.
  3. ha a webkiszolgálót megosztott hosting szolgáltatásokra telepítették, a webkiszolgálón lévő felhasználókat korlátozni kell. A megosztott hosting felhasználónak a legkevesebb felhasználói jogosultsággal kell rendelkeznie, hogy ne sértse meg a fontos fájlokat & törje meg a teljes kiszolgálót., Az Apache nem nyújt ilyen funkciókat, ezért különböző harmadik féltől származó alkalmazásokra van szüksége, az operációs rendszer testreszabása ennek eléréséhez.
  4. ha új domaint ad hozzá a webszerverhez, több száz konfigurációs fájl szerkesztésére van szüksége, hogy engedélyezze a hozzáadott domain összes funkcióját.
  5. Ha az egyik hosztolt domainhez más PHP beállítás szükséges, mint a többi domainhez, a core Apache web Serverben történő implementálás nagyon bonyolult, és nagy mértékben szükséges a webszerver testreszabása.,
  6. a termelési webkiszolgálónak tűzfalra van szüksége a nem kívánt forgalom blokkolásához, amely nagy terhelést okozhat a kiszolgálón. Végrehajtása IPTABLE szabályok parancssor nagyon összetett. A core Linux/Unix környezet szakértelmére van szüksége ahhoz, hogy hatékony tűzfalszabályokat írjon a nem kívánt forgalom blokkolására. IPTABLE alapul netfilter modul; ez egy operációs rendszer szintű tűzfal, amely lehetővé teszi a rendszergazda, hogy hozzon létre szabályokat a bejövő / kimenő forgalom a szerveren.
  7. a termelési webszerver több különböző alkalmazást igényel, mint például az E-Mail, az FTP a fájl feltöltéséhez, a domain Névrendszer a parkoló domainekhez., Mindezen Alkalmazások kezelése egy core Linux / Unix rendszeren szakértelmet igényel a megfelelő technológiákkal kapcsolatban.

tehát elmondható, hogy egy webkiszolgáló kezelése több domainhez nagyon összetett feladat, több száz konfigurációs fájl szerkesztését igényli, minden alkalmazás testreszabásával a kívánt eredmény eléréséhez. Hibaelhárítás minden miss konfiguráció nagyon nehéz lesz a kezdők számára.

A cPanel vagy hasonló szoftvert használó megoldás

cPanel grafikus módon kezeli a webszerverét., Ez azt jelentette, hogy tömeges hosting szolgáltatások, amelyek könnyen használható, konfigurálható. a cPanel csökkentette a tárhely-és webszerver-kezelésbe való belépés technikai akadályait. Megkönnyíti a komplex feladatot, számos hasznos és könnyen használható webes felületet biztosít, amelyek a webszerver működtetéséhez szükséges közös rendszer adminisztrációs feladatokat látják el.

cPanel összeállítja a szoftver saját verzióját.

Ha újra kell fordítania a webkiszolgálót, azaz, apache normál Linux platformon manuálisan kell kiválasztania / keresnie a szükséges modult. a cPanel Easyapache funkciót biztosít, amely egy szkript alapú webszerver-összeállítási módszer.

nem csak webes szolgáltatásokat nyújt, hanem Mail, DNS, FTP és még sok más szolgáltatás, amely a webes alkalmazáshoz szükséges.,

A feladat, hogy szüksége van szakértelemre a core Linux/Unix alapú tárhely, mint telepítése SSLs, újrafordítása Apache különböző PHP modul frissítését Web Biztonság konfigurálása hatékony IPTABLE szabályok, Hozzátéve, ftp felhasználók létrehozása mail fiókok minden domain, szkennelés a dokumentum gyökér a víruskereső adatbázisok létrehozása könnyű befejezni a cPanel.

Ez egy csomó szkriptet, hogy a javítások, telepítés, valamint a hibaelhárítás közös adminisztratív feladatokat.

biztonsági mentést és visszaállítási funkciót biztosít, így nincs szükség a fájlok kézi másolására a biztonsági mentéshez., Ha biztonsági másolatot készít a tartományról, a cPanel létrehoz egy tar fájlt, amely tartalmazza a dokumentum gyökérmappáját, az e-mail fiókokat és e-maileket, az ftp-fiókokat, az adatbázisokat, a DNS-rekordokat és más alkalmazásokat.

robusztus dokumentációt is nyújt, és nagyon nagy felhasználói közösséggel rendelkezik, ahol megbeszélheti és megoldhatja a problémáit.

tehát azt mondhatjuk, hogy a cPanel a legjobb alkalmazás a webszerver kezeléséhez a szükséges funkciókkal. Ez biztosítja az Ön számára, könnyen használható felület kezelésére a domain, valamint egy mechanizmus, hogy ne bonyolult kezelése core Web szerver.,

sok versengő termék létezik a cPanel számára, mint Plesk, ISPConfig, Ajenti, Kloxo, Open Panel, Zpanel stb.

Leave a Comment