Cara Meningkatkan Performa Nginx di Linux

[Kincaimedia.net]
Nginx adalah sebuah program yang ringan, dan berkinerja tinggi digunakan sebagai web server / proxy reverse dan e-mail (IMAP / POP3) proxy. Ngix berjalan pada UNIX, GNU/Linux, varian BSD, Mac OS X, Solaris, dan Microsoft Windows. Menurut Netcraft, 6% dari semua domain di Internet menggunakan webserver nginx. Nginx adalah salah satu dari beberapa server yang ditulis untuk mengatasi masalah C10K. Tidak seperti server tradisional lainnya, Nginx tidak bergantung pada thread untuk menangani permintaan. Sebaliknya ia menggunakan (asynchronous) arsitektur yang jauh lebih terukur dan terkenal responsive. kekuatan nginx terdapat pada beberapa situs web yang berlalu lintas tinggi, seperti WordPress, Hulu, Github, dan SourceForge. Dan pada postingan ini akan di bahas petunjuk bagaimana meningkatkan keamanan web server nginx berjalan pada sistem operasi Linux.


pertama-tama kita harus mengetahui terlebih dahulu default config yang ada pada webserver nginx
Default Config Files dan Nginx Port
◾/usr/local/nginx/conf/ – nginx server direktori konfigurasi dan /usr/local/nginx/conf/nginx.conf adalah main file konfigurasi.
◾/usr/local/nginx/html/ – lokasi default document.
◾/usr/local/nginx/logs/ – lokasi log file default.
◾Nginx HTTP port standar : TCP 80
◾Nginx HTTPS port standar : TCP 443

Teman-teman juga bisa memastikan lokasi server direktori dan main filenya dengan perintah : /usr/local/nginx/sbin/nginx -t


Perlu di perhatikan bahwa setia server maupun os mungkin mempunyai settingan peraturan yang berbeda.

# 1: Aktifkan SELinux
Security-Enhanced Linux (SELinux) adalah fitur kernel Linux yang menyediakan mekanisme untuk mendukung kebijakan keamanan kontrol akses yang memberikan perlindungan besar. Hal ini dapat menghentikan banyak serangan sebelum sistem Anda kronis.

getsebool -a | less
getsebool -a | grep off
getsebool -a
| grep on
Untuk mengamankan mesin, lihat dulu pengaturan yang ditetapkan dari 'on' dan ubah ke 'off' jika itu tidak berlaku untuk setup Anda dengan bantuan perintah setsebool. Set SE Linux boolean yang benar untuk mempertahankan fungsi dan perlindungannya. Harap dicatat bahwa SELinux menambahkan 2-8% overhead untuk khas RHEL atau CentOS instalasi.


# 2: Hapus Semua Nginx Modul yang tak diinginkan
Anda perlu meminimalkan jumlah modul yang terhimpun langsung ke binari nginx. Ini dapat meminimalkan risiko dengan membatasi kemampuan yang diijinkan oleh webserver. Anda dapat mengkonfigurasi dan menginstal nginx hanya dengan menggunakan modul yang diperlukan. Misalnya, menonaktifkan SSI dan modul autoindex Anda dapat mengetikan :
 # ./configure --without-http_autoindex_module --without-http_ssi_module
 # make
 # make install

Ketik perintah berikut untuk melihat mana modul yang dapat diaktifkan atau dinonaktifkan sementara dalam kompilasi Server nginx :
 # ./configure --help | less


# 3: Batas Metode yang Tersedia
GET dan POST adalah metode yang paling umum di temukan di Internet. metode web server didefinisikan dalam RFC 2616. Jika web server tidak memerlukan pelaksanaan semua metode yang tersedia, maka itu harus dinonaktifkan. Berikut ini adalah cara dalam menyaring dan hanya memungkinkan GET, HEAD dan POST metode :

## Only allow these request methods ##
     if ($request_method !~ ^(GET|HEAD|POST)$ ) {
         return 444;
     }
## Do not accept DELETE, SEARCH and other methods ##

# 4: Bagaimana cara Menolak Agen Pengguna tertentu ?
Anda dapat dengan mudah memblokir agen pengguna seperti scanner, bots, dan spammer yang mungkin dapat menyalahgunakan server Anda.

## Block download agents ##
     if ($http_user_agent ~* LWP::Simple|BBBike|wget) {
            return 403;
     }
##

# 5: Bagaimana Saya Menghentikan Gambar Hotlinking?
Gambar atau hotlinking HTML berarti seseorang membuat link ke situs Anda atau ke salah satu gambar Anda, dan langsung menampilkannya di situs mereka sendiri. Hasil akhirnya Anda akan berakhir untuk membayar tagihan bandwidth dan konten yang digunakan oleh orang lain karena gambar atau konten tersebut dihosting disitus anda. Hal ini biasanya dilakukan di forum dan blog. Saya sangat menyarankan Anda memblokir dimage hotlinking di server Anda sendiri dengan cara.

# Stop deep linking or hot linking
location /images/ {
  valid_referers none blocked www.example.com example.com;
   if ($invalid_referer) {
     return   403;
   }
}

Tidak ada komentar :

Posting Komentar

Leave A Comment...

© Cara Menghilangkan m=1 di URL Blogger Terbaru | Ulasanesia Artikel ini telah terbit di ulasanesia, cantumkan URL di bawah ini agar terhindar dari pelanggaran hak cipta https://www.ulasanesia.com/2024/01/cara-menghilangkan-m1-di-url-blogger.html