Nastavte NGINX s ModSecurity na CentOS 6

V tomto článku vysvetlím, ako vytvoriť zásobník LEMP chránený systémom ModSecurity. ModSecurity je firewall webovej aplikácie s otvoreným zdrojom, ktorý je užitočný na ochranu pred injekciami, útokmi PHP a ďalšími. Ak by ste chceli nastaviť NGINX s ModSecurity, pokračujte v čítaní.

Všetky kroky v tomto článku vyžadujú prístup root.

Krok 1: Inštalácia predpokladov

Ak ešte nie ste spustený ako užívateľ root, eskalujte sami:

/bin/su

Potrebujeme kompilátor, takže vykonajte nasledovné, aby ste sa uistili:

yum install -y gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel httpd-devel libxml2-devel xz-devel python-devel libcurl-devel
yum groupinstall -y 'Development Tools' 

Aby sme mohli nainštalovať NGINX, musíme najprv získať balík. Stiahnite si balík:

cd /usr/src && wget http://nginx.org/download/nginx-1.9.9.tar.gz

Budeme tiež vyžadovať balík PHP pre náš zásobník.

wget http://us2.php.net/distributions/php-5.6.16.tar.bz2

Keďže inštalujeme ModSecurity, získame zdroj a stiahneme ho:

wget https://www.modsecurity.org/tarball/2.9.0/modsecurity-2.9.0.tar.gz

Teraz rozbaľte/rozbaľte súbory.

tar xvf nginx-1.9.9.tar.gz
tar xvf php-5.6.16.tar.bz2
tar xvf modsecurity-2.9.0.tar.gz   

Potom nainštalujeme ModSecurity.

cd /usr/src/modsecurity-2.9.0 && ./configure --enable-standalone-module --disable-mlogc
make && make install

Teraz, keď sme získali všetky predpoklady, poďme nainštalovať NGINX. Nasledujúca sada príkazov je určená na inštaláciu NGINX a ModSecurity.

cd /usr/src/nginx-1.9.9 && ./configure --add-module=../modsecurity-2.9.0/nginx/modsecurity/
make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx

Teraz nainštalujeme server MySQL.

yum install -y mysql-server
service mysqld start
mysql_secure_installation

Pre mysql_secure_installationpríkaz:

  • Stlačte Enter v prvom kroku sprievodcu inštaláciou.
  • Ak sa má nastaviť nové root heslo MySQL, zadajte Y.
  • Zadajte nové heslo a potvrďte ho opätovným zadaním.
  • Stlačením Y odstránite anonymných používateľov, opätovným stlačením Y zakážte vzdialený prístup root k MySQL.
  • Posledným stlačením Y odstránite testovaciu databázu/používateľa.
  • Nakoniec stlačte Y, aby ste uložili zmeny.

Posledná vec, ktorú treba nainštalovať, a to je PHP. V tomto článku nainštalujeme PHP zo zdroja.

Zadajte zdrojový adresár pre PHP.

cd /usr/src/php-5.6.16

Teraz nakonfigurujte PHP. Nasledujúce argumenty v ./configurepríkaze sú tam, aby ste mohli spúšťať aplikácie ako WordPress.

 ./configure --with-pear=/usr/lib/pear --enable-libxml --with-pdo-mysql --with-mysqli --with-mysql --enable-mbstring --with-curl
 make
 make install

Nainštalujte PHP-FPM pre NGINX:

yum install -y php-fpm

Potrebujeme nainštalovať PHP-FPM na samotný PHP, pretože samotný NGINX sa priamo neintegruje s PHP. Namiesto toho NGINX odovzdá spracovanie PHP do PHP-FPM na vykonanie našich skriptov.

Dobrá práca! Nainštalovali ste predpoklady.

Krok 2: Konfigurácia ModSecurity/NGINX

Začnime vytvorením sady pravidiel ModSecurity. ModSecurity sám nerobí nič, kým ho nenakonfigurujete.

Získajte súbor pravidiel OWASP z ich webovej stránky:

 cd /usr/src && wget https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master
 tar xvf master

Po stiahnutí sady pravidiel skombinujeme predvolenú konfiguráciu so základnými pravidlami.

cd SpiderLabs-owasp-modsecurity-crs-60c8bc9
cp /usr/src/modsecurity-2.9.0/modsecurity.conf-recommended /usr/local/nginx/conf/modsecurity.conf
cp /usr/src/modsecurity-2.9.0/unicode.mapping /usr/local/nginx/conf/
cat base_rules/*.conf >> /usr/local/nginx/conf/modsecurity.conf
cp base_rules/*.data /usr/local/nginx/conf

Teoreticky by to malo chrániť pred väčšinou webových exploitov. Doplnky/kód, ktoré inštalujete, by však mali byť tiež kontrolované, pretože hoci je ModSecurity vynikajúcim bezpečnostným opatrením, nie je nepriestrelné.

Vytvorte adresár na adrese /var/www:

mkdir /var/www

A adresár pre váš virtuálny hostiteľ:

mkdir /var/www/yourwebsite.com

Nakoniec pripojte nasledujúce ku konfigurácii NGINX umiestnenej na adrese /usr/local/nginx/conf/nginx.conf. Uistite sa, že ste túto konfiguráciu pridali pred výskytom posledného }symbolu.

  server {
  listen   80;
  root /var/www/yourwebsite.com;
  index index.php index.html index.htm;
  server_name yourwebsite.com www.yourwebsite.com;
  location / {
  ModSecurityEnabled on;
  ModSecurityConfig /usr/local/nginx/modsecurity.conf;
  }
  }

  location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/var/run/php-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
}

Krok 3: Spustenie PHP-FPM a NGINX

Tento krok je pomerne jednoduchý – všetko, čo musíte urobiť, je vykonať nasledujúce príkazy.

service php-fpm start
/usr/sbin/nginx

Gratulujem! Nastavili ste svoju prvú webovú stránku s NGINX chránenou ModSecurity. Ďalšie informácie o ModSecurity nájdete na ich oficiálnej stránke .

Zanechať komentár

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac