Menambahkan autentikasi Basic ke proxy Squid 6.13
Atur helper NCSA Squid 6.13, gabungkan IP klien yang diizinkan dengan login valid, dan pahami perlindungan autentikasi Basic.
Prosedur ini menambahkan autentikasi Basic berbasis NCSA ke proxy Squid 6.13 yang dibatasi menurut sumber. Helper Debian 13 adalah /usr/lib/squid/basic_ncsa_auth; pastikan jalur dan akun layanan paket Anda.
Buat akun pertama
Gunakan utilitas htpasswd distribusi dan masukkan kata sandi secara interaktif:
sudo htpasswd -c /etc/squid/users proxyuser
sudo chown root:proxy /etc/squid/users
sudo chmod 640 /etc/squid/usersKepemilikan mengasumsikan grup layanan Debian. Squid perlu membaca berkas, pengguna lain tidak boleh. Untuk akun selanjutnya, hilangkan -c yang membuat berkas baru dan dapat mengganti entri lama.
Wajibkan sumber dan login dalam aturan izin yang sama
Letakkan ini setelah perlindungan port tujuan, administrasi, localhost, dan alamat link-local yang ada:
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/users
auth_param basic realm PrivateProxy
acl proxy_client src 198.51.100.27/32
acl logged_in proxy_auth REQUIRED
http_access allow proxy_client logged_in
http_access deny allGanti alamat klien dengan sumber yang dilihat Squid. Kedua kondisi harus cocok. Hapus izin klien luas sebelumnya yang akan melewati aturan login, sambil mempertahankan pembatasan listener dan firewall.
Parse, muat ulang, lalu bandingkan dua permintaan
sudo squid -k parse -f /etc/squid/squid.confPerbaiki kesalahan parser dan muat ulang layanan Squid yang dikelola sebelum menguji. Dari sumber yang diizinkan, permintaan tanpa kredensial seharusnya mendapat tantangan autentikasi. Bandingkan dengan permintaan berizin memakai hostname proxy yang sebenarnya:
curl --proxy http://proxy.example:3128 --proxy-basic --proxy-user proxyuser --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/Hanya memberi nama pengguna membuat curl meminta kata sandi. Permintaan valid seharusnya mencapai tujuan.
Autentikasi Basic tidak mengenkripsi pertukaran klien-proxy. HTTPS tujuan yang terjadi kemudian tidak melindungi kredensial yang sudah dikirim ke proxy teks terbuka; gunakan jalur yang terlindungi dengan tepat. Direktif ini untuk Squid 6.13; lihat konfigurasi khusus versi untuk Squid 8.