CentOS 6da ModSecurity ile NGINX kurulumu

Bu makalede, ModSecurity tarafından korunan bir LEMP yığını oluşturmayı açıklayacağım. ModSecurity, darbelere, PHP saldırılarına ve daha fazlasına karşı korumaya yarayan açık kaynaklı bir web uygulaması güvenlik duvarıdır. NGINX'i ModSecurity ile kurmak istiyorsanız okumaya devam edin.

Bu makaledeki tüm adımlar kök erişimi gerektirir.

Adım 1: Önkoşulları yükleme

Zaten root kullanıcısı olarak çalışmıyorsanız, kendinizi yükseltin:

/bin/su

Bir derleyiciye ihtiyacımız var, emin olmak için aşağıdakileri yürütün:

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' 

NGINX'i kurmak için önce paketi almamız gerekiyor. Paketi indirin:

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

Yığımız için PHP paketine de ihtiyacımız olacak.

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

ModSecurity'yi yüklediğimizden, kaynağı alıp indireceğiz:

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

Şimdi dosyaları açın / açın.

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

Ardından, ModSecurity'yi yükleyeceğiz.

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

Şimdi tüm önkoşulları elde ettiğimize göre, NGINX'i kuralım. Aşağıdaki komutlar kümesi, NGINX ve ModSecurity'nin kurulumu içindir.

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

Şimdi MySQL sunucusunu kuralım.

yum install -y mysql-server
service mysqld start
mysql_secure_installation

For mysql_secure_installationkomutu:

  • Kurulum sihirbazının ilk adımında enter tuşuna basın.
  • Yeni bir MySQL kök parolası ayarlanması gerekip gerekmediği sorulduğunda Y yazın.
  • Yeni bir şifre yazın, tekrar yazarak onaylayın.
  • Anonim kullanıcıları kaldırmak için Y tuşuna basın, Y tuşuna tekrar basarak MySQL'e uzaktan kök erişimine izin vermeyin.
  • Test veritabanını / kullanıcıyı kaldırmak için son bir kez Y tuşuna basın.
  • Son olarak, değişikliklerinizi kaydetmek için Y düğmesine basın.

Yüklemek için son bir şey ve bu PHP. Bu makalede, PHP'yi kaynaktan yükleyeceğiz.

PHP için kaynak dizini girin.

cd /usr/src/php-5.6.16

Şimdi, PHP'yi yapılandırın. ./configureWordPress gibi uygulamaları çalıştırabilmeniz için komutta aşağıdaki bağımsız değişkenler bulunmaktadır .

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

NGINX için PHP-FPM yükleyin:

yum install -y php-fpm

NGINX'in kendisi doğrudan PHP ile entegre olmadığı için PHP-FPM'yi PHP'nin üzerine kurmamız gerekir. Bunun yerine, NGINX komut dosyalarımızı yürütmek için PHP işlemeyi PHP-FPM'ye aktarır.

Aferin! Önkoşulları yüklediniz.

Adım 2: ModSecurity / NGINX'i Yapılandırma

Bir ModSecurity kural kümesi oluşturarak başlayalım. ModSecurity siz yapılandırana kadar hiçbir şey yapmaz.

Web sitelerinden belirlenen OWASP kuralını alın:

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

Kural kümesini indirdikten sonra, varsayılan yapılandırmayı temel kurallarla birleştiririz.

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

Teorik olarak, bu durum çoğu web istismarına karşı korunmalıdır. Bununla birlikte, yüklediğiniz eklentiler / kod da denetlenmelidir, çünkü ModSecurity mükemmel bir güvenlik önlemi olsa da, kurşun geçirmez değildir.

Şurada bir dizin oluşturun /var/www:

mkdir /var/www

Ve sanal sunucunuz için bir dizin:

mkdir /var/www/yourwebsite.com

Son olarak, adresinde bulunan NGINX yapılandırmanıza aşağıdakileri ekleyin /usr/local/nginx/conf/nginx.conf. Son }simgeyi göstermeden önce bu yapılandırmayı eklediğinizden emin olun .

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

Adım 3: PHP-FPM ve NGINX'i Başlatma

Bu adım oldukça basittir - tek yapmanız gereken aşağıdaki komutları uygulamaktır.

service php-fpm start
/usr/sbin/nginx

Tebrikler! ModSecurity tarafından korunan NGINX ile ilk web sitenizi kurdunuz. ModSecurity hakkında daha fazla bilgi için resmi sitelerini ziyaret edin .



Leave a Comment

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun