Troubleshoot web server yang “lelah” karena melayani request

halo gaesss. catatan kali ini tentang Troubleshoot web server yang “lelah” karena melayani request.

jadi ceritanya pagi-pagi seorang client berkabar kepada saya melalui pesan singkat WA, mengabarkan kalau doi gak bisa akses aplikasi.

Screenshot_830

oke, saya cek emang bener aplikasinya tidak dapat diakses. lantas saya mulai remote servernya. pertama-tama, yang saya lihat adalah service default untuk menjalankan aplikasi ini, yaitu web server, dan database server.

Screenshot_834

dari hasil pengecekan, service masih berjalan. berarti dari sisi service aman. tahap berikutnya, saya melihat log dari service web server.

brute force attack

brute force attack

Dari error terbaca bahwa terdapat request file dalam jumlah besar dalam waktu bersamaan, terdapat limitasi dari konfigurasi default security server untuk membatasinya agar load CPU dan RAM tidak melonjak.

hmmm, sampai disini, saya curiga server ini sedang di attack, kalau memang manusia yang request, pasti tidak mungkin sebanyak ini. ini pasti robot ( script ). tahap berikutnya, saya cek firewall.

melakukan pengecekan trafik pada firewall untuk melihat request yang masuk ke server

brute force attack 2

brute force attack 2

Benar terdapat request dalam jumlah besar yang koneksinya di reset oleh server.

kemudian melakukan pengecekan threat pada firewall untuk melihat paket yang masuk ke server.

Screenshot_831

Server sedang diserang dengan metode Dictionary Attack pada port 80.

Dikarenakan kebutuhan mendesak, agak layanan kembali hidup dan server memiliki spesifikasi fisik CPU 16 core dan RAM 32 GB, saya memutuskan untuk meng-allow trafik pada server. Dengan spesifikasi diatas, server diperkirakan mampu menahan script scanner.

spek server

spek server

cara Troubleshootingnya adalah Melakukan edit pada file /etc/security/limits.conf

kemudian menambahkan pada baris akhir file tsb dengan :

ulimit -n 16384

setelah itu melakukan restart pada web server.

layanan kembali dapat digunakan.

Bagikan saja, itu tidak berat

membuka alamat website, file malah terdownload – nginx

permasalahan umum saat pertama kali belajar web server nginx adalah membuka alamat website, file malah terdownload.

saya tidak akan tuliskan bagaimana cara menginstall web server nginx, karena sudah banyak tutorialnya, paling nanti saya cerita tentang bagaimana tunning dan securing web server nginx.

pada tulisan ini adalah fokus pada error saat pertama install nginx, ya, seperti yang saya alami. padahal install nginxnya sudah sesuai, php nya juga udah sesuai.

seperti ini tampilannya

seperti ini tampilannya

setelah saya cari tau sana sini, googling maupun tanya ke temen, akhirnya saya menemukan solusinya. untuk itu saya putuskan untuk menulis di blog ini, karena beberapa kali saya lupa saat setelah saya install web server nginx.

jadi, sebenarnya nginx tidak mengenali file PHP yang di minta oleh client itu mau di apain, jadi dia menyajikan secara default yaitu di download, masalah ini bisa diatasi dengan modifikasi di file .htaccess

 

location ~ \.php$ { try_files $uri =404;

fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

include snippets/fastcgi-php.conf;

}

 

selain menambahkan di .htaccess , script tsb juga bisa ditambahkan pada konfigurasi file server blok, biasanya terletak di /etc/nginx/conf.d , atau /etc/nginx/site-enable/

 

kemudian, pastikan pada script server bloknya sudah ditambahkan

index index.php index.html index.htm;

kemudian melakukan perubahan pada file php.ini di folder php-fpm,

cgi.fix_pathinfo = 0

setelah itu jangan lupa untuk merestart service nginx dan php-fpm nya

systemctl restart nginx
systemctl restart php-fpm

sekian cerita ini,dan terima gaji.

Bagikan saja, itu tidak berat