virtutorials.blogspot.com is a blog that contains guides and tutorials about network systems and infrastructure for students written in Indonesian

Monday, September 13, 2021

Mengonfigurasi Proxy Server dengan Squid

Sebelumnya, telah dijelaskan bahwa salah satu cache server yang saat ini dapat Anda pertimbangkan menjadi mesin cache adalah aplikasi Squid yang dapat diunduh pada halaman pengembang http://www squid-cache.org, Sebagai salah satu jenis apltasi yang cukup populer saat ini, selain sebagai fitur utama menjadi caching server, Squid juga menjadi aplikasi proxy server yang andal menangani beberapa jenis layanan, seperti filterisasi limit bandwidth, blocking, dan firewall.

 

Pada subbab ini, Anda akan melakukan praktik membangun proxy server menggunakan Debian 9.4, Namun, sebelum melangkah ke materi tersebut, Anda harus memahami terlebih dahulu beberapa hal sebagai berikut.

 

1. Cara Instalasi

Untuk melakukan instalasi aplikasi Squid, Anda dapat menggunakan metode instalasi dari DVD atau dari repository Namun, sebaiknya Anda tetap harus melakukan update repository terlebih dahulu.

 

foot@Server:~# apt-get update

foot@Server:~# apt-get install squid

 

2. Direktori Kerja Squid

 

Direktori kerja Squid berada pada:

a. fet/squid/

Direktori ini memiliki dua file konfigurasi, yaitu errorpage.css dan squid.conf.

b. /ust/share/squid/errors/English/

Dalam direktori ini, Anda dapat memodifikasi konten tampilan pesan akses error ketika sebuah situs sedang dlibloki. Sebagai contoh, file yang dapat Anda edit adalah ERR_ACCESS_DENIED.

c. /var/log/squid/

 

Ada tiga buah file yang dapat Anda monitor dalam direktori ini, yaitu sebagai berikut.

 

1) access.log

Berisi log web yang sedang atau telah diakses oleh klien lengkap dengan statusnya, akan diblokir atau diteruskan.

 

2) cache.log

cache.log untuk mengetahui kondisi cache Squid saat sedang bekerja.

 

3) netdb.state

netdb adalah "Network Measurement Database" yang digunakan oleh Squid untuk mengalkulasi RTT dan beban lalu lintas antara proxy dan server di atasnya.

 

3. Baris Kode squid.conf

File konfigurasi squid.conf dapat Anda temukan dalam folder/ etc/squid/ dengan beberapa parameter yang harus Anda pahami sebagai berikut.

 

Tabel 5.2 Baris kode squid.conf.

No

Baris Kode

Fungsi

1

http_port 3128

Baris kode ini digunakan untuk mengatur port proxy yang akan dijalankan oleh Squid.

2

icp_port 3130

ICP atau Internet Cache Protocol digunakan untuk mengatur komunikasi dengan peer proxy, secara default menggunakan port 3130 dan posisi disable.

3

cache_peer parent.foo.net parent: 3128 3130 default cache_peer sibl.foo.net sibling 3128 3130 proxy-only

Baris kode ini digunakan untuk mengatur konfigurasi parent proxy dan sibling proxy, biasanya dalam kondisi disable.

4

dead_peer timeout 10 seconds

Setiap peer proxy yang telah didefinisikan sebelumnya memiliki waktu time out selama 10 detik. Artinya, jika peer tidak merespons dengan mengirim sinyal ICP dalam waktu tersebut, akan dianggap down. Selanjutnya, Squid tidak akan mengambil object dari server tujuan.

5

hierarchy _stoplist cgi-bin ?

Pada contoh baris kode tersebut, akan melakukan pengaturan cache server untuk mengambil langsung konten web server ketika menemukan bagian URL cgi-bin atau ada kode (?).

6

cache_effective_user squid cache_effective group squid

Kedua baris tersebut menunjukkan bahwa seluruh aktivitas sistem Squid beserta log file dan direktorinya adalah milik user dan group yang dituliskan.

7

cache_mem 256 MB

Memberikan keterangan batas atas jumlah memori yang dipakal untuk menyimpan. '* In transit object atau objek yang tersimpan dalam cache antara waktu ketika pertama kali diunduh hingga waktu yang diperlukan untuk dikirimkan ke klien. '* Hot object adalah jenis objek dalam cache server yang sering diakses dan diminta klien.

 

