Artikel

Proxy Server di Era Modern: Implementasi Web Proxy MikroTik dan Squid Ubuntu Server

Pendahuluan Pada masa awal perkembangan internet, proxy server banyak digunakan untuk mempercepat akses web. Proxy menyimpan salinan halaman, gambar, dan berkas yang pernah diakses sehingga permintaan berikutnya dapat dilayani dari jari...

Proxy Server di Era Modern: Implementasi Web Proxy MikroTik dan Squid Ubuntu Server

Ditulis oleh Guru SKJ pada 29 Jul 2026

Pendahuluan

Pada masa awal perkembangan internet, proxy server banyak digunakan untuk mempercepat akses web. Proxy menyimpan salinan halaman, gambar, dan berkas yang pernah diakses sehingga permintaan berikutnya dapat dilayani dari jaringan lokal.

Namun, kondisi internet saat ini sudah berubah. Sebagian besar situs menggunakan HTTPS, layanan berbasis cloud, Content Delivery Network atau CDN, aplikasi seluler, dan konten yang berubah secara dinamis. Perubahan tersebut membuat kemampuan caching tradisional tidak lagi menjadi alasan utama penggunaan proxy.

Meskipun demikian, proxy belum ditinggalkan. Proxy masih digunakan pada jaringan:

  • sekolah;

  • kampus;

  • kantor;

  • perusahaan;

  • laboratorium komputer;

  • perpustakaan;

  • jaringan publik;

  • pusat data;

  • dan lingkungan dengan kebijakan akses internet tertentu.

Saat ini proxy lebih banyak digunakan untuk:

  • mengendalikan akses internet;

  • mencatat aktivitas koneksi;

  • mengharuskan autentikasi pengguna;

  • membatasi tujuan tertentu;

  • mengatur siapa yang boleh menggunakan internet;

  • menerapkan kebijakan berdasarkan alamat IP;

  • mempercepat unduhan tertentu;

  • serta menjadi perantara antara jaringan internal dan internet.

MikroTik RouterOS memiliki fitur Web Proxy bawaan untuk menangani permintaan HTTP dan HTTP-proxy. Namun, untuk jaringan dengan banyak pengguna dan kebutuhan pengelolaan yang lebih kompleks, proxy eksternal menggunakan Squid pada Ubuntu Server lebih tepat digunakan. MikroTik dapat tetap menangani routing, NAT, firewall, DHCP, hotspot, dan bandwidth, sedangkan Ubuntu Server menangani layanan proxy.


Apakah Proxy Masih Relevan?

Jawabannya adalah masih relevan, tetapi penggunaannya harus disesuaikan dengan teknologi internet modern.

Proxy masih relevan untuk:

  1. Mengontrol akses internet berdasarkan alamat IP.

  2. Mengharuskan pengguna menggunakan jalur internet tertentu.

  3. Membatasi akses ke domain atau kategori situs tertentu.

  4. Mencatat permintaan akses melalui access log.

  5. Memberikan autentikasi sebelum pengguna mengakses internet.

  6. Mengurangi penggunaan bandwidth untuk konten yang memang dapat di-cache.

  7. Membatasi akses internet pada laboratorium sekolah.

  8. Menyediakan akses internet untuk server yang tidak diizinkan keluar secara langsung.

  9. Mengendalikan pembaruan sistem operasi dan paket aplikasi.

  10. Menyembunyikan struktur jaringan internal dari server tujuan.

Proxy kurang efektif untuk:

  1. Membaca isi komunikasi HTTPS tanpa melakukan TLS inspection.

  2. Memblokir seluruh aplikasi hanya berdasarkan nama domain.

  3. Menggantikan fungsi firewall.

  4. Mengamankan perangkat yang sudah terinfeksi malware.

  5. Menggantikan antivirus atau endpoint protection.

  6. Menjamin anonimitas pengguna secara penuh.

  7. Menangani seluruh trafik jaringan selain protokol yang didukung proxy.

Proxy harus dipahami sebagai salah satu bagian dari sistem keamanan jaringan, bukan sebagai satu-satunya pengamanan.


Apa Itu Proxy Server?

Proxy server adalah perangkat atau layanan yang menjadi perantara antara client dan server tujuan.

Ketika komputer pengguna mengakses suatu situs, permintaan tidak selalu dikirim langsung ke internet. Permintaan dapat dikirim terlebih dahulu ke proxy server. Proxy kemudian memeriksa permintaan tersebut dan memutuskan apakah permintaan:

  • diizinkan;

  • ditolak;

  • dicatat;

  • diteruskan;

  • dibatasi;

  • atau dilayani dari cache.

Alur dasarnya adalah:

Client
   ↓
Proxy Server
   ↓
Internet
   ↓
Server Tujuan

Jawaban dari server tujuan juga melewati proxy sebelum diterima client.

Server Tujuan
      ↓
Proxy Server
      ↓
Client

Proxy dapat mengetahui informasi seperti:

  • alamat IP client;

  • waktu akses;

  • alamat tujuan;

  • metode permintaan;

  • jumlah data;

  • status permintaan;

  • dan identitas pengguna jika autentikasi diterapkan.


Perbedaan Proxy dan Firewall

Proxy dan firewall mempunyai fungsi yang berbeda.

Firewall

Firewall bekerja dengan memeriksa lalu lintas jaringan berdasarkan aturan seperti:

  • alamat IP sumber;

  • alamat IP tujuan;

  • protokol;

  • nomor port;

  • status koneksi;

  • interface;

  • dan parameter paket lainnya.

Firewall dapat mengizinkan atau menolak paket sebelum paket mencapai layanan tertentu.

Proxy

Proxy bekerja sebagai perantara pada tingkat aplikasi. Client melakukan komunikasi dengan proxy, kemudian proxy membuat komunikasi baru menuju server tujuan.

Proxy dapat digunakan untuk:

  • memeriksa permintaan aplikasi;

  • menerapkan autentikasi;

  • memfilter URL atau domain;

  • mencatat aktivitas;

  • dan menyimpan cache.

Kesimpulan perbedaannya

Firewall  : Mengatur lalu lintas paket.
Proxy     : Menjadi perantara komunikasi aplikasi.

Dalam penerapan yang baik, firewall dan proxy digunakan bersama-sama.


Jenis-Jenis Proxy

1. Forward Proxy

Forward proxy digunakan oleh client dalam jaringan internal untuk mengakses internet.

Client → Forward Proxy → Internet

Web Proxy MikroTik dan Squid dalam artikel ini termasuk forward proxy.

2. Reverse Proxy

Reverse proxy berada di depan web server dan menerima permintaan dari internet.

Internet → Reverse Proxy → Web Server

Reverse proxy biasanya digunakan untuk:

  • load balancing;

  • terminasi TLS;

  • perlindungan web server;

  • caching;

  • dan penyembunyian server backend.

Contohnya adalah Nginx, HAProxy, Traefik, dan layanan reverse proxy berbasis cloud.

3. Explicit Proxy

Pada explicit proxy, alamat dan port proxy diatur secara langsung pada:

  • browser;

  • sistem operasi;

  • aplikasi;

  • Group Policy;

  • atau file konfigurasi.

Contoh:

Proxy Address : 192.168.10.2
Proxy Port    : 3128

Metode ini paling mudah dipahami, paling jelas, dan paling cocok untuk proxy modern.

4. Transparent atau Intercepting Proxy

Pada transparent proxy, client tidak perlu mengatur proxy secara manual. Router mengalihkan trafik tertentu menuju proxy.

Metode ini mudah diterapkan untuk HTTP biasa, tetapi bermasalah untuk HTTPS karena koneksi HTTPS dirancang untuk memastikan client berkomunikasi langsung dengan identitas server yang dituju.


Keterbatasan Proxy pada HTTPS

Sebagian besar situs modern menggunakan HTTPS pada port TCP 443. Isi komunikasi HTTPS dienkripsi sehingga proxy biasa tidak dapat melihat:

  • halaman yang dibuka;

  • URL lengkap;

  • kata pencarian;

  • isi formulir;

  • isi pesan;

  • maupun data yang dikirimkan pengguna.

Proxy mungkin masih mengetahui tujuan koneksi tertentu, tetapi tidak otomatis dapat membaca isi komunikasinya.

Agar isi HTTPS dapat diperiksa, diperlukan TLS inspection atau SSL bump. Mekanisme tersebut membutuhkan:

  • sertifikat Certificate Authority internal;

  • pemasangan sertifikat ke setiap client;

  • pengelolaan keamanan sertifikat;

  • konfigurasi proxy yang lebih kompleks;

  • pengecualian untuk aplikasi tertentu;

  • pertimbangan privasi;

  • dan kebijakan organisasi yang jelas.

TLS inspection tidak disarankan sebagai praktik awal bagi siswa karena berisiko menimbulkan masalah keamanan dan privasi apabila diterapkan tanpa perencanaan yang benar.

Untuk sekolah, pendekatan yang lebih aman adalah menggabungkan:

  • firewall MikroTik;

  • DNS filtering;

  • explicit proxy;

  • kebijakan perangkat;

  • SafeSearch;

  • pembatasan aplikasi;

  • autentikasi hotspot;

  • dan monitoring log.


Skenario Praktikum

Artikel ini menggunakan contoh topologi berikut.

                        INTERNET
                            |
                         ether1
                    [ ROUTER MIKROTIK ]
                      192.168.10.1/24
                            |
                         ether2
                            |
                    [ SWITCH / BRIDGE ]
                       /            \
                      /              \
             [UBUNTU PROXY]       [CLIENT]
              192.168.10.2       192.168.10.10
              Squid :3128

Tabel alamat IP

Perangkat Interface Alamat IP
MikroTik ether1 Dari ISP
MikroTik bridge-LAN 192.168.10.1/24
Ubuntu Server ens18 atau enp0s3 192.168.10.2/24
Client Ethernet/Wi-Fi DHCP 192.168.10.0/24
Squid TCP Port 3128
Web Proxy MikroTik TCP Port 8080

Pada praktik ini terdapat dua pilihan:

Pilihan A

Menggunakan Web Proxy internal MikroTik.

Client → MikroTik Web Proxy → Internet

Pilihan B

Menggunakan Squid pada Ubuntu Server.

Client → Ubuntu Squid → MikroTik → Internet

Kedua skenario sebaiknya diuji secara terpisah agar alur paket mudah dipahami.


Bagian I: Persiapan Router MikroTik

1. Membuat bridge LAN

/interface bridge
add name=bridge-LAN comment="Bridge jaringan lokal"

/interface bridge port
add bridge=bridge-LAN interface=ether2
add bridge=bridge-LAN interface=ether3
add bridge=bridge-LAN interface=ether4

Interface dapat disesuaikan dengan topologi yang digunakan.

2. Memberikan alamat IP LAN

/ip address
add address=192.168.10.1/24 interface=bridge-LAN comment="Gateway LAN"

3. Membuat DHCP Server

Gunakan DHCP Setup melalui terminal:

/ip dhcp-server setup

Kemudian pilih:

DHCP Server Interface : bridge-LAN
DHCP Address Space    : 192.168.10.0/24
Gateway               : 192.168.10.1
Address Pool          : 192.168.10.10-192.168.10.200
DNS Server            : 192.168.10.1
Lease Time            : 1d

Konfigurasi manual dapat dibuat seperti berikut:

/ip pool
add name=pool-LAN ranges=192.168.10.10-192.168.10.200

/ip dhcp-server
add name=dhcp-LAN interface=bridge-LAN address-pool=pool-LAN disabled=no

/ip dhcp-server network
add address=192.168.10.0/24 gateway=192.168.10.1 \
    dns-server=192.168.10.1

4. Mengaktifkan DNS cache MikroTik

/ip dns
set allow-remote-requests=yes servers=1.1.1.1,8.8.8.8

Pada lingkungan produksi, DNS dapat diarahkan menuju DNS filtering milik organisasi.

5. Membuat NAT internet

/ip firewall nat
add chain=srcnat out-interface=ether1 action=masquerade \
    comment="NAT internet LAN"

Jika nama interface WAN bukan ether1, sesuaikan dengan interface yang terhubung ke ISP.

6. Menguji koneksi

Dari MikroTik:

/ping 8.8.8.8

Kemudian:

/ping google.com

Dari client, periksa:

ping 192.168.10.1

Setelah itu uji akses internet.


Bagian II: Menggunakan Web Proxy Internal MikroTik

Web Proxy MikroTik dapat digunakan sebagai proxy HTTP sederhana, filtering URL, access control, dan pencatatan aktivitas.

Namun, kemampuan perangkat RouterBoard terbatas. Caching dalam jumlah besar tidak disarankan pada router dengan:

  • RAM kecil;

  • penyimpanan kecil;

  • CPU terbatas;

  • atau jumlah pengguna tinggi.

Untuk jaringan besar, gunakan server proxy eksternal.


Mengaktifkan Web Proxy MikroTik

Jalankan perintah:

/ip proxy
set enabled=yes \
    port=8080 \
    cache-administrator=admin@sekolah.sch.id \
    max-cache-size=none

Penjelasan:

  • enabled=yes mengaktifkan proxy;

  • port=8080 menentukan port proxy;

  • cache-administrator menentukan alamat administrator;

  • max-cache-size=none menonaktifkan penyimpanan cache disk.

Untuk praktik caching terbatas, ukuran cache dapat disesuaikan dengan kapasitas perangkat. Jangan menggunakan cache besar pada penyimpanan RouterBoard yang kecil.

Lihat konfigurasi:

/ip proxy print

Pantau status proxy:

/ip proxy monitor

Menggunakan MikroTik sebagai Explicit Proxy

Pada client, atur proxy browser atau sistem operasi menjadi:

Alamat proxy : 192.168.10.1
Port proxy   : 8080

Pengaturan pada Windows

Buka:

Settings
→ Network & Internet
→ Proxy
→ Use a proxy server

Masukkan:

Address : 192.168.10.1
Port    : 8080

Setelah itu buka situs HTTP untuk melakukan pengujian.

Perlu diperhatikan bahwa tidak semua aplikasi mengikuti pengaturan proxy Windows. Beberapa aplikasi menggunakan koneksi langsung atau memiliki pengaturan proxy sendiri.


Membuat Access Rule Web Proxy MikroTik

Access rule digunakan untuk menentukan permintaan yang diizinkan atau ditolak.

1. Mengizinkan jaringan lokal

/ip proxy access
add src-address=192.168.10.0/24 action=allow \
    comment="Izinkan client LAN"

2. Menolak jaringan selain LAN

/ip proxy access
add action=deny comment="Tolak selain jaringan LAN"

Urutan rule sangat penting. Router membaca rule dari atas ke bawah.

Aturan mengizinkan LAN harus diletakkan sebelum aturan menolak seluruh akses.


Memblokir Domain Menggunakan Web Proxy

Contoh memblokir domain:

/ip proxy access
add dst-host="*.example.com" action=deny \
    comment="Blokir example.com"

Contoh lain:

/ip proxy access
add dst-host="example.org" action=deny
add dst-host="*.example.org" action=deny

Rule pertama memblokir domain utama, sedangkan rule kedua memblokir subdomain.

Perlu dipahami bahwa filter dst-host pada Web Proxy terutama relevan untuk permintaan yang benar-benar diproses oleh proxy. Filter ini bukan pengganti filtering HTTPS modern.


Memblokir Kata pada URL

Contoh:

/ip proxy access
add path="*download*" action=deny \
    comment="Blokir URL mengandung download"

Atau:

/ip proxy access
add path="*.exe" action=deny \
    comment="Blokir file EXE melalui HTTP"

Pemfilteran ini hanya bekerja apabila URL dapat dilihat oleh proxy. Untuk HTTPS terenkripsi, path lengkap tidak dapat dibaca oleh proxy biasa.


Mengizinkan Situs Tertentu

Contoh jaringan laboratorium hanya diizinkan mengakses situs pembelajaran tertentu:

/ip proxy access
add src-address=192.168.10.0/24 dst-host="*.kemdikbud.go.id" \
    action=allow comment="Izinkan Kemdikbud"

add src-address=192.168.10.0/24 dst-host="*.belajar.id" \
    action=allow comment="Izinkan belajar.id"

add src-address=192.168.10.0/24 action=deny \
    comment="Tolak tujuan lain melalui proxy"

Namun, whitelist domain modern dapat menjadi sulit karena satu aplikasi sering menggunakan banyak domain, CDN, API, dan layanan autentikasi.


Mengubah Halaman Penolakan

Web Proxy MikroTik dapat melakukan pengalihan untuk permintaan HTTP tertentu.

Contoh:

/ip proxy access
add dst-host="*.example.com" action=deny \
    redirect-to="portal.sekolah.local/diblokir.html"

Pengalihan hanya cocok untuk trafik HTTP yang dapat diproses oleh proxy. Jangan mengandalkannya untuk HTTPS.


Transparent Proxy HTTP pada MikroTik

Transparent proxy mengalihkan trafik HTTP port 80 ke Web Proxy MikroTik.

/ip firewall nat
add chain=dstnat \
    src-address=192.168.10.0/24 \
    protocol=tcp \
    dst-port=80 \
    action=redirect \
    to-ports=8080 \
    comment="Redirect HTTP ke Web Proxy MikroTik"

Alurnya menjadi:

Client mengakses HTTP port 80
             ↓
MikroTik menangkap permintaan
             ↓
Dialihkan ke Web Proxy port 8080
             ↓
Web Proxy memeriksa access rule
             ↓
Permintaan diizinkan atau ditolak

Jangan mengalihkan HTTPS port 443 ke port 8080

Konfigurasi berikut tidak boleh digunakan sebagai proxy HTTPS biasa:

dst-port=443 action=redirect to-ports=8080

Hal tersebut akan menyebabkan:

  • certificate error;

  • koneksi gagal;

  • aplikasi tidak dapat digunakan;

  • dan masalah keamanan.

Web Proxy biasa tidak dapat menggantikan server HTTPS tujuan.


Firewall Rule untuk Melindungi Proxy MikroTik

Proxy sebaiknya hanya dapat digunakan oleh jaringan lokal.

1. Mengizinkan akses proxy dari LAN

/ip firewall filter
add chain=input \
    src-address=192.168.10.0/24 \
    protocol=tcp \
    dst-port=8080 \
    action=accept \
    comment="Izinkan LAN ke Web Proxy"

2. Menolak akses proxy dari WAN

/ip firewall filter
add chain=input \
    in-interface=ether1 \
    protocol=tcp \
    dst-port=8080 \
    action=drop \
    comment="Tolak akses Web Proxy dari internet"

Jangan membuka proxy ke internet tanpa pembatasan. Open proxy dapat disalahgunakan pihak lain untuk:

  • menyembunyikan sumber serangan;

  • mengirim trafik berbahaya;

  • menggunakan bandwidth;

  • dan menyebabkan alamat IP publik masuk daftar hitam.


Mencatat Aktivitas Web Proxy MikroTik

Untuk mengaktifkan logging:

/system logging
add topics=web-proxy action=memory

Lihat log:

/log print where topics~"web-proxy"

Untuk penyimpanan log jangka panjang, lebih baik kirim log ke syslog server karena memori router terbatas.

Contoh konfigurasi remote syslog:

/system logging action
add name=remote-syslog \
    target=remote \
    remote=192.168.10.2 \
    remote-port=514

/system logging
add topics=web-proxy action=remote-syslog

Ubuntu Server dapat dikonfigurasi sebagai penerima log menggunakan rsyslog atau platform monitoring lainnya.


Bagian III: Proxy Eksternal Menggunakan Ubuntu Server dan Squid

Pada skenario proxy eksternal, Ubuntu Server menjadi proxy server dan MikroTik menjadi router.

CLIENT
  |
  | Permintaan proxy port 3128
  v
UBUNTU SERVER + SQUID
  |
  | Trafik menuju internet
  v
MIKROTIK
  |
  v
INTERNET

Pembagian tugasnya adalah:

MikroTik

  • routing;

  • NAT;

  • DHCP;

  • firewall;

  • hotspot;

  • manajemen bandwidth;

  • isolasi jaringan;

  • dan pengarahan trafik.

Ubuntu Server

  • layanan Squid;

  • ACL;

  • autentikasi;

  • pencatatan access log;

  • filtering;

  • caching;

  • dan pengelolaan kebijakan proxy.


Mengatur IP Statis Ubuntu Server

Contoh interface Ubuntu adalah ens18. Periksa nama interface:

ip address

Edit konfigurasi Netplan:

sudo nano /etc/netplan/01-network.yaml

Contoh konfigurasi:

network:
  version: 2
  ethernets:
    ens18:
      dhcp4: false
      addresses:
        - 192.168.10.2/24
      routes:
        - to: default
          via: 192.168.10.1
      nameservers:
        addresses:
          - 192.168.10.1
          - 1.1.1.1

Simpan lalu terapkan:

sudo netplan try

Jika tidak ada masalah:

sudo netplan apply

Uji koneksi:

ping -c 4 192.168.10.1
ping -c 4 8.8.8.8
ping -c 4 ubuntu.com

Menginstal Squid

Perbarui daftar paket:

sudo apt update

Instal Squid:

sudo apt install squid -y

Periksa status:

sudo systemctl status squid

Aktifkan agar berjalan otomatis:

sudo systemctl enable squid

Secara umum Squid menggunakan port 3128 untuk menerima koneksi proxy client.


Mencadangkan Konfigurasi Squid

Sebelum mengubah konfigurasi:

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.backup

Buka konfigurasi:

sudo nano /etc/squid/squid.conf

Untuk pembelajaran, konfigurasi dapat disederhanakan. Namun, jangan menghapus konfigurasi asli tanpa membuat cadangan.


Konfigurasi Dasar Squid

Tambahkan atau sesuaikan bagian berikut:

http_port 3128

acl localnet src 192.168.10.0/24

http_access allow localhost
http_access allow localnet
http_access deny all

Penjelasan:

http_port 3128

Menentukan Squid mendengarkan pada port 3128.

acl localnet src 192.168.10.0/24

Membuat ACL bernama localnet yang berisi jaringan client.

http_access allow localhost

Mengizinkan koneksi dari server sendiri.

http_access allow localnet

Mengizinkan jaringan lokal menggunakan proxy.

http_access deny all

Menolak seluruh permintaan lainnya.

Urutan http_access sangat penting karena Squid membaca aturan dari atas ke bawah.

Periksa konfigurasi:

sudo squid -k parse

Jika tidak ada error:

sudo systemctl restart squid

Periksa kembali:

sudo systemctl status squid

Membatasi Squid Hanya pada IP LAN

Agar Squid hanya mendengarkan pada IP internal:

http_port 192.168.10.2:3128

Konfigurasi ini lebih aman daripada mendengarkan pada seluruh interface apabila Ubuntu Server mempunyai lebih dari satu kartu jaringan.


Mengatur Proxy pada Client

Masukkan:

Proxy address : 192.168.10.2
Proxy port    : 3128

Untuk browser yang menggunakan pengaturan sistem, konfigurasikan proxy melalui pengaturan Windows.

Menguji dengan curl

Dari Linux atau Windows yang memiliki curl:

curl -x http://192.168.10.2:3128 http://example.com

Untuk menguji koneksi HTTPS melalui metode CONNECT:

curl -x http://192.168.10.2:3128 https://example.com

Pada explicit proxy, Squid dapat meneruskan koneksi HTTPS menggunakan metode CONNECT tanpa harus membuka isi komunikasi terenkripsi.


Mengatur Firewall MikroTik untuk Squid

1. Mengizinkan client menuju Squid

Jika firewall forward menggunakan kebijakan ketat:

/ip firewall filter
add chain=forward \
    src-address=192.168.10.0/24 \
    dst-address=192.168.10.2 \
    protocol=tcp \
    dst-port=3128 \
    action=accept \
    comment="Izinkan client ke Squid"

2. Mengizinkan Ubuntu menuju internet

/ip firewall filter
add chain=forward \
    src-address=192.168.10.2 \
    out-interface=ether1 \
    action=accept \
    comment="Izinkan Squid menuju internet"

3. Menolak akses port Squid dari WAN

/ip firewall filter
add chain=forward \
    in-interface=ether1 \
    dst-address=192.168.10.2 \
    protocol=tcp \
    dst-port=3128 \
    action=drop \
    comment="Blokir akses Squid dari WAN"

Pada kondisi normal, NAT port forwarding menuju Squid memang tidak perlu dibuat.


Memaksa Client Menggunakan Squid

Metode yang paling aman adalah menggunakan explicit proxy dan kebijakan perangkat. Namun, administrator dapat menolak koneksi web langsung agar client harus menggunakan Squid.

Konsep

Client diperbolehkan:

Client → Ubuntu Squid port 3128

Client tidak diperbolehkan:

Client → Internet port 80/443 secara langsung

Ubuntu Squid tetap diperbolehkan menuju internet.

Address list untuk client yang wajib memakai proxy

/ip firewall address-list
add list=PROXY-CLIENT address=192.168.10.10-192.168.10.100

Jika RouterOS tidak menerima rentang dalam bentuk tersebut pada konteks tertentu, gunakan subnet atau masukkan alamat secara terpisah.

Contoh menggunakan subnet:

/ip firewall address-list
add list=PROXY-CLIENT address=192.168.10.0/24

Kemudian buat pengecualian untuk Ubuntu Server.

/ip firewall address-list
add list=PROXY-SERVER address=192.168.10.2

Mengizinkan koneksi ke Squid

/ip firewall filter
add chain=forward \
    src-address-list=PROXY-CLIENT \
    dst-address=192.168.10.2 \
    protocol=tcp \
    dst-port=3128 \
    action=accept \
    comment="Client boleh menuju Squid"

Mengizinkan Squid keluar ke internet

/ip firewall filter
add chain=forward \
    src-address=192.168.10.2 \
    out-interface=ether1 \
    protocol=tcp \
    dst-port=80,443 \
    action=accept \
    comment="Squid boleh akses HTTP dan HTTPS"

Menolak client mengakses web secara langsung

/ip firewall filter
add chain=forward \
    src-address-list=PROXY-CLIENT \
    out-interface=ether1 \
    protocol=tcp \
    dst-port=80,443 \
    action=drop \
    comment="Paksa client menggunakan proxy"

Rule allow harus ditempatkan sebelum rule drop.

Perlu dicatat bahwa banyak aplikasi modern tidak kompatibel dengan proxy wajib. Sebelum diterapkan kepada seluruh pengguna, lakukan pengujian pada:

  • browser;

  • aplikasi pembelajaran;

  • layanan konferensi;

  • pembaruan sistem;

  • antivirus;

  • aplikasi pesan;

  • dan aplikasi mobile.


Mengalihkan HTTP ke Squid Secara Transparan

Squid dapat digunakan sebagai intercepting proxy untuk HTTP. Konfigurasi ini tidak ditujukan untuk HTTPS.

Konfigurasi Squid

Tambahkan port intercept:

http_port 3128 intercept

Pastikan ACL jaringan lokal tetap tersedia:

acl localnet src 192.168.10.0/24

http_access allow localnet
http_access deny all

Periksa dan restart:

sudo squid -k parse
sudo systemctl restart squid

NAT MikroTik menuju Squid

Contoh:

/ip firewall nat
add chain=dstnat \
    src-address=192.168.10.0/24 \
    dst-address=!192.168.10.2 \
    protocol=tcp \
    dst-port=80 \
    action=dst-nat \
    to-addresses=192.168.10.2 \
    to-ports=3128 \
    comment="Intercept HTTP menuju Squid"

Namun, penerapan transparent proxy eksternal memerlukan perhatian terhadap jalur balik paket. Server Squid dan client berada pada subnet yang sama sehingga Squid dapat mengirim jawaban langsung ke client, melewati router. Kondisi ini dapat menghasilkan jalur tidak simetris dan koneksi gagal.

Untuk topologi satu subnet, administrator dapat menambahkan source NAT pada trafik yang diarahkan ke Squid:

/ip firewall nat
add chain=srcnat \
    src-address=192.168.10.0/24 \
    dst-address=192.168.10.2 \
    protocol=tcp \
    dst-port=3128 \
    action=masquerade \
    comment="Pastikan return path intercept Squid melalui MikroTik"

Konsekuensinya, Squid dapat melihat IP MikroTik sebagai sumber koneksi, bukan IP asli client.

Desain yang lebih baik adalah menempatkan proxy pada subnet atau VLAN server tersendiri:

VLAN Client : 192.168.10.0/24
VLAN Server : 192.168.20.0/24
Squid       : 192.168.20.2
MikroTik    : Router antar-VLAN

Dengan demikian, seluruh komunikasi client dan Squid selalu melewati MikroTik.


Desain Proxy Eksternal yang Direkomendasikan

                        INTERNET
                            |
                         ether1
                      [MIKROTIK]
                    /            \
                   /              \
       VLAN 10 CLIENT         VLAN 20 SERVER
      192.168.10.1/24        192.168.20.1/24
              |                       |
         [SWITCH/AP]             [UBUNTU SQUID]
              |                  192.168.20.2
       Client Sekolah              Port 3128

Keuntungannya:

  • pemisahan client dan server;

  • firewall lebih mudah;

  • pencatatan IP client lebih jelas;

  • routing lebih terkontrol;

  • proxy tidak berada pada broadcast domain yang sama;

  • dan keamanan server lebih baik.


Contoh Firewall untuk Topologi Dua Subnet

Izinkan client menuju Squid

/ip firewall filter
add chain=forward \
    src-address=192.168.10.0/24 \
    dst-address=192.168.20.2 \
    protocol=tcp \
    dst-port=3128 \
    action=accept \
    comment="Client VLAN menuju Squid"

Izinkan Squid menuju internet

/ip firewall filter
add chain=forward \
    src-address=192.168.20.2 \
    out-interface=ether1 \
    protocol=tcp \
    dst-port=80,443 \
    action=accept \
    comment="Squid menuju web"

Tolak akses langsung client

/ip firewall filter
add chain=forward \
    src-address=192.168.10.0/24 \
    out-interface=ether1 \
    protocol=tcp \
    dst-port=80,443 \
    action=drop \
    comment="Client wajib menggunakan proxy"

Batasi akses menuju server proxy

/ip firewall filter
add chain=forward \
    src-address=192.168.10.0/24 \
    dst-address=192.168.20.2 \
    action=drop \
    comment="Tolak layanan server lain"

Rule port 3128 harus berada di atas rule penolakan umum.


Filtering Domain pada Squid

Buat berkas daftar domain:

sudo nano /etc/squid/blocked-domains.txt

Contoh isi:

.example.com
.example.org
.social-example.test

Tanda titik di depan domain dapat digunakan untuk mencocokkan domain dan subdomain sesuai pola ACL yang diterapkan.

Tambahkan pada squid.conf:

acl blocked_domains dstdomain "/etc/squid/blocked-domains.txt"

http_access deny blocked_domains
http_access allow localnet
http_access deny all

Urutan yang benar:

  1. Definisikan ACL.

  2. Tolak domain yang diblokir.

  3. Izinkan jaringan lokal.

  4. Tolak seluruh akses lain.

Periksa:

sudo squid -k parse

Muat ulang:

sudo systemctl reload squid

Membuat Daftar Domain yang Diizinkan

Buat file:

sudo nano /etc/squid/allowed-domains.txt

Isi contoh:

.kemdikbud.go.id
.belajar.id
.google.com
.googleapis.com
.gstatic.com

Tambahkan:

acl allowed_domains dstdomain "/etc/squid/allowed-domains.txt"

http_access allow allowed_domains
http_access deny all

Whitelist harus diuji dengan teliti karena sebuah layanan web dapat bergantung pada banyak domain lain.


Filtering Berdasarkan Jam

Contoh mengizinkan akses pada Senin sampai Jumat pukul 07.00–16.00:

acl jam_sekolah time MTWHF 07:00-16:00

http_access allow localnet jam_sekolah
http_access deny localnet
http_access deny all

Kode hari Squid:

S = Sunday
M = Monday
T = Tuesday
W = Wednesday
H = Thursday
F = Friday
A = Saturday

Filtering Berdasarkan Alamat IP Client

Contoh komputer guru:

acl guru src 192.168.10.10-192.168.10.30

Contoh komputer siswa:

acl siswa src 192.168.10.100-192.168.10.200

Aturan:

http_access allow guru
http_access deny siswa blocked_domains
http_access allow siswa
http_access deny all

Dengan aturan tersebut:

  • guru diizinkan menggunakan proxy;

  • siswa ditolak ketika mengakses domain yang terdapat dalam daftar blokir;

  • siswa diizinkan mengakses tujuan lainnya.


Membatasi Port Tujuan

Contoh konfigurasi aman:

acl SSL_ports port 443
acl Safe_ports port 80
acl Safe_ports port 443
acl Safe_ports port 21
acl CONNECT method CONNECT

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access allow localnet
http_access deny all

Tujuannya adalah mencegah Squid digunakan untuk membangun koneksi ke port sembarangan.


Autentikasi Pengguna Squid

Autentikasi memungkinkan setiap pengguna memiliki username dan password.

Instal alat pembuat password:

sudo apt install apache2-utils -y

Buat file password:

sudo htpasswd -c /etc/squid/passwords guru1

Tambahkan pengguna berikutnya tanpa -c:

sudo htpasswd /etc/squid/passwords siswa1

Jangan menggunakan -c ketika menambahkan pengguna berikutnya karena opsi tersebut dapat membuat ulang file.

Cari lokasi helper autentikasi:

dpkg -L squid | grep basic_ncsa_auth

Lokasinya dapat berbeda menurut versi dan arsitektur sistem. Contoh umum:

/usr/lib/squid/basic_ncsa_auth

Tambahkan pada squid.conf:

auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords
auth_param basic realm Proxy Sekolah
auth_param basic credentialsttl 2 hours

acl authenticated proxy_auth REQUIRED

http_access allow authenticated
http_access deny all

Periksa:

sudo squid -k parse
sudo systemctl restart squid

Saat browser menggunakan proxy, pengguna akan diminta memasukkan username dan password.

Perlu diketahui bahwa Basic Authentication mengirim kredensial melalui koneksi client ke proxy dalam bentuk yang tidak memberikan perlindungan kuat apabila jaringan lokal tidak dipercaya. Karena itu, gunakan jaringan internal yang aman atau metode autentikasi yang lebih sesuai untuk lingkungan produksi.


Membuat Kelompok Guru dan Siswa

Buat file pengguna guru:

sudo nano /etc/squid/guru.txt

Contoh:

guru1
guru2
administrator

Buat file siswa:

sudo nano /etc/squid/siswa.txt

Contoh:

siswa1
siswa2
siswa3

Konfigurasi ACL:

acl authenticated proxy_auth REQUIRED
acl kelompok_guru proxy_auth "/etc/squid/guru.txt"
acl kelompok_siswa proxy_auth "/etc/squid/siswa.txt"

acl blocked_domains dstdomain "/etc/squid/blocked-domains.txt"

http_access allow kelompok_guru
http_access deny kelompok_siswa blocked_domains
http_access allow kelompok_siswa
http_access deny all

Administrator dapat menerapkan kebijakan berbeda bagi setiap kelompok.


Mengatur Cache Squid

Contoh sederhana:

cache_mem 256 MB
maximum_object_size_in_memory 512 KB
maximum_object_size 64 MB

cache_dir ufs /var/spool/squid 5000 16 256

Penjelasan:

  • cache_mem menentukan jumlah memori yang digunakan untuk objek tertentu;

  • maximum_object_size_in_memory membatasi ukuran objek di memori;

  • maximum_object_size membatasi ukuran objek yang disimpan pada disk;

  • cache_dir menentukan lokasi dan kapasitas cache.

Nilai tersebut harus disesuaikan dengan:

  • kapasitas RAM;

  • kapasitas disk;

  • jumlah client;

  • pola akses;

  • dan beban server.

Setelah mengubah struktur cache:

sudo systemctl stop squid
sudo squid -z
sudo systemctl start squid

Cache tidak selalu mempercepat seluruh situs modern. Banyak respons HTTPS, konten pribadi, streaming, dan aplikasi dinamis tidak dapat atau tidak seharusnya di-cache.


Proxy Khusus Pembaruan Ubuntu

Untuk laboratorium dengan banyak komputer Ubuntu, caching paket dapat menghemat bandwidth karena banyak client mengunduh paket yang sama.

Selain Squid umum, administrator dapat mempertimbangkan caching yang memang dirancang untuk paket Debian dan Ubuntu, seperti apt-cacher-ng.

Contoh instalasi:

sudo apt update
sudo apt install apt-cacher-ng -y

Pada client, buat file:

sudo nano /etc/apt/apt.conf.d/01proxy

Isi:

Acquire::http::Proxy "http://192.168.10.2:3142";

Setelah itu:

sudo apt update

Pendekatan ini lebih terarah daripada mencoba menyimpan seluruh trafik web modern.


Logging dan Monitoring Squid

Lokasi log umum:

/var/log/squid/access.log
/var/log/squid/cache.log

Pantau access log:

sudo tail -f /var/log/squid/access.log

Pantau error:

sudo tail -f /var/log/squid/cache.log

Cari akses dari IP tertentu:

sudo grep "192.168.10.25" /var/log/squid/access.log

Cari domain tertentu:

sudo grep "example.com" /var/log/squid/access.log

Hitung jumlah permintaan:

sudo wc -l /var/log/squid/access.log

Administrator harus membuat kebijakan penyimpanan log yang jelas. Log akses dapat mengandung data aktivitas pengguna sehingga harus:

  • dibatasi aksesnya;

  • disimpan secara aman;

  • memiliki masa retensi;

  • digunakan hanya untuk tujuan yang sah;

  • dan mengikuti kebijakan privasi organisasi.


Firewall Ubuntu Menggunakan UFW

Izinkan SSH dari jaringan administrator:

sudo ufw allow from 192.168.10.0/24 to any port 22 proto tcp

Izinkan Squid dari LAN:

sudo ufw allow from 192.168.10.0/24 to any port 3128 proto tcp

Aktifkan UFW:

sudo ufw enable

Periksa:

sudo ufw status verbose

Jangan membuka port Squid ke seluruh internet:

sudo ufw allow 3128/tcp

Rule tanpa pembatasan alamat sumber dapat membuat proxy dapat diakses dari jaringan yang tidak diinginkan apabila routing dan firewall di luar server juga mengizinkannya.


Pengamanan Server Proxy

1. Gunakan IP statis

Proxy harus mempunyai alamat IP tetap agar konfigurasi client dan firewall tidak berubah.

2. Batasi port 3128

Hanya jaringan internal yang boleh terhubung.

3. Jangan membuat port forwarding dari internet

Squid tidak perlu dipublikasikan ke internet untuk skenario forward proxy sekolah.

4. Perbarui sistem

sudo apt update
sudo apt upgrade

5. Gunakan autentikasi bila diperlukan

Autentikasi membantu mengidentifikasi pengguna, tetapi tidak menggantikan keamanan jaringan.

6. Rotasi log

Pastikan log tidak memenuhi disk.

Periksa:

df -h
du -sh /var/log/squid

7. Cadangkan konfigurasi

