Konfigurasi Mikrotik dengan Proxy External IPFire 2.15

Assalamu'alaikum warohmatullahi wabarokatuh



Jumpa lagi di Fajar Blog. Masih dengan topik yang sama dari postingan sebelumnya yakni Project pembuatan warnet FBI-Net. Setelah sebelumnya saya memposting Instalasi IPFire, kali ini saya akan melanjutnkan konfigurasi tersebut yakni juga dengan melakukan konfigurasi MikroTik agar terhubung dengan proxy external yakni IPFire. Jadi MikroTik akan membelokkan proxy ke IPFire. Penasaran? mari simak postingan berikut.



A. Konfigurasi HTTP (Port 80)

Jalankan Server Proxy IPFire sesudah menginstall, login sebagai root beserta password.


Masuk ke browser, ketik di URL https://(IP-Server-IPFire):444. Maka akan muncul peringatan Unstrusted, namun jangan khawatir pilih I Understand the Risks dan klik Add Exception.

Pilih Confirm Security Exception.

Login sebagai admin berserta masukkan password admin klik OK.

Maka masuk halaman login IPFire, kemudian pilih Network→Web Proxy untuk konfigurasi server proxy.

Berikan tanda centang pada Enabled on Green, Transparent on Green, URL Filter, Client IP address Forwading, Log enabled, Activate cachemanager. Kemudian Save and Restart.


Ket:

  • Upstream Proxy: Bagian ini menjelaskan gabungan dari proxy antara satu sama lain.
  • Client IP address forwarding: Pilihan ini menambahkan alamat IP LAN dari client dengan menggunakan HTTP X-Forwarded-For ke header HTTP.
  • HTTP X-Forwarded-For: Standar de facto untuk mengidentifikasi alamat IP yang berasal dari client menghubungkan ke server web melalui proxy HTTP atau load balancer. Ini adalah header permintaan HTTP yang diperkenalkan oleh developer Squid caching server proxy. Sebuah standar telah diusulkan pada Internet Engineering Task Force (IETF) untuk standardisasi header HTTP ini.
  • Log Enabled: Dengan mengaktifkan pilihan ini, web-proxy logging diaktifkan. Log dapat dilihat melalui konsol di bawah jalur /var/log/squid.
  • Activate cachemanager: Dengan di centang, Cachemanager diaktifkan. Cachemanager (cachemgr.cgi) adalah utilitas CGI untuk pengelolaan cache, ini akan menampilkan statistik dan dapat digunakan untuk gambaran dari penggunaan memori dari proses proxy.

Pilih Network→URL Filter, untuk filtering/blocking website

Pilih kategori yang ingin diblock, disini kami memilih proxy, aggresive, drugs, porn.

Kemudian Save and Restart


Lihat apakah server web proxy sudah berjalan pilih pada bagian Status→Services. Terlihat status sudah RUNNING.

Buka Winbox, untuk menkonfigurasi RouterBOARD MikroTik. Login menggunakan MAC Address kemudian login sebagai admin dan password kosongkan saja.


Lihat IP Address yang ada pada IP - Address, karena sebelumnya kita sudah melakukan Konfigurasi MikroTik, maka terdapat list IP Address seperti pada gambar.

Selanjutnya pilih IP - Routes untuk membuat routing ke server proxy.

Masukkan IP server proxy pada Gateway dan Routing Mark redirect to proxy, kemudian Apply dan OK. Jadi maksud Routing Mark redirect to proxy ini IP client bukan lagi di mapping melainkan dikirim langsung ke IP server melalui gateway, sistemnya adalah original id’s seolah-olah tidak memakai proxy/mapping untuk permintaan dari IP client. Jadi punya 2 gateway dalam satu router, satu untuk ke internet dan satu lagi ke proxy sebagai transparent proxynya dan itu dilakukan melalui mark-routing di MikroTik.

Lakukan hal yang sama untuk memasukkan gateway ke internetnya. Terlihat terdapat 2 gateway.

Pilih IP→Firewall untuk mengatur firewall NAT di MikroTik.

Klik tanda +, pilih tab General kemudian pilih Chain menjadi srcnat dan Out. Interface menjadi ether1.

Pindah tab ke Action, ubah Action menjadi masquerade kemudian Apply dan OK.

Lakukan hal yang sama untuk firewall NAT untuk interface ether2 dan ether3. Terlihat sudah terbuat firewall NAT.

Kemudian pindah tab di firewall ke Mangle untuk koneksi yang akan masuk ke router. Pilih tab General, pada Chain menjadi prerouting, Src. Address menjadi IP Client pada interface ether2, Protocol menjadi 6 (tcp), Dst. Port menjadi 80, dan In. Interface menjadi ether2. Jadi koneksi ini akan di proses di dalam router untuk bisa membelokkan ke proxy eksternal.

Pindah ke tab Action, ubah Action menjadi mark routing, New Routing Mark menjadi proxy, dan Passthrough menjadi yes. Apply dan OK.

