Pengaturan Proxy Eksternal Dengan Mikrotik

Mikrotik routerboard memiliki built-in proxy didalamnya, namun memiliki kendala yakni keterbatasan kapasitas penyimpanan. Oleh karena itu, kebanyakan administrator jaringan yang menggunakan mikrotik akan menggunakan proxy eksternal untuk mengatasi kendala ini.

Program atau daemon yang paling banyak digunakan untuk proxy eksternal adalah squid atau turunannya (lusca). Ada beberapa keuntungan dalam penggunaan squid proxy eksternal antara lain :

  1. Mudah untuk di sesuaikan konfigurasinya sesuai dengan kebutuhan.
  2. Penggunaan access control lists (ACL) yang dapat digunakan untuk keperluan tertentu.
  3. Squid (khususnya versi 2.7) dapat “dipersenjatai” dengan url redirector. Pada suatu kondisi, redirector dapat digunakan untuk menangani akses konten dinamik (seperti video Youtube).
  4. Kapasitas penyimpanan yang lebih besar karena pada umumnya komputer menggunakan harddisk sebagai media penyimpanan.

Dalam posting ini, saya akan sedikit menjabarkan integrasi proxy eksternal dengan mikrotik menggunakan pengaturan NAT atau mangle dengan diagram jaringan seperti gambar berikut ini :

ext proxy mikrotik

Keterangan :

  • IP address mikrotik menuju proxy : 192.168.90.1
  • IP address proxy menuju mikrotik : 192.168.90.2
  • IP address klien-klien : 192.168.1.0/24

Skenario pertama : menggunakan NAT.

Kita dapat menggunakan NAT untuk “membelokkan” akses browsing klien (port 80/HTTP) menuju IP dan port proxy eksternal. Monggo di copas script berikut ini :

/ip firewall address-list
add address=192.168.90.0/24 list=ip-proxy
/ip firewall nat
add action=dst-nat chain=dstnat comment="transparent proxy" dst-port=80 protocol=tcp src-address-list=!ip-proxy to-addresses=192.168.90.2 to-ports=3128

Keterangan :

Terlebih dahulu kita mendeskripsikan kelas IP address yang digunakan untuk komunikasi antara mikrotik – proxy.

/ip firewall address-list
add address=192.168.90.0/24 list=ip-proxy

Kemudian, akses browsing klien (HTTP port 80) kita belokkan menuju proxy eksternal port 3128

/ip firewall nat
add action=dst-nat chain=dstnat comment=”transparent proxy” dst-port=80 protocol=tcp src-address-list=!ip-proxy to-addresses=192.168.90.2 to-ports=3128

Skenario kedua : menggunakan mangle.

Saya secara pribadi menyukai penggunaan skenario kedua ini. Berikut script nya :

/ip route
add check-gateway=ping distance=1 gateway=192.168.90.2 routing-mark=to-ext-proxy
/ip firewall mangle
add action=mark-routing chain=prerouting comment="mark routing to proxy" dst-port=80 new-routing-mark=to-ext-proxy protocol=tcp src-address=192.168.1.0/24

Keterangan :

Sebelumnya, tambahkan route menuju proxy eksternal untuk routing yang akan kita tandai di mangle.

/ip route
add check-gateway=ping distance=1 gateway=192.168.90.2 routing-mark=to-ext-proxy

Setelah itu, akses browsing klien kita tandai dengan routing mark pada mangle, sehingga semua akses browsing akan “bermuara” langsung ke proxy eksternal sebagaimana telah kita tentukan sebelumnya pada route.

/ip firewall mangle
add action=mark-routing chain=prerouting comment=”mark routing to proxy” dst-port=80 new-routing-mark=to-ext-proxy protocol=tcp src-address=192.168.1.0/24

Catatan :

Jangan lupa menambahkan pengaturan pada proxy eksternal agar akses klien dapat berjalan dengan baik antara lain menentukan default gateway proxy dan mengizinkan akses port 3128 pada iptables. Simpan baris-baris berikut ini kedalam file /etc/rc.local :

