Bagi kalian yang ingin membuat proxy server Private di Ubuntu 20.04 mengunakan squid tapi masih bingung bagaimana caranya, pada artikel ini update.or.id akan memberikan tutorialnya secara lengkap dan mudah.
Namun sebelum kita mulai membuatnya, kami akan membahas sedikit seputar proxy itu sendiri.
Apa Itu Proxy?
Proxy merupakan sebuah sebuah sistem yang menjembatani koneksi antara pengguna dan internet dengan tujuan utama menyembunyikan identitas asli dari pengguna. Data ini sendiri berupa alamat IP, provider yang digunakan hingga lokasi dari pengguna.
Sehingga, ketika kalian menggunakan proxy maka data yang dikirimkan ke website yang kalian kunjungi adalah informasi dari proxy server yang kalian gunakan.
Proxy sendiri terdapat berbagai macam tipe mulai dari yang gratis bisa kalian gunakan tanpa harus mengeluarkan biaya sedikitpun, berbayar dimana kalian diharuskan berlangganan atau membeli akses untuk dapat menggunakan proxy tersebut dan private proxy dimana hanya kalian saja yang dapat menggunakannya.
Untuk private proxy ini sendiri kita harus membuatnya sendiri menggunakan Virtual Private Server atau yang biasa kita sebut VPS.
Sesuai dengan judul yang kami berikan dimana pada artikel ini kami akan memberikan tutorial membuat proxy server private, maka silahkan kalian ikuti langkahnya dibawah ini.
Syarat Membuat Proxy Server
- Sudah memiliki VPS ( bisa menggunakan vps lokal, luar negeri seperti Digital Ocean, Vultr, Azure, Google Cloud atau lainnya )
- Melakukan instalasi Proxy
- Melakukan setting pada browser yang kalian gunakan.
Tutorial Membuat Proxy Server Private Menggunakan Ubuntu 20.04 Squid
1. Login Ke VPS Menggunakan SSH

Langkah pertama adalah login ke VPS yang kalian miliki melalui SSH. untuk dapat mengakses VPS melalui SSH kalian perlu sebuah software SSH, salah satunya adalah Putty. Jika belum memilikinya silahkan kalian unduh terlebih dahulu. Setelah itu silahkan install dan buka programnya kemudian masukkan alamat IP Server yang kalian miliki pada kolom hostname (or IP Address) dan port 22 seperti gambar diatas kemudian klik tombol OPEN.
Setelah itu kalian akan diminta untuk memasukkan username dan password dimana username dan password ini biasanya dibuat ketika kalian menginstall vps ataupun pada layanan hosting yang kalian gunakan.
2. Mengubah Akses ke Super User
Setelah berhasil login maka langkah selanjutnya adalah mengubah akses ke Super User dengan mengetikkan perintah dibawah ini. Namun sebelumnya pastikan kalian mengubah terlebih dahulu password defaultnya.
sudo passwd
Selanjutnya silahkan kalian masukkan password yang kalian inginkan sebanyak 2x seperti gambar dibawah ini.
Setelah mengubah password silahkan login ke super user dengan menjalankan perintah dibawah ini.
su
kemudian masukkan password kalian. Untuk tampilannya seperti dibawah ini.
3. Update, Upgrade dan install squid + nano editor
Langkah ketiga adalah melakukan update, upgrade dan install squid untuk proxy server private lengkap dengan nano editor dengan mengetikkan perintah dibawah ini.
apt -y update && apt -y upgrade && apt -y install nano && apt -y install squid && apt install -y apache2-utils
Kemudian tunggu hingga proses selesai.
Untuk diketahui, proses ini memerlukan waktu tergantung dari spesifikasi server dan layanan hosting yang kalian gunakan.
4. Hapus File Squid.conf
Selanjutnya adalah menghapus file squid.conf bawaan dengan menjalankan perintah dibawah ini.
rm /etc/squid/squid.conf

5. Membuat file Squid.conf
Selanjutnya adalah membuat file squid.conf yang baru dengan menjalankan perintah dibawah ini.
touch /etc/squid/squid.conf

6. Buka File Squid.conf
Langkah keenam adalah membuka file squid.conf dengan menjalakan perintah dibawah ini.
nano /etc/squid/squid.conf
Maka tampilannya akan seperti gambar dibawah ini.
7. Paste File Squid.conf
Langkah ketujuh adalah copy dan pastekan file dibawah ini ke file squid.conf. ( untuk paste kalian cukup klik kanan mouse setelah kalian copy file dibawah )
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
acl localnet src 0.0.0.1-0.255.255.255 # RFC 1122 "this" network (LAN)
acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
acl localnet src 100.64.0.0/10 # RFC 6598 shared address space (CGN)
acl localnet src 169.254.0.0/16 # RFC 3927 link-local (directly plugged) machines
acl localnet src 172.16.0.0/12 # RFC 1918 local private network (LAN)
acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
include /etc/squid/conf.d/*
http_access allow localhost
# allow all requests
acl all src 0.0.0.0/0
http_access allow all
# And finally deny all other access to this proxy
http_access deny all
http_port 3128
#acl ip1 myip 155.138.211.40
#acl ip2 myip 155.138.204.186
#acl ip3 myip 155.138.235.182
#tcp_outgoing_address 155.138.211.40 ip1
#tcp_outgoing_address 155.138.204.186 ip2
#tcp_outgoing_address 155.138.235.182 ip3
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern \/(Packages|Sources)(|\.bz2|\.gz|\.xz)$ 0 0% 0 refresh-ims
refresh_pattern \/Release(|\.gpg)$ 0 0% 0 refresh-ims
refresh_pattern \/InRelease$ 0 0% 0 refresh-ims
refresh_pattern \/(Translation-.*)(|\.bz2|\.gz|\.xz)$ 0 0% 0 refresh-ims
# example pattern for deb packages
#refresh_pattern (\.deb|\.udeb)$ 129600 100% 129600
refresh_pattern . 0 20% 4320

8. Simpan dan Keluar
Setelah berhasil paste file terbaru maka langkah selanjutnya adalah simpan dan keluar dari file editor tersebut dengan langkah:
- tekan tombol Cltr + X ( enter )
- ketik Y
- klik enter
dan kalian akan keluar dari file tersebut.
9. Restart Squid
Selanjutnya adalah restart squid dengan mengetikkan perintah dibawah ini.
systemctl reload squid.service && touch /etc/squid/passwd && chown proxy: /etc/squid/passwd
10. membuat Username dan Password
Silahkan buat username dan password menggunakan perintah dibawah ini
htpasswd /etc/squid/passwd username
Ubah username menjadi username kalian kemudian tekan enter dan masukkan password kalian.
11. Setting dan Coba Proxy Kalian
Selanjutnya adalah melakukan setting proxy pada browser dan ujicoba proxy kalian.
Untuk Browser FireFox
- Klik Garis tiga di pojok kanan
- Pilih Setting atau pengaturan
- Scroll kebawah hingga menemukan Network Setting
- Klik Setting
- Pilih Manual Proxy Configuration
- Masukkan IP di kolom HTTP PROXY
- Masukkan port 3128
- Ceklist gunakan dengan https
- Klik OK

Untuk Browser Chrome
- Buka Titik 3 dipojok kanan
- Pilih Setting atau pengaturan
- Pilih Sistem
- Pilih Buka setelan Proxy Komputer anda
- Masukkan ip server
Setelah itu kalian bisa coba membuka website, kalain akan diminta untuk memasukkan username dan password.
Setelah itu kalian bisa cek mengunakan cek ip address seperti ipsaya.com atau lainnya untuk melihat informasi kalian.
Itulah tadi tutorial yang bisa kami berikan. semoga membantu kalian. terima kasih.
Proxy Tanpa Password
Bagi kalian yang tidak ingin menggunakan password silahkan ikuti panduan artikel kami berikut ini Membuat Proxy Server Tanpa Password di Ubuntu 20.04 Menggunakan Squid