VPN Tunneling Menggunakan Mikrotik dan FreeBSD Hallo para blogger sekalian, Di pertemuan sebelumnya, saya sudah berbagi cara membuat VPN tunnel menggunakan IPIP di Mikrotik dengan metode Mikrotik to Mikrotik, kali ini kita akan coba hal yang sama, hanya saja metodenya dari Mikrotik ke FreeBSD, Mengulas kembali tentang IPIP Tunnel metode ini digunakan unutuk menghubungkan jaringan LAN biasa dikantor satu yang akan dihubungkan dengan jaringan LAN biasa di kantor yang lain di penjuru dunia kalau anda butuh bayangan untuk menggambarkan seperti apa IPIP atau VPN itu, sudah paham? Jika sudah, mari kita lanjutkan ke tahap berikutnya, yaitu topologi yang akan kita bahas, berikut topologi yang akan kita bahas dan akan kita praktekan
Penjelasan 1. Network Balikpapan IP Public : 203.80.9.60/29 (Bisa di sesuaikan dengan IP Public yang diberi oleh ISP anda) IP LAN : 132.92.1.1/24 (Bisa di sesuaikan juga) 2. Network Jakarta IP Public : 203.80.9.162/29 (lihat point no 1) IP LAN : 172.16.0.1/24 3. Penggunaan VPN Anggap saja, user di Balikpapan mempunyai server yang ada di Jakarta, dan kita harus menghubungkan LAN Jakarta dengan LAN Balikpapan supaya semua user Balikpapan bisa mengakses server yang ada di Jakarta,
Sudah paham semua? Jika belum, silahkan hubungi saya langsung, saya selalu terbuka untuk semua pertanyaan anda yang berhubungan dengan tutorial ini, jika sudah jelas, mari kita lanjutkan dengan tahap konfigurasi di masing-masing router, berikut parameter yang akan di konfigurasi. a. b. c. d.
Setting IP address dan Gateway (Public dan LAN) Setting NAT ke interface Public (selain VPN) Setting Interface VPN + IP Address + Routing Statik Test koneksi VPN
a.
SETTING IP ADDRESS Di sini adalah hal terpenting untuk menghubungkan 2 network, yaitu harus mempunyai IP, berpedoman dengan topologi yang ada di gambar, berikut konfigurasi di masing-masing router 1.
Balikpapan Router (MIKROTIK RB433)
/ip address add address=203.80.9.60/29 interface=eth0 comment=Public disabled=no /ip address add address= 132.92.1.1/24 interface=eth1 comment=Local disabled=no /ip route add gateway=203.80.9.57 check-gateway=ping comment=”Default Public” 2.
Jakarta Router (FreeBSD) Karena ini router berbasis unix, maka jika di setting via terminal tidak akan permanent, maka harus dimasukan ke script lokalnya, berikut caranya Harus login sebagai root, atau user yang mempunyai akses privilege full access
$ sudo su # ee /etc/rc.conf Lalu tambahkan config seperti dibawah ini, untuk flag interface dan ip address bisa di sesuaikan dengan masing2 router
ifconfig_xl0="inet 203.80.9.162 netmask 255.255.255.240" ifconfig_sis0="inet 172.16.0.1 netmask 255.255.255.0" defaultrouter="203.80.9.161" jika sudah silahkan save dan keluar, setelah itu restartlah networkingnya dengan cara berikut
# /etc/netstart Lalu liat ip statusnya, apakah berubah atau tidak, jika berubah akan seperti berikut router# ifconfig sis0: flags=8843
metric 0 mtu 1500 options=82008 ether 00:11:2f:60:68:a3 inet 172.16.0.1 netmask 0xffffff00 broadcast 172.16.0.255 media: Ethernet autoselect (100baseTX ) status: active xl0: flags=8843 metric 0 mtu 1500 options=82009 ether 00:01:02:67:2a:cc inet 203.80.9.162 netmask 0xfffffff0 broadcast 203.80.9.175 media: Ethernet autoselect (100baseTX ) status: active plip0: flags=8810 metric 0 mtu 1500 pflog0: flags=0<> metric 0 mtu 33200 pfsync0: flags=0<> metric 0 mtu 1460 syncpeer: 224.0.0.240 maxupd: 128
lo0: flags=8049 metric 0 mtu 16384 options=3 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 nd6 options=3
router# netstat -r Routing tables Internet: Destination Default
Gateway
Flags
203.80.9.161 UGS
Refs
32
932950
Use
Netif Expire
xl0
b. Setting NAT ke interface public (selain VPN) Nat ini berfungsi sebagai translation network ke ip public, jadi provider tidak akan menambah routing ke network internal anda, cukup hingga ip public masing-masing, disini saya hanya akan nat ke arah public saja, dan untuk kea rah vpn tidak akan di NAT 1.
Balikpapan Router (Mikrotik RB433)
/ip firewall nat add chain=srcnat src-address=132.92.1.0/24 outinterface=eth0 action=masquerade comment="NAT Public" 2.
Jakarta Router (FreeBSD) Disini saya menggunakan PF untuk NAT networknya, jika anda menggunakan ipnat, atau iptables,bisa di sesuaikan saja, berikut step by step NAT di FreeBSD Harus login sebagai root, atau user yang mempunyai akses privilege full access Edit parameter di /etc/rc.conf Edit script PF, Script PF biasanya ada di /etc/pf.conf Enabling PF service, Reload PF service
$ sudo su # ee /etc/rc.conf Tambahkan parameter berikut
pf_enable="YES" pf_rules="/etc/pf.conf" pf_program="/sbin/pfctl" pf_flags=""
lalu simpan dan keluar
# ee /etc/pf.conf Lalu masukan script berikut
nat on xl0 from 172.16.0.0/24 to any xl0
-> 203.80.9.162/32
-> bisa disesuaikan dengan flag interface public masing-masing
203.80.9.162/32
-> bisa disesuaikan dengan IP public masing-masing
172.16.0.0/24 -> bisa disesuaikan dengan alokasi untuk ip local anda Jika sudah, simpan dan keluar
# pfctl –e (enabling pf service) # /etc/rc.d/pf start (start pf service) atau # /etc/rc.d pf reload (jika ada konfigurasi yang berubah di pf.conf dan ingin mengaplikasikannya langsung)
c. Setting Interface VPN + IP Address + Routing Statik Disini adalah hal terpenting kedua, yaitu membuat interface tunnelingnya, berikut caranya 1.
Balikpapan Router (Mikrotik RB433) – Menggunakan IPIP
/ interface ipip add name=ipip1 local-address=203.80.9.60 remoteaddress=203.80.9.162 mtu=1500 comment=VPN-Jakarta disabled=no /ip address add address=192.168.233.1/30 interface=ipip1 comment="p2p vpn" ip route add dst-address=172.16.0.0/24 gateway=192.168.233.2 comment="Local Jakarta" ipip1
-> lihat topologi, bisa di sesuaikan namanya
203.80.9.60
-> ini ip public di Mikrotik, tolong sesuaikan dengan ip public anda
203.80.9.162 -> ini ip public di FreeBSD, tolong sesuaikan dengan ip public anda 192.168.233.1 -> ip point to point yang ada di Mikrotik, lihat topologi untuk detailnya 192.168.233.2 -> ip point to point yang ada di FreeBSD, lihat topologi untuk detailnya 172.16.0.0/24 -> network Jakarta, lihat topologi untuk detailnya
/interface ipip
print detail (untuk melihat status interface yang telah kita buat)
Flags: X - disabled, R - running, D - dynamic 0
R
;;; VPN-Jakarta
name="ipip1" mtu=1500 local-address=203.80.9.60 remoteaddress=203.80.9.162 2.
Jakarta Router (FreeBSD) – Menggunakan GIF Seperti setting ip, di sini harus dimasukan ke dalam script, hanya saja disini scriptnya bisa di simpan dimana saja, tinggal terakhirnya saja di execute, berikut caranya Harus login sebagai root, atau user yang mempunyai akses privilege full access File baru /etc/gif.sh Tambahkan di /etc/rc.local Execute /etc/gif.sh
$ sudo su # ee /etc/gif.sh Script dibawah ini sebetulnya bersifat temporary, karena saat shutdown, lalu dinyalakan kembali, script ini harus dijalankan manual, dan ini hanya untuk mempermudah, lihat langkah berikutnya, kenapa harus ada file ini Lalu tambahkan script berikut
ifconfig gif3 create ifconfig gif3 tunnel 203.80.9.162 203.80.9.60 ifconfig gif3 192.168.233.2 192.168.233.1 ifconfig gif3 mtu 1500 route add -net 132.92.1.0/24 192.168.233.1 gif3
-> lihat topologi, bisa di sesuaikan
203.80.9.162 -> ini ip public di FreeBSD, tolong sesuaikan dengan ip public anda 203.80.9.60
-> ini ip public di Mikrotik, tolong sesuaikan dengan ip public anda
192.168.233.2 -> ip point to point yang ada di Freebsd, lihat topologi untuk detailnya 192.168.233.1 -> ip point to point yang ada di Mikrotik, lihat topologi untuk detailnya 132.92.1.0/24 -> network Balikpapan, lihat topologi untuk detailnya
# ifconfig gif3 (melihat aktif atau tidak interface tunnelnya) gif3: flags=8051 metric 0 mtu 1500 tunnel inet 203.80.9.162 --> 203.80.9.60 inet 192.168.233.2 --> 192.168.233.1 netmask 0xffffff00 options=1 # ee /etc/rc.local File ini akan di execute otomatis, saat FreeBSD anda baru dijalankan (startup), jadi jika ada masalah electrical atau sejenisnya yang membuat router FreeBSD anda mati, atau restart, maka script gif.sh tetap bisa running, tidak harus di execute manual, dengan ini, bisa sedikit meringankan beban kita sebagai Admin, script yang dimasukan adalah
/bin/sh /etc/gif.sh Jika sudah simpan dan keluar,
d. Test koneksi VPN, Semua konfigurasi diatas sudah selesai, dan akhirnya hanya tinggal tahap test koneksi vpn nya, jika masih ragu, silahkan coba ping dari router ke router terlebih dahulu, dengan test ping ke ip point to point nya (192.168.233.1 atau 192.168.233.2), jika sudah benar-benar yakin, anda bisa langsung test dari PC ke PC dengan beda network, contoh dari PC Balikpapan (132.92.1.242) ke PC Jakarta (172.16.0.232) berikut detail test nya Dari Balikpapan (192.168.233.1) ke Jakarta (192.168.233.2) (maaf di sensor, nama corporate)
Dari Jakarta (192.168.233.2) ke Balikpapan (192.168.233.1) (maaf di sensor, ip corporate)
Test dari PC Balikpapan (132.92.1.242) ke PC Jakarta (172.16.0.232)
Test dari PC Jakarta (172.16.0.232) ke PC Balikpapan (132.92.1.242)
Cukup sekian tutorial singkat ini, semoga bermanfaat bagi anda, dan jangan lupa tolong bagikan ini ke semua orang yang ingin belajar, kita harus saling berbagi ilmu, supaya yang semula tidak bisa menjadi bisa, dan yang bisa bisa menjelaskan hal yang bisa itu kepada yang bisa, jadi tidak ada lagi masyarakat Indonesia yang terbilang “bodoh” dalam hal ilmu, Jika ada saran, kesan, pesan, kritikan, bisa kirimkan contact saya langsung ke berbagai akses dibawah ini Nama Email YM Skype BBM Twitter Facebook
: Faishal Rizkika Naufhal : [email protected]; [email protected]; : tkj.faishal : vhayshal : 32138385 : fr_naufhal : Faishal Rizkika Naufhal