cache_swap_low 90

cache_swap high 95

Untuk menentukan batas bawah (swap Jow) dan batas atas(swop high) yang telah dicapai serta untuk menentukan cache mulai menghapus konten web yang tersimpan.

 

cache_dir ufs /var/spool/squid 100 16 256

Baris kode ini menjelaskan tentang konfigurasialokas besar disk yang dialokasikan sebagai cache directory Squid, dalam contoh menggunakan format disk UFS yang terletak pada direktori /var/spool/squid. Sementara itu, angka 100 menunjukkan kapasitas ukuran direktori adalah 100 MB, angka 16 memberikan informasi bahwa dalam direktori tersebut terdapat 16 subdirektori. Tap subdirektor tersebut memilki 256 subdirektor lagi. Jangan lupa untuk mengatur kepemilikan direktori tersebut dengan user dan group Squid.

 

eache_log /var/log/squid/cache.log

Untuk mengatur letak lokasi cache fog yang berada pada /var/log/squid/ cache.log.

 

logfile_rotate 10

Menentukan jumiah log file yang akan dibuat dalam folder og. Sebagai contoh, dalam /var/log/squid/ akan memilki log fle dengan nama access.

log, access.log.1, sampai access.log.10.

 

visible_hostname smkbisa.net

Nama domain ini akan ditampilkan dalam tampilan pesan error di web browser komputer Kien. Sebagai contoh, ketika mengakses situs tertentu, kemudian error karena diblokir, web browser akan menampilkan nama hostname = smkbisa.net.

 

acl locainet src 10.0.0.0/8 #

RFC1918 possible internal network

acl localnet src 172.16.0.0/12 #

REC1918 possible internal network

acl lecalnet src 192.168.0.0/16 #

RFC1918 possible internal network

acl localnet src fc00::/7

# RFC 4193 local private network

range

acl localnet src fe80::/10

4 REC 4291 link-local (directly

plugged) machines

acl SSL _ports port 443

acl Safe ports port 80 #

hetp

acl Safe_ports port 22 #

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 #

muliling http

acl CONNECT method CONNEC

ACL (Access Control List) merupakan syntax yang sering digunakan untuk menentukan atau mendefnisikan pengalamatan IP address, network, alamat sumber (sc), alamat tujuan (dst), registrasi port, dan pengaturan bandwidth.

14.

http_access deny !Safe_ports:

nttplaccess deny CONNECT !SSL_

ports

http_access allow localhost

manager

http_access deny manager

http_access allow localnet

http_access allow localhost

http_access deny all

Syntax http_access digunakan untuk menentukan variabel dalam ACL diizinkan untuk mengakses website atau tidak. Kebijakan pemblokiran diwakili dengan perintah http_access deny, sedangkan untuk syntax http_access allow akan mengizinkan permintaan akses ke website tertentu.

 

Latihan Praktik 1

 

Judul : Membuat non-transparent proxy pada port 9090 dengan IP server 192.168.56.20

Tujuan : Menyediakan port akses 9090 sebagai layanan protokol http pada komputer client.

Syarat : Rancang topologi jaringan seperti berikut. :

  


Petunjuk praktik:

1. Buat topologi seperti gambar sebelumnya, Kemudian lakukan Konfigurasisesuai apendiks berikut.

Tabel 5.3 Apendiks topologi jaringan NAT.

 

 2. Pastikan firewall server telah terkonfigurasi menjadi router (lihat praktik sebelumnya sehingga klien dapat terhubung dengan web server) Lakukan instalasi Squid pada Firewall-Server, kemuudian lakukan beberapa perubahan pada baris Konfigurasi ile squid.conf sebagai berikut.

 

root@Firewall-Server:~# nano /etc/squid/squid.conf

 

3. Ubah default port proxy server menjadi 9090 dengan mengedit baris kode http_port.

 

http_port 9090

 

4. Aktifkan baris kode yang menyatakan lokasi penyimpanan cache directory berada dengan menghapus tanda komentar berupa pagar pada baris kode berikut.

 

cache_dir ufs /var/spool/squid 100 16 256

 

5. Keluar dan simpan file squid.conf tersebut, kemudian periksa dengan perintah squid -k parse untuk memeriksa jika ada kesalahan dalam konfigurasinya.

 

root@Firewall-Server:~# squid -k parse


 