route add default gateway 192.168.90.1
iptables -A PREROUTING -t nat -j REDIRECT -p tcp -s 192.168.1.0/24 -d 0/0 --dport 80 --to-ports 3128
iptables -A INPUT -p tcp -s 0.0.0.0/0 -d 192.168.90.2 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -s 192.168.90.2 --sport 3128 -d 0.0.0.0/0 -m state --state ESTABLISHED -j ACCEPT

Semoga bermanfaat…

About Fajar R. 297 Articles
Seseorang yang antusias terhadap dunia internet, IT, networking dan komputer. Tipikal introvert tapi suka berorganisasi dan adventuring ke tempat-tempat baru.

22 Komentar

  1. mas saya mau tanya,yang dimaksud squid proxy itu pke os apa yah?maaf saya masih mau belajar proxy,soalnya yang saya ketahui.ubuntu dan clear os,dan settingan di atas apa bisa dikonfigurasikan di clearos

    • squid proxy biasanya di instal pada sistem berbasis *nix seperti linux atau bsd. clearos dan ubuntu sendiri termasuk kedalam keluarga besar linux.
      pengaturan seperti diatas bisa di gunakan untuk clearos.

    • kalo mas pake traffic shaper pihak ketiga seperti webhtb atau mikrotik, qos kudu di setting juga untuk menghindari perlambatan untuk object yg hit di proxy.

  2. mas, alhamdulillah aku udah bisa install ipfire single interface di virtualbox, lagi belajar membuat partisi untuk cache dengan ipfire, caranya gimana ya mas??

    • default nya cache_dir ipfire ada di /var/log/cache (otomatis dibuatkan sewaktu instalasi). untuk menambahkan cache_dir lainnya, silakan tambahkan di /var/ipfire/proxy/advanced/acls/include.acl

  3. mas fajar.. melalui tutorial mas fajar bertambah ilmu..
    saya ada problem mas mengenaai mikrotik
    begini topologi saya :
    Inet–>Modem–>RB 750–>Switch–> Client.
    Eth 1 : 192.168.1.2(Mikrotik –> Modem)
    Eth 2 : 192.168.2.1 (Mikrotik –> lan)
    Eth 3 : 192.168.3.1( Mikrotik –> wan (ap 192.168.3.2)

    Permasalahan :
    1.Ping dari Proxy ke Mikrotik lancar tapi dari mikrotik ke
    Proxy RTO ( gagal terus padahal udah di NAT sesuai tutorial
    Mas fajar ).
    2.proxy tidak mau Redirect padahal sudah di set tranparent di
    proxy maupun di mikrotik ( kalau pakai manual di browser
    udah bisa )
    Mohon pencerahanya …..syukur2 ada eboknya.(anithasyaika_at_yahoo_dot_co_dot_id)

    • kalo nggak salah rules untuk transparent proxy udah aktif pada saat advanced proxy nya aktif. kesimpulannya, bisa di implementasikan seperti demikian.

  4. wew lagi Online nih Om kayak na yah…….dah muter2 om blom nemu – nemu.

    oh iyah saya dah pake mangle yang om kasih nih PROXY sih ngeHIT pi napa yah pas lagi hit gituh PB ngelg ping jadi kuning ….

     

    • Gan lapor ngehit dah ga ngelag ………
      sekarang kendala saya ga bisa buka website gemscool kebuka bisa untuk login di web nya gemscool ga masuk2…..
      kenapa yah ?

      maksih

  5. Makasih Om ,WORK 100%  nih……semoga di kasih kesehatan selalu….amien

    saya mo tanya nih kalo failover proxy external nya gimana yah ,saya dah coba pake  netwatch ituh kalo PC proxy mati doang,nah yg jadi kendala kalo squid nya yg tiba2 stop atau error ,saya coba juga pake tool fetch,posisi web apache dah jalan saya test squid nya di bikin stop ga jalan.ada ga Om clue nya

    Thank’s

      • dah muter2 om blom nemu – nemu.

        oh iyah saya dah pake mangle yang om kasih nih PROXY sih ngeHIT pi napa yah pas lagi hit gituh PB ngelg ping jadi kuning ….

  6. terima kasih mas fajar.. melalui tutorial mas fajar membuat banyak orang bertambah ilmu..
    saya ada problem mas mengenaai squid dan mikrotik
    begini topologi saya :
    Inet–>Modem (bridge)–>RB 750(Dial pppoe)–>Switch–> Client.
    Eth 1 : 192.168.1.2(Mikrotik –> Modem)
    Eth 2 : 192.168.2.1 (Mikrotik –> Clientt)
    Eth 3 : 192.168.3.1( Mikrotik –> Proxy Eksternal)
    IP CILENT : 192.168.2.2 – 192.168.2.255
    IP PROXY SQUID : 192.168.3.2
    Permasalahan :
    1.Ping dari Proxy ke Mikrotik lancar tapi dari mikrotik ke
    Proxy RTO ( gagal terus padahal udah di NAT sesuai tutorial
    Mas fajar ).
    2.proxy tidak mau Redirect padahal sudah di set tranparent di
    proxy maupun di mikrotik ( kalau pakai manual di browser
    udah bisa )
    3. status Squid sudah running tapi kok ga ada hit pada Log nya.
    dan saya lihat di squidclient mgr:client_list begini
    keteranganya mas:
    root@proxyku:~# mgr:client_list
    mgr:client_list: command not found
    root@proxyku:~# mgr:client_list
    mgr:client_list: command not found
    root@proxyku:~# squidclient mgr:client_list
    HTTP/1.0 200 OK
    Server: squid/2.7.STABLE9
    Date: Tue, 07 May 2013 14:20:22 GMT
    Content-Type: text/plain
    Expires: Tue, 07 May 2013 14:20:22 GMT
    X-Cache: MISS from proxy
    X-Cache-Lookup: MISS from proxy:3128
    Via: 1.0 proxy:3128 (squid/2.7.STABLE9)
    Connection: close

    Cache Clients:
    Address: 127.0.0.1
    Name: 127.0.0.1
    Currently established connections: 1
    ICP Requests 0
    HTTP Requests 0

    Address: 192.168.2.100
    Name: 192.168.2.100
    Currently established connections: 3
    ICP Requests 0
    HTTP Requests 22
    TCP_MISS 22 100%

    TOTALS
    ICP : 0 Queries, 0 Hits ( 0%)
    HTTP: 22 Requests, 0 Hits ( 0%)

    Mohon mas fajar untuk membantu saya. terima kasih..

    • pertama, seharusnya nya dari proxy juga bisa ngeping ke mikrotik, karena dari mikrotik bisa nge-ping ke proxy nya. apakah ada implementasi firewall atau sejenisnya di mikrotik? dan apakah dari proxy bisa ngeping keluar (misalnya yahoo.com) dan mengakses internet dengan baik?

      kedua, kalo di setting manual di browser bisa, berarti pengaturan iptables nya belum benar.

      ketiga, klien yg akses sepertinya baru 1 orang. biarkan proxy di akses banyak user agar cache nya terisi. saat cache udah mulai terisi, maka potensi untuk hit juga akan terus naik. demikian dan semoga membantu.

      • mf mas fajar baru reply..
        koneksi dari proxy ke internet lancar lancar mas..kalau saya rasa ini nyangkut di MT. terbukti ping dari MT ke proxy ga bisa…pengaturan iptables di proxy sudah saya sesuaikan dengan kondisi jaringan saya mas..kalau saya pakai /ip route
        add check-gateway=ping distance=1 gateway=192.168.3.2 routing-mark=to-ext-proxy
        kenapa ya mas selalu “unreachable”
        ataukah karena saya pakai PPPOE dari MT ya mas.. mohon kiranya diberikan pencerahan. terima kasih..

  7. Salam kenal gan.
    Kenapa patch game grandchase dan elsword jika melalui proxy tidak bisa y?
    Tapi kalau proxy sy disable, baru patchnya berjalan dengan baik.
    Mohon bantuannya.

    Tks.

Leave a Reply

Alamat email Anda tidak akan dipublikasikan.


*