VPN ?? meh tgk sket

Ni time aku rajin sikit, sikit jer tak banyak mende tengah ada idea sebelum aku lupa baik aku share kat sini nanti kalau depan-depan aku lupa bley gak tengok-tengok balik ape yg aku tulis ni,

** !!!AMARAN!!! **

SEGALA MALAPETAKALA YANG AKAN TERJADI KALAU KORANG IKUT APE BENDE YANG AKU MEREPEK KAT SINI AKU TAK TANGGUNG. SEBAB AKU BUAT TAKDA PROBLEM KALAU KORANG TRY ADA PROBLEM NASIB LA BERANI BUAT BERANI TANGGUNG SENDIRI HEHEHE

** !!!AMARAN!!! **

Resepi hari ni:

Cara mudah untuk setup Virtual Private Network guna MPD atas FreeBSD 6.0 nasib la kalau korang guna version lain dah ini jer yang aku ada tapi takpa versi lain bley apply aku rasa ni try & error :p
Ni kalau korang tengok contoh network layout aku:

LAN network : 10.10.10.0:255.255.255.0 (10.10.10.0/24)
Gateway LAN : 10.10.10.1
IP Luar / ISP : 100.100.100.254 (ni contoh kalau static kalau dynamic nanti aku story lebih kat bawah)
IP untuk VPN server : 10.10.10.9
IP untuk VPN client : 10.10.10.10,10.10.10.11 …. suka hati korang la nak letak byk mane pun

sebelum korang try check dulu ler kernel korang tu dah compile untuk support pseudo-device aka “tun” kalau takda sila compile cara nak compile jgn tanya leceh aku nak panjang-panjang kat sini korang gi la cari dalam freebsd handbooks ada situ dia dah sesiap ajar baca jangan tak baca kalau dah siap baru sambung baca yang kat bawah ni plak.

Bahan-bahan yang di perlukan:

1. Akses root kalau takda jangan nak mengatal try bazir masa jer
2. FreeBSD ports (make sure korang dah cvsup yang latest)
3. Mpd – Multi-link PPP daemon based on netgraph

Cara-caranya:

Install MPD dari FreeBSD ports untuk contoh ni aku guna version 3 dia duk dalam /usr/ports/net/mpd/ kalau time korang baca ni dah ada yang versi lain tak tau ler aku.

# cd /usr/ports/net/mpd
# make && make install && make clean

lepas dah siap install tu (harap-harap takda la error ye) meh kita create config plak, kebiasaannya semua contoh config ada duk dalam /usr/local/etc/mpd/ kalau rajin nak tgk sila la tgk kalau malas ikut jer ape yg aku suh buat ni:

Edit mpd.conf guna la editor ape yang korang suka aku tak kesah copy paste ni ubah mane yang patut:

# mpd.conf – mpd VPN configuration file

default:
load pptp0
load pptp1

# Kalau korang nak byk conection add la mende alah ni bebanyak contoh ni aku buat 2 jer
# load pptp3
# load pptp4
# load pptp5

pptp0:
new -i ng0 pptp0 pptp0
set ipcp ranges 10.10.10.9/24 10.10.10.10/24
load global

pptp1:
new -i ng1 pptp1 pptp1
set ipcp ranges 10.10.10.9/24 10.10.10.11/24
load global

# Sama macam kat atas kalau korang buat 5 letak la 5 option untuk tiap satu interface

global:
set iface disable on-demand
set iface enable proxy-arp
set iface idle 3600
set iface mtu 1400
set bundle disable multilink
set bundle enable compression
set bundle enable crypt-reqd
set link mtu 1400
set link no pap chap
set link enable chap
set link enable chap-msv1
set link enable chap-msv2
set link keep-alive 10 60
set link enable acfcomp protocomp
set ipcp yes vjcomp
set ipcp dns 202.188.0.132 # Set DNS yang korang nak pakai
set pptp disable delayed-ack
set pptp disable windowing
set ccp yes mppc
set ccp yes mpp-e40
set ccp yes mpp-e56
set ccp yes mpp-e128
set ccp yes mpp-stateless
set ccp no mpp-compress

ok siap save ke /usr/local/etc/mpd/mpd.conf

Sekarang kita buat mpd.links plak cam biasa edit /usr/local/etc/mpd/mpd.links kalau takda create jgn byk cerita isi perut nyer …

# mpd.links – mpd VPN links file

pptp0:
set link type pptp
# Ni kalau korang ada static ip letak la ip server korang tu kalau takda
# guna dynamic dns free set jer domain abih citer boleh belaka mende ni
# contoh
# set pptp self vpn.saya.mine.nu
set pptp self 100.100.100.254
set pptp enable incoming
set pptp disable originate

pptp1:
set link type pptp
set pptp self 100.100.100.254
set pptp enable incoming
set pptp disable originate