6. Jka tidak muncul error, lanjutkan dengan membuat direktori Squid menggunakan perintah squid-z.

 

root@Firewall-Server:~# squid -z

 

 

7. Anda dapat memeriksa direktori cache yang dibuat telah terbentuk dengan balk, cukup dengan menampilkan konten folder dalam direktori /var/spool/squid/.

 

root@Firewall-Server:~#ls -al /var/spool/squid

 

8. Jika semua prosedur telah Anda jalankan, restart service Squid.

 

root@Firewall-Server:~# service squid restart

 

Jika sebelumnya Anda menggunakan direktori default Squid yang berada pada /var/

spool/squid ukuran 100 MB dengan jumiah subdirektori 16 dan 256 per subdirektori, langkah

selanjutnya, Anda akan mengubah direktori cache-nya menjadi berada di /home/squid_pool

dengan ukuran disk 100 MB. Komposisi direktori tersebut memiliki 200 subdirektori, setiap

subdirektori memiliki 2000 subdirektori lagi.

 

9. Buatlah terlebih dahulu direktori /home/squid_pool dan hapus direktori sebelumnya.

 

root@Firewall-Server:~# rm -Rf /var/spool/squid

root@Firewall-Server:~#mkdir /home/squid pool

 




10. Edit kembali squid.conf.

 

root@Firewall-Server:~#nano /etc/squid/squid.conf

 

11. Edit kembali dan ubah baris kode yang dimulai cache_dir ufs /var/spool/squid menjadi seperti berikut.

 

cache_dir ufs /home/squid pool 100 200 2000

 

12. Keluar dan simpan file squid.conf.

13. Atur kepemilikan folder menjadi milik user dan group proxy.

 

 

root@Firewall-Server:~# chown -R proxy:proxy /home/squid_pool/

 

14. Jalankan perintah Squid -z untuk memulai proses pembuatan direktori cache.

 

root@Firewall-Server:~# squid -z

 

15. Berikutnya, Anda akan mencoba melakukan simulasi dalam jaringan lokal sesuai gambar topologi sebelumnya. Pada topologi sebelumnya, di link atas proxy server terdapat web server dengan IP addres 172.16 0.126, Buat domain baruterebih dahulu dengan nama smkbisa.net dengan virtual host directory /home/smk.

 

16. Dalam latinan berikut, Anda akan membuat aturan yang memberlakukan pemblokiran semua komputer yang berada di alamat network 192.168.56.0/24.

 

17. Edit file squid.conf.

 

root@Firewali-server:~# nano /etc/squid/squid.conf

 

18. Modifikasi terlebih dulu cache_mgr dengan value admin@smkbisa.net.

 

cache_mgr admin@smkbisa.net

 

19. Tentukan ACL source IP network yang berasal dari network 192.168.56.0/24 untuk difilter dan daftar domain yang akan diblokit.

 

acl localnet src 192.168.56.0/24

acl blokir dstdomain "/etc/squid/blok"

 

20. Edit syntax http_access yang memperbolehkan localnet dan memblokir domain.

 

http_access deny blokir

httpaccess allow localnet

 

21. Setelah mengonfiguras! file squid.conf, jangan lupa untuk keluar dan menyimpannya. Buat fileete/squid/blokir yang nantinya akan diisi daftar situs yang akan diblokir.

 

root@Firewall-Server:~# nano /etc/squid/blokir



22. Periksa konfigurasi Squid dengan perintah berikut.

 

root@Firewall-Server:~# squid -k parse

 

23. Restart service Squid.

 

root@Firewall-Server:~# service squid restart

 

Jika semua tahapan pada konfigurasi server proxy dengan Squid telah dijalankan dengan balk, akukan pengujian dari sis! komputer klien, yaitu sebagai berikut.

 

24. Jalankan aplikasi web browser pada PC Client.

 

25. Pillh Network Settings, klik opsi Manual proxy configuration, kemudian masukkan IP proxy 192.168.56.20 dengan port 9090 seperti gambar berikut.



26. alukan pengujian dengan membuka beberapa situs yang telah abtoN seDelumnya, Seperti smkbisa.net, cisco.com, dan wikipedia.org.

 

27. Akses URL http://smkbisa.net seperti gambar berikut.

 



28. Akses URL http://id.wikipedia.org seperti gambar berikut.



29. Akses URL http://cisco.com seperti gambar berikut.



 

 

 

No comments:

Post a Comment