Blokir akses IP pada Apache

Dapat pertanyaan tambahan soal pembahasan saya sebelumnya dimana pada Nginx website yang dihosting didalamnya bisa dibuka apabila lewat alamat IP. Bedanya sekarang web servernya berubah menjadi Apache. Kalau anda tidak ingin situs default didalamnya bisa diakses lewat alamat IP servernya maka solusinya mudah, blokir saja. 😀

Karena saya tidak diberitahu ini pakai Apache versi berapa jadi saya buatkan solusinya untuk versi 2.2 dan 2.4 yang ada perbedaan sedikitdalam penulisan konfigurasinya. Semua asumsinya pakai port HTTP ya, kalau HTTPS tinggal edit sendiri.

Apache 2.2

Listen 80
NameVirtualHost 192.168.1.73:80
<Directory "/var/www/nama_domain.com/public_html">
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost 192.168.1.73:80>
    ServerName 192.168.1.73
    DocumentRoot /var/www/nama_domain.com/public_html
    <Location />
        Order deny,allow
        Deny from all
    </Location>
</VirtualHost>

<VirtualHost 192.168.1.73:80>
    ServerName nama_domain.com
    DocumentRoot /var/www/nama_domain.com/public_html
</VirtualHost>

Apache 2.4

<VirtualHost *:80>
    ServerName default
    DocumentRoot /var/www/nama_domain.com/public_html
    <Location />
        Require all denied
    </Location>
</VirtualHost>

<VirtualHost *:80>
    ServerName nama_domain.com
    DocumentRoot /var/www/nama_domain.com/public_html
</VirtualHost>

Yang pasti sesuaikan alamat IP dalam setelan diatas dengan yang anda pakai, juga nama domain, dan lokasi direktori hostingnya. Kalau dicopas begitu saja saya jamin bermasalah. Ambil seperlunya dan adaptasikan.

Setelah itu restart proses Apache dan coba buka alamat IP VPS anda langsung, mestinya akan gagal.

Tinggalkan komentar