GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Instal Squid Proxy Server di Ubuntu 20.04

Squid adalah aplikasi proxy berbasis Linux berfitur lengkap yang sebagian besar digunakan untuk memfilter lalu lintas, keamanan, dan pencarian DNS. Ini juga digunakan untuk meningkatkan kinerja server web dengan menyimpan sumber daya. Secara sederhana, server Squid adalah komputer yang bertindak sebagai perantara antara komputer desktop dan internet yang mengarahkan permintaan klien yang masuk ke server tempat data disimpan untuk pengambilan yang lebih mudah. Ini mendukung beberapa protokol termasuk, HTTP, FTP, TLS, SSL, Internet Gopher dan HTTPS.

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengatur server proxy Squid di server Ubuntu 20.04.

Prasyarat

  • Server yang menjalankan Ubuntu 20.04.
  • Sandi root dikonfigurasi untuk server.

Memulai

Sebelum memulai, Anda perlu memperbarui paket sistem Anda ke versi terbaru. Anda dapat memperbaruinya dengan perintah berikut:

apt-get update -y

Setelah semua paket diperbarui, mulai ulang sistem Anda untuk menerapkan perubahan.

Instal Proxy Squid

Secara default, paket Squid tersedia di repositori default Ubuntu 20.04. Anda dapat menginstalnya menggunakan perintah berikut:

apt-get install squid -y

Setelah Squid diinstal, Anda dapat memeriksa status layanan Squid dengan perintah berikut:

systemctl status squid

Anda akan mendapatkan output berikut:

? squid.service - Squid Web Proxy Server
     Loaded: loaded (/lib/systemd/system/squid.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-08-23 12:00:24 UTC; 11s ago
       Docs: man:squid(8)
    Process: 49265 ExecStartPre=/usr/sbin/squid --foreground -z (code=exited, status=0/SUCCESS)
    Process: 49282 ExecStart=/usr/sbin/squid -sYC (code=exited, status=0/SUCCESS)
   Main PID: 49283 (squid)
      Tasks: 4 (limit: 2353)
     Memory: 16.4M
     CGroup: /system.slice/squid.service
             ??49283 /usr/sbin/squid -sYC
             ??49285 (squid-1) --kid squid-1 -sYC
             ??49287 (logfile-daemon) /var/log/squid/access.log
             ??49288 (pinger)

Aug 23 12:00:24 ubuntu2004 squid[49285]: Max Swap size: 0 KB
Aug 23 12:00:24 ubuntu2004 squid[49285]: Using Least Load store dir selection
Aug 23 12:00:24 ubuntu2004 squid[49285]: Set Current Directory to /var/spool/squid
Aug 23 12:00:24 ubuntu2004 squid[49285]: Finished loading MIME types and icons.
Aug 23 12:00:24 ubuntu2004 squid[49285]: HTCP Disabled.
Aug 23 12:00:24 ubuntu2004 squid[49285]: Pinger socket opened on FD 14
Aug 23 12:00:24 ubuntu2004 squid[49285]: Squid plugin modules loaded: 0
Aug 23 12:00:24 ubuntu2004 squid[49285]: Adaptation support is off.
Aug 23 12:00:24 ubuntu2004 squid[49285]: Accepting HTTP Socket connections at local=[::]:3128 remote=[::] FD 12 flags=9
Aug 23 12:00:25 ubuntu2004 squid[49285]: storeLateRelease: released 0 objects

Secara default, Squid mendengarkan pada port 3128. Anda dapat memeriksanya dengan perintah berikut:

netstat -plunt | grep 3128

Anda akan melihat output berikut:

tcp6       0      0 :::3128                 :::*                    LISTEN      50017/(squid-1)

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Menyiapkan Otentikasi Berbasis IP

Ada beberapa cara Anda dapat membatasi klien untuk mengakses internet. Di bagian ini, kami akan menyiapkan Squid untuk diautentikasi berdasarkan alamat IP Klien.

Anda dapat melakukannya dengan mengedit file konfigurasi default Squid:

nano /etc/squid/squid.conf

Tambahkan baris berikut di awal file:

acl client1 src 192.168.10.10
acl client2 src 192.168.10.11
http_access allow client1 client2

Simpan dan tutup file setelah Anda selesai. Kemudian restart layanan Squid untuk menerapkan perubahan:

systemctl restart squid

Di mana:

  • klien1 dan klien2 adalah nama yang mengidentifikasi komputer klien.
  • 192.168.10.10 dan 192.168.10.11 adalah alamat IP komputer klien.

Sekarang, hanya komputer yang dikonfigurasi dengan IP 192.168.10.10 dan 192.168.10.11 yang dapat mengakses internet.

Menyiapkan Otentikasi Berbasis Pengguna

Anda juga dapat mengatur Squid untuk mengautentikasi berdasarkan pengguna dan kata sandi. Untuk melakukannya, Anda perlu menginstal paket utils Apache di sistem Anda.

Jalankan perintah berikut untuk menginstal paket utilitas Apache:

apt install apache2-utils -y

Setelah terinstal, buat pengguna pertama dengan perintah berikut:

htpasswd /etc/squid/passwd client1

Anda akan diminta untuk mengatur kata sandi seperti yang ditunjukkan di bawah ini:

New password: 
Re-type new password: 
Adding password for user client1

Selanjutnya, buat pengguna kedua dengan perintah berikut:

htpasswd /etc/squid/passwd client2

Atur kata sandi Anda seperti yang ditunjukkan di bawah ini:

New password: 
Re-type new password: 
Adding password for user client2

Selanjutnya, Anda dapat memverifikasi kedua pengguna menggunakan perintah berikut:

cat /etc/squid/passwd

Anda akan mendapatkan output berikut:

client1:$apr1$CPlx8eVt$NJq3CT/hzfDCnAZRypIq5/
client2:$apr1$XYxQ2npc$IW0Nqjp15O5WYCo/wCFlB0

Selanjutnya, buka file konfigurasi default Squid:

nano /etc/squid/squid.conf

Hapus tiga baris pertama yang telah Anda tambahkan di bagian sebelumnya dan tambahkan baris berikut di awal file:

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

Simpan dan tutup file. Kemudian, restart layanan proxy Squid untuk menerapkan perubahan:

systemctl restart squid

Sekarang, Anda perlu memberikan nama pengguna dan kata sandi untuk mengakses internet.

Menyiapkan Otentikasi Gabungan

Anda juga dapat mengatur Squid untuk mengotentikasi klien berdasarkan alamat IP dan nama pengguna / kata sandi.

Buka file konfigurasi default Squid:

nano /etc/squid/squid.conf

Temukan baris berikut yang telah Anda tambahkan di bagian sebelumnya:

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

Dan, ganti dengan baris berikut:

acl client1 src 192.168.10.10
acl client2 src 192.168.10.11
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow client1 client2 ncsa_users

Simpan dan tutup file ketika Anda selesai kemudian restart layanan Squid untuk menerapkan perubahan:

systemctl restart squid

Menyiapkan Squid untuk Menganonimkan Lalu Lintas

Selanjutnya, Anda perlu menambahkan beberapa aturan untuk menutupi alamat IP klien dari server yang menerima lalu lintas dari proxy HTTP Squid Anda.

Anda dapat melakukannya dengan mengedit file konfigurasi default Squid:

nano /etc/squid/squid.conf

Tambahkan baris berikut di awal file:

forwarded_for off
request_header_access Allow allow all
request_header_access Authorization allow all
request_header_access WWW-Authenticate allow all
request_header_access Proxy-Authorization allow all
request_header_access Proxy-Authenticate allow all
request_header_access Cache-Control allow all
request_header_access Content-Encoding allow all
request_header_access Content-Length allow all
request_header_access Content-Type allow all
request_header_access Date allow all
request_header_access Expires allow all
request_header_access Host allow all
request_header_access If-Modified-Since allow all
request_header_access Last-Modified allow all
request_header_access Location allow all
request_header_access Pragma allow all
request_header_access Accept allow all
request_header_access Accept-Charset allow all
request_header_access Accept-Encoding allow all
request_header_access Accept-Language allow all
request_header_access Content-Language allow all
request_header_access Mime-Version allow all
request_header_access Retry-After allow all
request_header_access Title allow all
request_header_access Connection allow all
request_header_access Proxy-Connection allow all
request_header_access User-Agent allow all
request_header_access Cookie allow all
request_header_access All deny all

Simpan dan tutup file ketika Anda selesai kemudian restart layanan Squid untuk menerapkan perubahan:

systemctl restart squid

Verifikasi Proksi Squid

Selanjutnya, Anda perlu menentukan server Proxy di browser web Mozilla Anda.

Buka sistem klien, buka browser web Mozilla, dan klik tombol Edit => Preferensi seperti yang ditunjukkan di bawah ini:

Klik Jaringan Setelan dan klik Setelan . Anda akan melihat halaman berikut:

Pilih Manual proksi konfigurasi tombol radio, masukkan alamat IP server Squid Anda di bidang Host HTTP dan 3128 di bidang Port dan pilih kotak centang Gunakan server proxy ini untuk semua protokol dan klik OK untuk menyimpan pengaturan.

Sekarang, browser Anda dikonfigurasi untuk menjelajahi Internet melalui proxy Squid.

Untuk memverifikasinya, ketikkan URL https://www.whatismyip.com/. Anda akan diminta untuk memberikan nama pengguna dan kata sandi seperti yang ditunjukkan di bawah ini:

Berikan nama pengguna dan kata sandi server proxy Squid Anda yang telah Anda buat sebelumnya dan klik tombol OK tombol. Anda akan melihat halaman berikut:

Pada halaman di atas, Anda akan melihat alamat IP server Squid Anda, bukan alamat IP komputer klien Anda.

Kesimpulan

Selamat! Anda telah berhasil menginstal dan mengkonfigurasi server proxy Squid di server Ubuntu 20.04. Anda juga dapat mengkonfigurasi proxy Squid untuk membatasi situs web tertentu berdasarkan kata, domain, dan IP. Untuk informasi lebih lanjut, kunjungi dokumentasi resmi Squid.


Ubuntu
  1. Cara Instal Zimbra 8.6 di Server Ubuntu 14.04

  2. Cara menginstal dan mengkonfigurasi Proxy Squid di Ubuntu 20.04

  3. Cara Instal Squid Proxy Server di Ubuntu 18.04 LTS

  1. Cara Instal Squid Proxy Server di CentOS 7

  2. Cara Mengatur &Menginstal Server Proxy Squid di Ubuntu 18.04

  3. Instal server proxy Squid di Ubuntu 14.04

  1. Cara Menginstal MySQL di Ubuntu 18.04

  2. Cara Memasang Server Minecraft di Ubuntu 18.04

  3. Cara Menginstal Nginx di Ubuntu 20.04