sudo cp -a /etc/squid /root/backup-squid

8. Pisahkan server dan client

Gunakan VLAN server apabila jaringan telah mendukung segmentasi.

9. Terapkan firewall berlapis

Gunakan firewall pada MikroTik dan Ubuntu Server.

10. Hindari TLS inspection tanpa kebijakan

Jangan memasang sertifikat internal atau memeriksa komunikasi terenkripsi tanpa dasar administratif, teknis, dan kebijakan privasi yang jelas.


Urutan Firewall MikroTik yang Disarankan

Contoh struktur dasar:

/ip firewall filter

add chain=input connection-state=established,related,untracked \
    action=accept comment="Input established related"

add chain=input connection-state=invalid \
    action=drop comment="Drop invalid input"

add chain=input protocol=icmp \
    action=accept comment="Izinkan ICMP"

add chain=input src-address=192.168.10.0/24 \
    action=accept comment="Manajemen dari LAN"

add chain=input in-interface=ether1 \
    action=drop comment="Lindungi router dari WAN"

add chain=forward connection-state=established,related,untracked \
    action=accept comment="Forward established related"

add chain=forward connection-state=invalid \
    action=drop comment="Drop invalid forward"

add chain=forward src-address=192.168.10.0/24 \
    dst-address=192.168.10.2 protocol=tcp dst-port=3128 \
    action=accept comment="Client menuju Squid"

add chain=forward src-address=192.168.10.2 \
    out-interface=ether1 action=accept \
    comment="Squid menuju internet"

add chain=forward src-address=192.168.10.0/24 \
    out-interface=ether1 protocol=tcp dst-port=80,443 \
    action=drop comment="Cegah web langsung"

add chain=forward in-interface=ether1 \
    connection-state=new connection-nat-state=!dstnat \
    action=drop comment="Tolak koneksi baru WAN"

Konfigurasi harus disesuaikan dengan layanan yang dibutuhkan. Jangan langsung menyalin rule penolakan ke router produksi tanpa memastikan akses penting masih diizinkan.


Pengujian Sistem

Pengujian koneksi Ubuntu

ping -c 4 192.168.10.1
ping -c 4 8.8.8.8
curl http://example.com

Pengujian layanan Squid

sudo systemctl status squid
sudo ss -lntp | grep 3128

Pengujian konfigurasi

sudo squid -k parse

Pengujian dari client

curl -x http://192.168.10.2:3128 http://example.com

Pengujian log

sudo tail -f /var/log/squid/access.log

Pengujian firewall

  1. Dengan proxy aktif, buka situs.

  2. Hapus pengaturan proxy dari client.

  3. Coba membuka situs kembali.

  4. Jika direct access diblokir, situs seharusnya tidak dapat diakses.

  5. Aktifkan kembali proxy.

  6. Pastikan akses kembali normal.


Pemecahan Masalah

1. Client tidak dapat terhubung ke Squid

Periksa:

sudo systemctl status squid
sudo ss -lntp | grep 3128
sudo ufw status

Dari client:

ping 192.168.10.2

Kemudian:

curl -x http://192.168.10.2:3128 http://example.com

2. Squid gagal restart

Periksa sintaks:

sudo squid -k parse

Lihat log:

sudo journalctl -u squid --no-pager -n 100
sudo tail -n 100 /var/log/squid/cache.log

3. Muncul Access Denied

Periksa:

  • alamat IP client;

  • ACL localnet;

  • urutan http_access;

  • daftar domain;

  • dan aturan autentikasi.

Contoh:

acl localnet src 192.168.10.0/24
http_access allow localnet
http_access deny all

4. HTTP berjalan tetapi HTTPS gagal

Pastikan explicit proxy dikonfigurasi untuk HTTP dan HTTPS pada alamat dan port yang sama.

Jangan melakukan redirect port 443 menuju proxy HTTP biasa.

5. Browser bekerja tetapi aplikasi lain gagal

Tidak semua aplikasi mendukung proxy sistem. Beberapa aplikasi:

  • mengabaikan proxy;

  • menggunakan QUIC;

  • menggunakan port lain;

  • menerapkan certificate pinning;

  • atau membutuhkan konfigurasi khusus.

6. Internet lambat setelah menggunakan proxy

Periksa:

  • penggunaan CPU;

  • RAM;

  • disk;

  • DNS;

  • access log;

  • ukuran cache;

  • kecepatan NIC;

  • dan jumlah koneksi.

Perintah:

top
free -h
df -h
ip -s link

7. IP client tidak terlihat pada transparent proxy

Hal ini dapat terjadi karena source NAT digunakan agar jalur balik melewati MikroTik. Gunakan subnet server terpisah untuk mempertahankan alamat sumber client dengan desain routing yang lebih baik.


Kapan Menggunakan Web Proxy MikroTik?

Web Proxy MikroTik cocok digunakan untuk:

  • praktikum dasar;

  • jaringan kecil;

  • demonstrasi transparent HTTP proxy;

  • mempelajari access rule;

  • memahami caching;

  • dan mengenalkan konsep filtering URL.

Web Proxy MikroTik kurang cocok untuk:

  • ratusan pengguna;

  • log jangka panjang;

  • autentikasi kompleks;

  • cache berukuran besar;

  • laporan pengguna;

  • filtering modern berskala besar;

  • dan inspeksi aplikasi internet modern.


Kapan Menggunakan Squid Ubuntu Server?

Squid lebih tepat digunakan ketika:

  • jumlah pengguna lebih banyak;

  • diperlukan log terpusat;

  • diperlukan autentikasi;

  • dibutuhkan ACL yang lebih fleksibel;

  • diperlukan kelompok pengguna;

  • server mempunyai penyimpanan lebih besar;

  • proxy harus dipisahkan dari router;

  • dan administrator ingin mengembangkan monitoring lebih lanjut.


Perbandingan Web Proxy MikroTik dan Squid

Aspek MikroTik Web Proxy Squid Ubuntu
Instalasi Sudah tersedia di RouterOS Memerlukan Ubuntu Server
Pengelolaan Sederhana Lebih kompleks
Beban perangkat Membebani router Ditangani server khusus
ACL Dasar Lebih fleksibel
Autentikasi Terbatas Lebih lengkap
Logging Terbatas oleh router Lebih mudah disimpan
Kapasitas cache Bergantung RouterBoard Bergantung server
Skalabilitas Jaringan kecil Jaringan menengah-besar
Praktikum pemula Sangat cocok Cocok setelah memahami dasar
Jaringan produksi Terbatas Lebih direkomendasikan

Rekomendasi Implementasi untuk Sekolah

Arsitektur yang disarankan adalah:

Internet
   |
