Bikin VPN Server di Linux
Ada beberapa cara membangun koneksi VPN, antara lain (yg populer):
- PPTP - http://poptop.sourceforge.net/
- L2TP over IPSec - http://l2tpd.snapgear.org/
- IPSec - http://openswan.org
- SSL - http://openvpn.org
Aku akan coba jelaskan satu per satu cara membuatnya:
1. PPTP
option /etc/ppp/options.pptpd
localip [IP_interface_lokal_yg_konek_ke_LAN]
remoteip [range_IP_buatan_utk_alokasi_client_contoh:192.168.0.101-103]
lock
nopcomp
noauth
debug
defaultroute
name pptpd
proxyarp
asyncmap 0
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe
lcp-echo-failure 30
lcp-echo-interval 5
ipcp-accept-local
ipcp-accept-remote
allow-ip [ip_remote_yg_boleh mengakses]
ms-dns [dns_server_lokal_network_yg_diakses]
ms-wins [wins_server_lokal_network_yg_diakses]
proxyarp
debug
dump
lock
nobsdcomp
logfile /var/log/pptp.log
-A INPUT -i eth0 -p tcp –dport 1723 -j ACCEPT
-A INPUT -p gre -j ACCEPT
Berdasarkan artikel yang aku baca, gunakan authentikasi EAP-TLS (pengganti MSCHAP2), katanya ini yg lebih baik … tp belum sempet ditest apakah PPTP Client yg standard di Windows en MacOS X support.
2. IPSEC
IPSec di Linux sebenarnya dipelopori oleh software FreeSWAN, namun FreeSWAN sudah tidak diteruskan lagi oleh pengembangnya, tapi versi 2.06 cukup handal bisa dipasang di kernel 2.4 dan 2.6.
Ada 2 group yg meneruskan development dari FreeSWAN :
OpenSWAN lebih populer dari StrongSWAN, dan berdasarkan pengalaman pribadi … OpenSWAN lebih fleksibel dibanding StrongSWAN, ada beberapa arsitektur VPN yang sedikit lebih rumit dikonfigurasi di StrongSWAN. Kelebihan lainnya, OpenSWAN sudah dibikin RPM nya utk Fedora .. hehehehehee
Cara nginstall :
- Download n Install dari Source atau Install dari RPM (yum)
- edit /etc/ipsec.conf
version 2.0
config setup
interfaces=%defaultroute
klipsdebug=none
plutodebug=none
nat_traversal=yes
—> baris version ini perlu ada dan sesuai dengan versi freeswan yang digunakan.
—> nat_traversal utk memungkinkan koneksi dari IP Private (NAT) - Tambahkan di ipsec.conf
conn vpn-ipsec
authby=secret
pfs=no
left=[ip_client/format_laen_contoh_%any]
right=[ip_interface_yg_dikonek_oleh_client/format_laen]
rightsubnet=[network_address_network_lokal]/[subnet_contoh_24]
auto=add
keyingtries=0
—-> right atau left boleh dibolak-balik, rightsubnet tidak perlu ditulis kalo konfigurasi VPN yang dilakukan adalah HOST-to-HOST, rightsubnet hanya diperlukan untuk HOST-to-NETWORK.
—-> authby=secret, kl mau otentikasi dengan Pre-Shared Key (semacam password). Bisa juga dengan Certificate … authby=rsasig - Buat file /etc/ipsec.secrets untuk menyimpan presharedkey atau certificate
Contoh:
: PSK “[ketik_di_sini_utk_passwordnya]“
: RSA {
# RSA 2192 bits terowongan.1rstwap.com Tue Aug 2 18:56:23 2005
# for signatures only, UNSAFE FOR ENCRYPTION
#pubkey=0sAQ……
Modulus: 0xa0……..
PublicExponent: 0×03
# everything after this point is secret
PrivateExponent: 0×1a….
}
[ip_client] [ip_server]: PSK “[ketik_di_sini_utk_passwordnya]“
- Buka Firewall untuk UDP port 500 dan PROTO ESP
Contoh:
-A INPUT -i eth0 -p udp –dport 500 -j ACCEPT
-A INPUT -p esp -j ACCEPT
3. L2TP via IPSec
Sayang banget, proyek pengembangan server L2TP utk Linux juga sudah berhenti, tp masih ada yg bikin mirrornya … http://l2tpd.snapgear.org
- Pertama kita perlu install dulu IPSEC nya, dan pasang konfigurasi seperti ini :
Untuk Client Win98/XP yg belum update SP2/MacOS X
conn vpn-l2tp-ipsec
authby=secret
pfs=no
left=[ip_client/format_laen_contoh_%any]
leftprotoport=17/0
right=[ip_interface_yg_dikonek_oleh_client/format_laen]
rightprotoport=17/1701
rightsubnet=[network_address_network_lokal]/[subnet_contoh_24]
auto=add
keyingtries=0
Untuk Client XP SP2
conn vpn-l2tp-ipsec
authby=secret
pfs=no
left=[ip_client/format_laen_contoh_%any]
leftprotoport=17/1701
right=[ip_interface_yg_dikonek_oleh_client/format_laen]
rightprotoport=17/1701
rightsubnet=[network_address_network_lokal]/[subnet_contoh_24]
auto=add
keyingtries=0
—> Perhatikan baris lefprotoport dan rightprotoport. Itu yg membedakan dengan konfigurasi IPSEC (tanpa L2TP dan L2TP utk XP/MacOSX dengan L2TP utk XP SP2).
- Install L2TPD
- Edit file /etc/l2tpd/l2tpd.conf
[global]
port = 1701[lns default]
ip range = [alokasi_range_ip_utk_client_contoh:_192.168.2.1-192.168.2.100]
local ip = [ip_lokal_utk_konek_ke_LAN]
require chap = yes
refuse pap = yes
require authentication = yes
name = [nama_VPN_bebas]
ppp debug = yes
pppoptfile = /etc/ppp/options.l2tpd
length bit = yes
- Edit / Bikin file /etc/ppp/options.l2tpd
ms-dns [dns_server_di_LAN]
ms-wins [wins_server_di_LAN]
require-mschap-v2ipcp-accept-local
ipcp-accept-remote
auth
crtscts
idle 1800
mtu 1400
mru 1400
nodefaultroute
nodetach
debug
lock
connect-delay 5000
dump
logfd 2
logfile /var/log/l2tpd.logallow-ip [ip_client_yg_boleh_pake_l2tp]
- Sekarang tinggal buka Firewall nya, TCP port 1701 dan UDP port 500 dan PROTO ESP.
Contoh:
-A INPUT -i eth0 -p tcp –dport 1701 -j ACCEPT
-A INPUT -i eth0 -p udp –dport 500 -j ACCEPT
-A INPUT -p esp -j ACCEPT
4. OpenVPN (SSL)
- Download source nya dari http://openvpn.org (mending dari source aja, krn dilengkapin ama script2 buat generate certificatenya, biar gampang)
- Setelah kelar make dan make install, masuk ke direktori source “easy-rsa”, jalankan :
export D=/etc/openvpn
export KEY_CONFIG=$D/openssl.cnf
export KEY_DIR=$D/keys
export KEY_SIZE=1024
export KEY_COUNTRY=ID
export KEY_PROVINCE=”DKI Jakarta”
export KEY_CITY=”Jakarta Selatan”
export KEY_ORG=”[nama_pt]“
export KEY_EMAIL=”dicky.wahyu@gmail.com”
export KEY_COMMON=”[namalengkap/FQDN_host_yg_dipasangin_vpn]“
- Copy openssl.cnf dr dir easy-rsa ke /etc/openvpn
- Setelah itu jalankan script “./clean-all” dr direktori “easy-rsa”
- Jalankan “./build-ca”
- Jalankan “./build-key-server server”
- Jalankan “./build-key client” dan teruskan jalankan “./build-key client2″ dst, tergantung jumlah client yg dibolehkan mengakses.
- Jalankan “./build-dh”, waktu menjalankan perintah ini, bisa sangat lama sekali … tergantung komputer dan panjang byte dr key (ada di vars)
- Kl udah semua, skrg musti bikin /etc/openvpn/server.conf
port [tcp/udp_port_utk_tunnel_contoh:1234]
proto [udp/tcp]
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem
server [network&subnet_utk_alokasi_ip_address_utk_client_contoh:192.168.0.0_255.255.255.0]
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 2
dev tun
push “[routing_IP_LAN_yang_akan_dipasang_di_client_contoh:_route_202.155.0.0_255.255.255.0]“
keepalive 10 120
comp-lzo
- Di sisi client, perlu meng-copy file “ca.crt”, “client.key”, “client.crt” yang sudah digenerate tadi.
Ada beberapa catatan tentang Openvpn ini:
Melihat beberapa alternatif yang sudah pernah dicoba, kesimpulan sementara mengenai metode VPN yg cukup meyakinkan adalah: L2TP over IPSec… perlindungan ganda, dari L2TP dan IPSec nya … paling rumit tapi jaminan keamanan lebih terjamin. Semuanya tetep tergantung dari yg nginstallin ![]()
PPTP merupakan alternatif paling mudah dan paling universal, tetapi mengenai enkripsi MS-CHAPv2 masih sedikit meragukan tentang keamanannya, aku pernah baca bahwa enkripsi ini “bisa” dihack. Sedangkan EAP sendiri, aku msh belum ngerti kemungkinannya. (maklum rada baru soal ginian, sejauh ini banyak yg bilang PEAP-MSCHAPv2 … jd bingung, lg googling)
OpenVPN cukup secure, tp kayaknya kurang applicable utk hal2 yg mengharapkan performansi yg tinggi.
Semoga membantu ![]()
List VPN Client:
Windows 98 : MS DUN 1.4 (PPTP), MSL2TP, Cisco VPN Client, OpenVPN client
Windows XP : Builtin VPN Client (PPTP & L2TP), OpenVPN client
MacOS X : Builtin VPN Client (PPTP & L2TP), IP Securitas (IPSec), TunnelBlick (OpenVPN)
Tulisan yg mungkin msh terkait:





