Biar si Apache tetap aman
November 6 | Posted by Muhammad Yusuf E. | Linux Software Tags: Apache, Security, webserverApabila anda seorang yang sering berhubungan dengan server, maka kata Apache adalah yang mungkin tidak asing di telinga anda. Apakah Apache ? Apache adalah salah satu web server yang paling banyak dipakai orang diseluruh dunia sebagai webserver. Seperti halnya dengan website warnaislam.com ini, berjalan dengan web server Apache.
Selain Apache ada webserver lainnya seperti IIS milik Microsoft, Web Server milik Sun, atau http light dsb.
Menurut statistik data yang dikeluarkan oleh netcraft, Apache menguasai 70 % dari webserver yang di pakai di seluruh dunia saat ini.
Sifat Apache yang dapat berjalan di atas berbagai tipe OS, terutama berbasis Unix atau Linux, membuat orang banyak memakainya. Dan yang jelas, gratis ….tis.
Apache dikembangkan oleh Apache Software Foundation, yang mengembangkan juga berbagai macam software seperti Tomcat(Mesin Java) atau SpamAssassin(anti spam).
Banyak sekali kemampuan dan kekhasan yang dimiliki oleh Apache ini. Termasuk seting yang sangat mudah yang dapat kita lakukan. Dalam kesempatan ini penulis akan memaparkan sedikit tentang bagaimana agar si Apache ini tetap aman sebagai web server dari serangan luar di dunia internet.Tidak sedikit web server kebobolan karena tidak pandainya seseorang menutupi sisi keamanan yang ada di Apache ini.
Ada hal-hal yang harus diperhatikan ketika kita menjalankan Apache sebagai web server agar tetap aman.
Tutup informasi Apache atau modulenya
Ketika pihak Apache Software Foundation mengeluarkan peringatan yang berkenaan dengan bug atau security hole, maka para intruder atau pihak ketiga akan mencari celah untuk mengetahui versi Apache yang sedang dipakai. Demikian juga module yang dipakai oleh Apache itu sendiri. Misalnya versi dari Perl atau PHP yang sedang dijalankan. Dari mana mereka tahu informasi Apache ini ? dapat dengan mudah dengan perintah telnet. Misalnya adalah Apache yang sedang dipakai oleh http://infokomtek.com, situs milik penulis ini.
[root@ns3 js]# telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
HEAD /index.html HTTP/1.1
HTTP/1.1 400 Bad Request
Date: Fri, 07 Nov 2008 01:03:26 GMT
Server: Apache/2.2.0 (Fedora)
Connection: close
Content-Type: text/html; charset=iso-8859-1
Di atas ada ketahuan OS yang dipakai sekarang bukan ? Apache versinya 2.2.0 dan OS yang dipakai adalah Fedora.
Tentunya informasi yang tidak perlu semacam ini tidak perlu kita berikan kepada orang lain. Nah bagaimana untuk menutupinya ?
Di dalam Apache, semua setting web server dilakukan hampir sebagian besar di file httpd.conf. Tergantung dengan OS yang anda pakai, biaisanya tersimpan di file /etc/httpd/conf/httpd.conf.
Ada setting option seperti di bawah ini.
ServerTokens ProductOnly
ServerSignature Off
Setelah anda merubah setting di atas, jangan lupa untuk merestart proses Apache anda.
Jangan tampilkan isi direktori
Di dalam setting httpd.conf ada option untuk menampilkan isi direktori kalau seandainya tidak ada index file seperti index.html, index.php atau index.cgi dsb.
Misalnya adalah seperti gambar di bawah ini,
Kalau isi direktori anda terlihat dari luar, maka otomatis akan terlihat isi direktori. Kalau isi direktori anda adalah file-file yang berupa data-data rahasia, maka pihak ketiga akan mengambil data itu. Nah bagaimana caranya seandainya index filenya tidak ada, akan tetapi isi direktori agar tidak terlihat oleh orang lain ?
Caranya ubah Options di DocumentRoot anda dengan menambahkan –Indexes di depan Options. Misalnya seperti di bawah ini,
Options –Indexes
Matikan option UserDir
Kalau di server anda ada user untuk login, biasanya user itu akan mempunyai URL yang dapat diakses seperti berikut ini.
Misalnya adalah user manis atau root
http://warnaislam.com/~manis atau
http://warnaislam.com/~root
Nah bagaimana agar mereka tidak memiliki URL seperti itu ? Kembali ke httpd.conf file lagi, matikan fungsi ini dengan merubah option UserDir sebagai berikut ini.
UserDir disabled
Jangan lupa restart proses Apache anda setiap melakukan perubahan httpd.conf.
Matikan fungsi TraceEnable
Apabila anda di website anda ada kontent yang ketika mengaksesnya perlu ID dan password(Basic Authentication) maka anda perlu mematikan TraceEnable. Apabila TraceEnable anda On, maka pihak ketika akan dapat menembus halaman anda dengan sistem XST(ross-Site Tracing). Tambahkan option berikut ini di httpd.conf anda, dan restart proses Apache anda.
TraceEnable Off
Masih banyak yang diperlukan untuk menjadikan Apache anda aman bagi diri anda atau orang lain. Insya Allah lain waktu kita sambung kembali.
Tulisan ini ditampilkan juga di website warnaislam.com
http://warnaislam.com/rubrik/teknologi/2008/11/7/41100/Biar_si_Apache_tetap_aman.htm