MikroTik
   |
   +-- VLAN Guru
   |
   +-- VLAN Siswa
   |
   +-- VLAN Server
          |
       Ubuntu Squid

MikroTik menangani:

  • pemisahan VLAN;

  • routing;

  • DHCP;

  • hotspot;

  • firewall;

  • NAT;

  • queue;

  • dan akses antarjaringan.

Squid menangani:

  • autentikasi proxy;

  • filtering;

  • access log;

  • kebijakan guru dan siswa;

  • dan caching konten yang sesuai.

Tambahkan:

  • DNS filtering;

  • sinkronisasi waktu;

  • remote syslog;

  • backup;

  • monitoring server;

  • dan dokumentasi kebijakan akses.


Contoh Kebijakan Akses Sekolah

Guru

  • dapat menggunakan internet melalui Squid;

  • akses dicatat;

  • tidak dibatasi oleh daftar siswa;

  • tetap dibatasi terhadap situs berbahaya.

Siswa

  • wajib menggunakan proxy;

  • akses hanya pada jam pembelajaran;

  • domain tertentu dapat diblokir;

  • aktivitas dicatat sesuai kebijakan sekolah;

  • aplikasi yang dibutuhkan pembelajaran dimasukkan ke daftar pengecualian.

Administrator

  • dapat mengelola MikroTik;

  • dapat mengelola Ubuntu Server;

  • dapat membaca log sesuai kewenangan;

  • bertanggung jawab terhadap keamanan data log.

Tamu

  • menggunakan jaringan atau VLAN terpisah;

  • tidak boleh mengakses proxy internal tanpa izin;

  • tidak dapat mengakses jaringan server.


Etika dan Privasi Penggunaan Proxy

Proxy memungkinkan administrator mencatat aktivitas jaringan. Kemampuan tersebut harus digunakan secara bertanggung jawab.

Organisasi sebaiknya:

  1. Memberi tahu bahwa akses internet dicatat.

  2. Menjelaskan tujuan pencatatan.

  3. Membatasi akses ke log.

  4. Menentukan masa penyimpanan log.

  5. Tidak menggunakan log untuk kepentingan pribadi.

  6. Melindungi identitas pengguna.

  7. Membuat prosedur ketika terjadi pelanggaran.

  8. Menyesuaikan kebijakan dengan aturan yang berlaku.

  9. Menghindari pemeriksaan isi komunikasi pribadi tanpa dasar.

  10. Menggunakan monitoring hanya untuk keamanan dan operasional.

Proxy bukan alat untuk mengintip pengguna. Proxy adalah alat pengelolaan jaringan yang harus diterapkan dengan prinsip keamanan, transparansi, dan proporsionalitas.


Kesimpulan

Proxy masih relevan di era modern, tetapi bukan lagi sekadar alat untuk mempercepat akses halaman web.

Peran proxy saat ini lebih berfokus pada:

  • kontrol akses;

  • autentikasi;

  • filtering;

  • pencatatan;

  • penerapan kebijakan;

  • dan pengamanan jalur akses internet.

Web Proxy MikroTik cocok digunakan sebagai media pembelajaran dan untuk jaringan kecil. Fitur tersebut membantu siswa memahami bagaimana permintaan HTTP dapat diarahkan, diperiksa, diizinkan, atau ditolak.

Untuk jaringan yang lebih besar, Squid pada Ubuntu Server lebih tepat karena mempunyai kemampuan ACL, logging, autentikasi, pengelompokan pengguna, dan pengelolaan cache yang lebih fleksibel.

Arsitektur terbaik adalah memisahkan fungsi:

MikroTik:
Routing + Firewall + NAT + DHCP + VLAN + Bandwidth

Ubuntu Squid:
Proxy + ACL + Authentication + Logging + Filtering

Administrator juga harus memahami bahwa proxy biasa tidak dapat membaca isi HTTPS. Oleh karena itu, proxy perlu dipadukan dengan firewall, DNS filtering, segmentasi jaringan, endpoint security, dan kebijakan penggunaan internet.

Dengan konfigurasi yang tepat, kombinasi MikroTik dan Ubuntu Server dapat menjadi laboratorium pembelajaran jaringan yang lengkap sekaligus fondasi untuk membangun sistem pengendalian akses internet di sekolah maupun organisasi.


Pertanyaan Evaluasi

  1. Apa yang dimaksud dengan proxy server?

  2. Mengapa proxy masih relevan?

  3. Jelaskan perbedaan firewall dan proxy.

  4. Apa perbedaan forward proxy dan reverse proxy?

  5. Apa perbedaan explicit proxy dan transparent proxy?

  6. Mengapa port HTTPS tidak boleh langsung diarahkan ke Web Proxy HTTP?

  7. Apa fungsi access rule pada Web Proxy MikroTik?

  8. Apa fungsi Squid pada Ubuntu Server?

  9. Mengapa proxy eksternal sebaiknya ditempatkan pada VLAN server?

  10. Apa fungsi ACL dalam Squid?

  11. Mengapa urutan http_access penting?

  12. Apa fungsi http_access deny all?

  13. Apa risiko membuka port proxy ke internet?

  14. Apa fungsi access log Squid?

  15. Jelaskan pembagian tugas antara MikroTik dan Ubuntu Server.

Tugas Praktik

Buatlah sistem proxy dengan ketentuan berikut:

  1. MikroTik menjadi gateway internet.

  2. Jaringan LAN menggunakan 192.168.10.0/24.

  3. Ubuntu Server menggunakan IP 192.168.10.2.

  4. Squid menggunakan port 3128.

  5. Client menggunakan proxy secara explicit.

  6. Hanya jaringan LAN yang boleh menggunakan Squid.

  7. Buat daftar minimal tiga domain uji yang diblokir.

  8. Aktifkan access log.

  9. Buat firewall MikroTik untuk melindungi server.

  10. Dokumentasikan topologi, konfigurasi, pengujian, dan hasilnya.

Tugas Pengembangan

Kembangkan praktikum dengan:

  • VLAN guru;

  • VLAN siswa;

  • VLAN server;

  • autentikasi pengguna;

  • aturan berdasarkan jam;

  • daftar domain;

  • remote logging;

  • dashboard monitoring;

  • dan caching pembaruan Ubuntu.

Konfigurasi di atas mengacu pada konsep Web Proxy RouterOS, NAT dan firewall MikroTik, serta instalasi dan ACL Squid. Dokumentasi MikroTik menyebut Web Proxy RouterOS menangani HTTP dan HTTP-proxy, sedangkan dokumentasi Ubuntu menjelaskan Squid sebagai layanan filtering dan caching yang dapat membantu optimasi bandwidth dan performa. (MikroTik Help)