Apache: Batasi akses ke IP sumber tertentu di dalam host virtual

Saya memiliki beberapa host virtual bernama pada server apache yang sama, untuk salah satu host virtual saya perlu memastikan hanya sekumpulan alamat IP tertentu yang diizinkan untuk mengakses.

Tolong sarankan cara terbaik untuk melakukan ini. Saya telah melihat modul mod_authz_hosts tetapi sepertinya saya tidak dapat melakukannya di dalam virtual host.

Larutan

Arahan mod_authz_host harus berada di dalam blok & atau `, tetapi saya telah menggunakan blok yang pertama di dalam blok&` seperti yang dilakukan pada Apache 2.2:



    Order deny,allow
    Deny from all
    Allow from 127.0.0.1


    ...

Referensi: https://askubuntu.com/questions/262981/how-to-install-mod-authz-host-in-apache

Komentar (0)

Untuk Apache 2.4, Anda akan menggunakan Require IP directive. Jadi, untuk hanya mengizinkan mesin dari jaringan 192.168.0.0/24 (rentang 192.168.0.0 - 192.168.0.255)



      Require ip 192.168.0.0/24

    ...

Dan jika Anda hanya ingin mesin localhost memiliki akses, maka ada Require local directive khusus.

Penyedia lokal mengizinkan akses ke server jika salah satu dari kondisi berikut ini benar:

  • alamat klien cocok dengan 127.0.0.0/8
  • alamat klien adalah ::1
  • alamat klien dan server dari koneksi adalah sama

Ini memungkinkan cara yang mudah untuk mencocokkan koneksi yang berasal dari host lokal:



      Require local

    ...
Komentar (4)

Jika Anda menggunakan apache 2.2 di dalam host virtual Anda, Anda harus menambahkan arahan berikut (mod_authz_host):

Order deny,allow
Deny from all
Allow from 10.0.0.1

Anda bahkan dapat menentukan subnet

Allow from 10.0.0

Apache 2.4 sepertinya sedikit berbeda dengan konfigurasi. Mungkin lebih baik Anda menentukan versi apache mana yang Anda gunakan.

Komentar (4)