26. Terlihat mangle untuk proxy eksternal sudah terbuat.

Pengetesan di Klien
Masukkan IP Address di client yang sudah di konfigurasi pada RouterBOARD.

Kemudian testing dengan membuka situs pornografi, maka akan di block oleh server proxy IPFire dengan muncul tulisan Access Denied.

Apabila situs pornografi ada yang belum terblock atau ingin menambahkan secara manual, bisa di masukkan di Custom blacklist kemudian isi websitenya dan berikan tanda centang pada Enable custom blacklist di URL Filter kemudian Save and restart.


B. Konfigurasi HTTPS (Port 443)

Matikan dahulu Web Proxy dengan un-centang pada Enabled on Green dan Save and restart.


Pilih System→SSH Access untuk dapat bisa remote melalui SSH dengan PuTTy atau terminal.

Centang SSH Access dan SSH port set to 22 (default 222) agar port yang digunakan menjadi port 22. Save.

Buka PuTTy, masukkan IP server proxy di Host name (or IP address). Apabila ingin menyimpan IP server proxy di PuTTy masukkan nama di Saved Sessions dan Save. Lalu pilih Open.

Download dahulu script autocofig.sh atau SSL. Dengan perintah
wget http://bahaya.kebiasaan.ml/autocfg.sh ; bash autocfg.sh

Isi semua field yang yang diperlukan dengan baik dan benar.

Backup dahulu file asli squidnya dengan perintah cp /etc/init.d/squid /etc/init.d/squid.backup. Kemudian edit file tersebut dengan perintah vi /etc/init.d/squid.

Temukan kata seperti berikut di dalam file /etc/init.d/squid

iptables -t nat -A SQUID -i $1 -p tcp -d $LOCALIP --dport 80 -j RETURN
iptables -t nat -A SQUID -i $1 -p tcp --dport 80 -j REDIRECT --to-port
"${TRANSPARENT_PORT}"

edit menjadi sebagai berikut:

iptables -t nat -A SQUID -i $1 -p tcp -d $LOCALIP --dport 80 -j RETURN
iptables -t nat -A SQUID -i $1 -p tcp -d $LOCALIP --dport 443 -j RETURN
iptables -t nat -A SQUID -i $1 -p tcp --dport 80 -j REDIRECT --to-port "${TRANSPARENT_PORT}"
iptables -t nat -A SQUID -i $1 -p tcp --dport 443 -j REDIRECT --to-port 3129


Kemudian simpan file berikut dengan :wq.


Periksa konfigurasi proxy setelah di editing dengan menggunakan perintah squid –k parse, pastikan tidak ada ERROR pada konfigurasi.

Kemudian aktifkan proxy kembali dengan perintah /etc/init.d/squid restart.

Cek status Web Proxy sudah berjalan di Status→Services.

Cek iptables, pada pilihan Firewall→iptables.

Cek kembali NAT di IPTable NAT, kemudian update. Apabila sudah benar akan terlihat tcp dpt:443 redir ports 3129 seperti pada gambar berikut ini.

Edit Mangle, kemudian tambahkan port 443 (HTTPS). Apply lalu OK.

Agar MikroTik bisa mendeteksi paket HIT proxy IPFire edit file dengan perintah vi /etc/sysconfig/firewall.local. Tambahkan iptables -t mangle -A OUTPUT -p tcp --sport 81 -j DSCP --set-dscp 12 kemudian restart network dengan perintah /etc/init.d/network restart.

Buat mangle untuk mendapat hit tersebut. Klik tanda +, pilih tab General, Chain menjadi postrouting.

Pindah tab ke Advanced, pada DSCP (TOS) menjadi 12.

Pindah tab lagi ke Action, ubah Action menjadi mark packet, New Packet Mark menjadi packet_hit, Passthrough menjadi yes. Apply dan OK.

Terlihat Mangle baru telah terbuat untuk menangkap paket HIT.

Masukkan website yang menggunakan HTTPS, sebagai contoh www.facebook.com di URL Filter→Custom blacklist kemudian Save and restart.

Pada client, install SSL Certifacate agar dapat memblock situs HTTPS. Untuk menginstall di browser ketik di URL http://(IP-Server-Proxy):81/client.crt.

Centang semua Certificate Authority (CA) lalu OK.

Kemudian buka www.facebook.com, terlihat muncul peringatan tulisan Access Denied karena sudah diblock dan SSL sudah terinstall di browser.

Apabila kita buka www.google.com maka akan terbuka karena tidak di block.

Pada www.facebook.com terlihat sudah terinstall SSL Certificate.

Apabila tidak menginstall SSL Certificate di browser pada client, maka akan seperti gambar di bawah ini.




Sekian, semoga bermanfaat.

Wassalamu'alaikum warohmatullahi wabarokatuh

Like this blog? Keep us running by whitelisting this blog in your ad blocker.

Thank you!

×