sama cam mpd.conf kalau korang set 5 pptp tu kene la ada lima define kat sini jgn kurang plak
dah siap cam biasa save /usr/local/etc/mpd/mpd.links

OK Seterus nyer password files plak /usr/local/etc/mpd/mpd.secret

# mpd.secret – mpd VPN password file

admin “kambing”
ahmad “temp123”

Save ke /usr/local/etc/mpd.secret suka hati korang la nak add byk mane user dalam ni, jangan lupa plak set permission files ni root saje yang boleh baca kang kantoi plak password semua org baca.

# chmod 0600 /usr/local/etc/mpd/mpd.secret

fuh letih gak menaip campur copy paste ni, ok sambung skang edit rc.conf add :

### PPTP VPN Server ###
mpd_enable=”YES”

ni kalau korang reboot nanti dia automatis on ler takyah la nak sesusah nak on kan manual.
pastu edit /etc/syslog.conf add ni plak:

!mpd
*.* /var/log/mpd.log

Save kendian restart syslogd

# touch /var/log/mpd.log
# killall -HUP syslogd

kalau korang nak rotate log edit /etc/newsyslog.conf add :

# logfilename [owner:group] mode count size when flags
/var/log/mpd.log 644 4 100 * J

kalau tak nak takyah usik biarkan jer log tu sampai 1GB hehe, step ni plak utk org yang rajin cam aku malas tapi sebab aku tau ada yang rajin nak buat.

Edit /etc/hosts tambah

# VPN Server IP
10.10.10.9 vpn-iface

# VPN client IP ni korang add la semua yang ada dalam mpd.conf tu
10.10.10.10 pptp0
10.10.10.11 pptp1

Save kalau tak save bazir masa jer menaip byk2 tadi tu. Skang meh kita test start MPD suka korang nak guna script dia bagi tu ke or taip jer command dia

# /usr/local/etc/rc.d/mpd.sh start

atau

# /usr/local/sbin/mpd -b

sama jer script atas tu balik-balik run mpd -b gak pandai korang la nak run cam mane.

check log kalau ok dia kuar cam ni dalam log:

May 16 14:21:20 kambing mpd: mpd: pid 805, version 3.18 (root@kambing.net 18:17 15-May-2006)
May 16 14:21:20 kambing mpd: [pptp0] ppp node is “mpd805-pptp0”
May 16 14:21:20 kambing mpd: mpd: local IP address for PPTP is 100.100.100.254
May 16 14:21:20 kambing mpd: [pptp0] using interface ng0
May 16 14:21:20 kambing mpd: [pptp1] ppp node is “mpd805-pptp1”
May 16 14:21:21 kambing mpd: [pptp1] using interface ng1
May 16 14:21:21 kambing mpd: [pptp2] ppp node is “mpd805-pptp2”
May 16 14:21:21 kambing mpd: [pptp2] using interface ng2

haa kalau cam tu ok la tu dah UP bley la try guna client window untuk connect, tapi sebelum tu ejas la firewall rules dulu kalau tak nanti takleh connect plak sebab kene block tu kalau korang ada firewall la bagi yang pass in all & pass out all tu kalau nak ejas juga pandai korang la aku tak larang

# PPTP – Allow connection to VPN
/sbin/ipfw add pass log tcp from any to any 1723 setup
/sbin/ipfw add pass gre from any to any
/sbin/ipfw add pass all from any to any via ng0
/sbin/ipfw add pass all from any to any via ng1

Kalau korang ada byk interface ulang rules last tu (untuk ng0/1) tapi kene match dengan interface nyer
la

OK abih pasal Server setup kita setup client plak tapi aku dah letih nak sambung jadi sambung lenkali
kalau korang ni jenis tak sabar,rakus & tamak tak sanggup nak tunggu gi SINI ada uncut version nyer version cara untuk setup client aku dah malas ni.

Sebarang comment pandai-pandai la comment takkan tu nak aku ajar gak kalau tak jadi tanya sini kalau aku rajin aku jawap hehe

TQ!

Posted under: BSD/unix, Tips & Tricks, wtf?

Tagged as: ,

One comment

Leave a Reply

Your email address will not be published. Required fields are marked *

hero ;) :| :x :twisted: :tido: :tensen: :swt: :spot: :sleepy: :shock: :run: :roll: :pasrah: :oops: :o :nono: :nangis: :muzik: :mrgreen: :mabuk: :lol: :kerek: :joget: :idea: :hedban: :evil: :desk: :cry: :cayo: :bored: :blur: :arrow: :amok: :P :D :?: :? :33: :32: :31: :30: :29: :28: :27: :26: :25: :24: :23 :22: :21: :20: :19: :18: :17: :16: :15: :13: :12: :11: :10: :09: :08: :07: :06: :05: :04: :03: :02: :01: :) :( :!: 8O 8)