27 Komentar sejauh ini
Ikut Komentar
kalo bikin vpn server di winsux gmn tuw…?
Oleh rendy
pada 08.07.05 12:56
Internet Explorer 6.0 Windows XP
rata2 musti beli software nya yg agak mahal …
Oleh massaint
pada 08.08.05 06:14
Safari 412.2 Mac OS X
[...] erver yang berada di luar jaringan perusahaan, masih ada alternatif lain seperti teknologi VPN seperti L2TP atau PPTP. Atau cukup dengan memasang daemon SSH atau [...]
Oleh Priyadi’s Place » Blog Archive » Kucing-kucingan ala Sysadmin
pada 09.15.05 14:01
WordPress 1.5.2
Kang Bisa nggak kang, mohon banget minta dokumentasinya di atach ke e-mailku,
maaf banget kang soalnya saya baru belajar linux dan ada tugas suruh mbuat vPN server.
Selebihnya makasih…
Oleh gandulbosok
pada 02.09.06 05:07
Mozilla Firefox 1.0.3 Windows XP
http://www.openswan.org/docs/
di sini udah cukup lengkap dan jelas koq …
Oleh massaint
pada 02.09.06 08:49
Internet Explorer 6.0 Windows XP
halo,
saya ada masalah nih dgn vpn server (Poptop), RH 8, pppd version 2.4.3
Setiap kali connect, langsung putus ..
di log messages :
Feb 9 16:35:12 gs pptpd[24256]: CTRL: Ignored a SET LINK INFO packet with real ACCMs!
Feb 9 16:35:12 gs pppd[24260]: MPPE 128-bit stateless compression enabled
Feb 9 16:35:15 gs pppd[24260]: Cannot determine ethernet address for proxy ARP
Feb 9 16:35:15 gs pppd[24260]: local IP address 172.16.54.254
Feb 9 16:35:15 gs pppd[24260]: remote IP address 172.16.54.1
Feb 9 16:35:17 gs pptpd[24256]: GRE: read(fd=7,buffer=8056b40,len=8260) from network failed: status = -1 error = Message too long
Feb 9 16:35:17 gs pptpd[24256]: CTRL: GRE read or PTY write failed (gre,pty)=(7,6)
Feb 9 16:35:17 gs pppd[24260]: Modem hangup
Feb 9 16:35:17 gs pppd[24260]: Connect time 0.1 minutes.
Feb 9 16:35:17 gs pppd[24260]: Sent 1728 bytes, received 975 bytes.
Feb 9 16:35:17 gs pppd[24260]: MPPE disabled
Feb 9 16:35:17 gs pppd[24260]: Connection terminated.
Feb 9 16:35:17 gs /etc/hotplug/net.agent: NET unregister event not supported
Feb 9 16:35:17 gs pppd[24260]: Exit.
kira2 yg salah apa yah, tolong dong
trims
Oleh wawan
pada 02.09.06 16:08
Internet Explorer 6.0 Windows XP
kernelnya support GRE gak ya ?
ato koneksi nya dari IP masquaraded/NAT … ?
Oleh massaint
pada 02.14.06 21:55
Internet Explorer 6.0 Windows XP
./build-ca
Using configuration from $/usr/share/ssl/openssl.cnf
error on line 134536644 of $/usr/share/ssl/openssl.cnf
7900:error:02001002:system library:fopen:No such file or directory:bss_file.c:104:fopen(’$/usr/share/ssl/openssl.cnf’,'rb’)
7900:error:2006D002:BIO routines:BIO_new_file:system lib:bss_file.c:106:
7900:error:0E064002:configuration file routines:CONF_load:system lib:conf_lib.c:91:
yang salah dimana sih ?
Oleh vpn
pada 05.01.06 21:40
Internet Explorer 6.0 Windows XP
sebenernya anda install di folder apa ? lalu configurasi anda seperti apa padasaat ./configure , saya agak bingung dan pada ./configure –help banyak option yang bisa dipakai…
Setelah kelar make dan make install, masuk ke direktori source “easy-rsa”, jalankan :
export D=/etc/openvpn
export KEY_CONFIG=$D/openssl.cnf
export KEY_DIR=$D/keys
export KEY_SIZE=1024
export KEY_COUNTRY=ID
export KEY_PROVINCE=”DKI Jakarta”
export KEY_CITY=”Jakarta Selatan”
export KEY_ORG=”[nama_pt]”
export KEY_EMAIL=”dicky.wahyu@gmail.com”
export KEY_COMMON=”[namalengkap/FQDN_host_yg_dipasangin_vpn]”
Copy openssl.cnf dr dir easy-rsa ke /etc/openvpn
Pada saat di ./clean-all direktory keys gak ada, /etc/openvpn
Oleh gakngerti
pada 05.01.06 22:44
Internet Explorer 6.0 Windows XP
ada ym gak bro, susah bener jelasinnya
Oleh jimz
pada 05.03.06 04:35
Internet Explorer 6.0 Windows XP
[root@proxy easy-rsa]# ./build-ca
Using configuration from /etc/openvpn/openssl.cnf
error on line 120 of /etc/openvpn/openssl.cnf
13706:error:0E065068:configuration file routines:STR_COPY:variable has no value:conf_def.c:594:line 120
ini kenapa yah ?
Oleh newbie
pada 05.03.06 07:32
Internet Explorer 6.0 Windows XP
Pertanyaan
./build-ca
Using configuration from $/usr/share/ssl/openssl.cnf
error on line 134536644 of $/usr/share/ssl/openssl.cnf
7900:error:02001002:system library:fopen:No such file or directory:bss_file.c:104:fopen(’$/usr/share/ssl/openssl.cnf’,’rb’)
—————
Jawaban … coba liat file openssl.cnf line 134536644
Oleh massaint
pada 05.12.06 08:22
Camino 1.0 Mac OS X
btw … gak nyesel tuh pilih OpenVPN ? Lemot banget, man!

Emang bikin CA itu paling ribet, kayaknya script nya dari dia ada yg ngaco … dulu lupa musti ngapain dulu heheheheheh
Oleh massaint
pada 05.12.06 08:25
Camino 1.0 Mac OS X
software/install vpn ipsec gimana?? nama softwarenya apa??
Oleh dikaa
pada 07.12.06 13:14
Mozilla Firefox 1.5.0.4 Linux
Kan udah disebut di tulisan ku, ipsec bisa pake openswan/freeswan, url nya jg udah ada kan
Oleh massaint
pada 07.13.06 20:34
SymbianOS 9.1
saya baru belajar menggunakan linux dan ada tugas bikin vpn yang saya gunakan adalah fedora core 4, didalamnya kan udah diistall openswan gimana cara nyyeting biar bisa berfungsi sebagai vpn server dan bagaimana settingan pada client? jika berkenan tolong dikirim dokumentasinya ke mail saya, selebihnya terima kasih
Oleh edy
pada 08.19.06 08:23
Mozilla Firefox 1.0.7 Windows XP
coba ke situs nya deh http://openswan.org.
utk mempermudah installasi, hindari NAT/IP Masq.
tinggal ikuti contoh config yg ada, saya usulkan utk ambil yg pake pre-shared key.
Oleh massaint
pada 08.19.06 09:43
Mozilla Firefox 1.5 Mac OS X
pagi..
bang ak mau minta tolong supaya dikirimin cara konfigurasi server dan client VPN dengan openswan pada FC4, saya bingung banget baca yang di http://openswan.org..
makasi sebelumnya..
Oleh ngurah
pada 09.05.06 08:00
Mozilla Firefox 1.0.4 Fedora Linux
ikutin aja contoh yg di sini
Oleh massaint
pada 09.05.06 10:00
Mozilla Firefox 1.5 Mac OS X
pagi maap bang saya terlalu rewel..
bisa ga saya dikasi contoh konfigurasi untuk ipsec.conf dan ipsec.secrets lengkap dengan contoh ipnya jika digunakan untuk koneksi antar dua lan yang berbeda..
makasi sebelumnya..
Oleh ngurah
pada 09.07.06 08:53
Mozilla Firefox 1.0.4 Fedora Linux
met kenal, pak..
langsung nanya ya..?
Kalo pd openvpn yg sudah ada dg 2 client existing, bagaimana cara bikin (next clients) key & certificate untuk client ke 3 dst?
Mohon pencerahan, terima kasih.
salam,
Anto
Oleh anto
pada 11.26.07 08:46
Mozilla Firefox 1.0.7 Linux
kayaknya sih ada di doc nya openvpn … tp gw sendiri belum pernah coba
jd mangap ya 
Oleh Dicky Wahyu Purnomo pada 11.26.07 10:25
Safari 523.10 Mac OS X
saya ingin tahu, apakah ada linux yang bisa menjalankan file ASP seperti IIS di windows.
terimakasih
Oleh tbob
pada 03.13.08 01:32
Internet Explorer 7.0 Windows XP
lengkap banget…mantap dan terinci dengan jelas…thanks
Oleh evida
pada 04.03.08 21:06
Mozilla Firefox 2.0.0.13 Windows XP
Ass.wr.wb
Salam kenal…
Begini Mas, saya rencananya mau coba implementasi pptp server di kampus pke ubuntu ,tapi saya masih bingung harus ngapain setelah konfigurasi pptpnya selesai.
Trus untuk sistem pembagian IP secara dinamis oleh vpn server perlu setting dhcp server g? atau dah otomatis disetting pada saat kita konfigurasi pptpd-optionnya?
Sebenarnya apa aja sih yang harus saya persiapkan sebelum melakukan proses implementasi vpn server ini?
o y satu lagi, untuk sistem administrasi pptp server yang menggunakan freeradius gm caranya? (denger2 sih klo pke itu bisa lebih mudah diakses dari sourcenya).
mohon penjelasannya y mas makasih sebelumnya.
Oleh widi
pada 07.31.08 11:45
Mozilla Firefox 2.0.0.6 Windows XP
mas saya mo tanya donk? blh?
gni mas, saya mau mmbangun jaringan vpn, truz kira2 ap saja ya mas yg saya bth kan soalnya saya orng awam di bidang ini.
mksh ya mas…!
Oleh arif rahman
pada 08.23.08 23:08
Mozilla Firefox 2.0.0.13 Windows XP
buat widi: sorry nih gak bisa jawab … dah rada lama gak maenan soal vpn
buat arif: anda harus mulai dari belajar linux dan jaringan kl memang benar2 awam. kl udah menguasai linux en jaringan, pasti baca artikel ini udah cukup jelas
Oleh Dicky Wahyu Purnomo pada 08.26.08 23:58
Camino 1.6.3 Mac OS X
Ikutan Komentar
Tag HTML yg dibolehin:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>