Installeer NGINX met ModSecurity op CentOS 6

In dit artikel zal ik uitleggen hoe je een LEMP-stack kunt bouwen die wordt beschermd door ModSecurity. ModSecurity is een open-source firewall voor webtoepassingen die handig is om te beschermen tegen injecties, PHP-aanvallen en meer. Lees verder als u NGINX met ModSecurity wilt instellen.

Voor alle stappen in dit artikel is root-toegang vereist.

Stap 1: de vereisten installeren

Als u nog niet actief bent als rootgebruiker, escaleer uzelf dan:

/bin/su

We hebben een compiler nodig, dus voer het volgende uit om er zeker van te zijn:

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' 

Om NGINX te kunnen installeren, hebben we eerst het pakket nodig. Download het pakket:

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

We hebben ook het PHP-pakket nodig voor onze stapel.

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

Aangezien we ModSecurity installeren, pakken we de bron en downloaden deze:

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

Nu, untar / unzip de bestanden.

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

Vervolgens installeren we ModSecurity.

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

Nu we aan alle vereisten hebben voldaan, gaan we NGINX installeren. De volgende set opdrachten is voor de installatie van NGINX en 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

Laten we nu de MySQL-server installeren.

yum install -y mysql-server
service mysqld start
mysql_secure_installation

Voor de mysql_secure_installationopdracht:

  • Druk op enter bij de eerste stap van de installatiewizard.
  • Typ Y wanneer daarom wordt gevraagd of er een nieuw MySQL-rootwachtwoord moet worden ingesteld.
  • Typ een nieuw wachtwoord, bevestig door het nogmaals te typen.
  • Druk op Y om anonieme gebruikers te verwijderen, verbied root-toegang op afstand tot MySQL door nogmaals op Y te drukken.
  • Druk nog een keer op Y om de testdatabase / gebruiker te verwijderen.
  • Druk ten slotte op Y om uw wijzigingen op te slaan.

Een laatste ding om te installeren, en dat is PHP. In dit artikel installeren we PHP vanaf de bron.

Voer de bronmap voor PHP in.

cd /usr/src/php-5.6.16

Configureer nu PHP. De volgende argumenten in de ./configureopdracht zijn aanwezig, zodat u applicaties zoals WordPress kunt uitvoeren.

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

Installeer PHP-FPM voor NGINX:

yum install -y php-fpm

We moeten PHP-FPM bovenop PHP zelf installeren omdat NGINX zelf niet rechtstreeks met PHP integreert. In plaats daarvan geeft NGINX PHP-verwerking door aan PHP-FPM om onze scripts uit te voeren.

Goed gedaan! Je hebt de voorwaarden geïnstalleerd.

Stap 2: ModSecurity / NGINX configureren

Laten we beginnen met het bouwen van een ModSecurity-regelset. ModSecurity doet niets alleen totdat u het configureert.

Pak de OWASP-regelset van hun website:

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

Nadat je de regelset hebt gedownload, combineren we de standaardconfiguratie met de basisregels.

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

In theorie zou dit moeten beschermen tegen de meeste webexploits. De plug-ins / code die u installeert, moeten echter ook worden gecontroleerd, want hoewel ModSecurity een uitstekende beveiligingsmaatregel is, is het niet kogelvrij.

Maak een directory op /var/www:

mkdir /var/www

En een map voor uw virtuele host:

mkdir /var/www/yourwebsite.com

Voeg ten slotte het volgende toe aan uw NGINX-configuratie op /usr/local/nginx/conf/nginx.conf. Zorg ervoor dat u deze configuratie toevoegt voordat het laatste }symbool voorkomt .

  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;
  }
}

Stap 3: PHP-FPM en NGINX starten

Deze stap is vrij eenvoudig - u hoeft alleen maar de volgende opdrachten uit te voeren.

service php-fpm start
/usr/sbin/nginx

Gefeliciteerd! Je hebt je eerste website opgezet met NGINX beschermd door ModSecurity. Bezoek hun officiële site voor meer informatie over ModSecurity .

Laat een reactie achter

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.