Networking  ncuptea blog
Showing posts with label Networking. Show all posts
Showing posts with label Networking. Show all posts

Setup Debian 7 sebagai Hostpot dengan hostapd dan dhcp server

Setup Wireless Access point (hotspot) di Debian 7 dengan Hostapd dan DHCP server. fg

TOPOLOGI
Internet---Router/Modem ---eth0--Debian7--wlan0---ClientPC+Android, dll

















Seting Interfaces nya di /etc/network/interfaces :

nano /etc/network/interfaces

isikan menjadi atau sesuaikan hingga seperti di bawah ini:

auto lo # Interface Loop
iface lo inet loopback


auto eth0 #Interface ke Modem/Router
iface eth0 inet static
        address 192.168.8.2
        network 192.168.8.0
        netmask 255.255.255.0
        broadcast 255.255.255.0
        gateway 192.168.8.1
        dns-nameservers 192.168.8.1

auto wlan0 # Interface Wireless yang mengarah ke LAN
iface wlan0 inet static
    address 192.168.1.1
    netmask 255.255.255.0
    network 192.168.1.0
    broadcast 192.168.1.255


Restart interfaces
/etc/init.d/networking restart

Install DHCP Server dan Hostapd
apt-get install hostapd isc-dhcp-server

Edit file di /etc/default/isc-dhcp-server
nano /etc/default/isc-dhcp-server

dan tambahkan hingga jadi seperti di bawah ini, dalam konfig saya interfaces yang mengarah ke LAN ialah wlan0, silahkan sesuaikan jika di kalian berbeda  :
INTERFACES="wlan0"

Buka file dhcpd.conf di /etc/dhcp :
nano /etc/dhcp/dhcpd.conf

Edit atau samakan hingga seperti di bawah ini :
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.10 192.168.1.20;
  option domain-name-servers 192.168.8.1;
  option subnet-mask 255.255.255.0;
  option routers 192.168.1.1;
  option broadcast-address 192.168.1.255;
  default-lease-time 600;
  max-lease-time 7200;

host laptop_ute {
hardware ethernet 00:17:C4:BE:C3:DA;
fixed-address 192.168.1.10;
}
host mira {
hardware ethernet AC:C1:EE:89:E9:3B;
fixed-address 192.168.1.11;
}
host droid_ute {
hardware ethernet 78:24:AF:0B:0E:C5;
fixed-address 192.168.1.12;
}
}

** Catatatan : 
Konfigurasi diatas ialah contoh kasus dimana kita menginginkan DHCP Server dapat berjalan namun memberikan IP Statik ke Klien nya yang telah di tandai oleh MAC ADDRESS masing-masing device klien.

Edit file default hostapd yang ada di /etc/default :
nano /etc/default/hostapd

Edit atau tambahkan hingga seperti di bawah ini :

# Defaults for hostapd initscript
#
# See /usr/share/doc/hostapd/README.Debian for information about alternative
# methods of managing hostapd.
#
# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration
# file and hostapd will be started during system boot. An example configuration
# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz
#
DAEMON_CONF="/etc/hostapd/hostapd.conf"

# Additional daemon options to be appended to hostapd command:-
#       -d   show more debug messages (-dd for even more)
#       -K   include key data in debug messages
#       -t   include timestamps in some debug messages
#
# Note that -B (daemon mode) and -P (pidfile) options are automatically
# configured by the init.d script and must not be added to DAEMON_OPTS.
#
#DAEMON_OPTS=""


Exit dan Save

Sekarang buat file hostapd.conf di dalam /etc/hostapd :
nano /etc/hostapd/hostapd.conf

Isikan dan sesuaikan hingga seperti di bawah ini :

interface=wlan0 ##Sesuaikan interfaces di kalian
driver=nl80211
country_code=ID
ssid=uteAP ##Sesuaikan dengan SSID yang kalian inginkan
hw_mode=g
channel=3
wpa=2
wpa_passphrase=abc12345 ##Password SSID, sesuaikan dengan yang kalian inginkan
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0


Exit dan Save

Selesai, silahkan restart masing-masing servicenya. Sampai disini harusnya Hostspot sudah aktif dan bisa di scan dari devices klien. Harap setup IP Forward, NAT, dan IPTABLES nya jika belum.












Selengkapnya

Install squid di Windows Oke!

Beberapa hari ini iseng di kantor menginstallkan Squid Proxy Server versi 2.8 di Windows eh ternyata berhasil, windows yang saya installkan squid ini adalah windows 7 namun setelah saya coba juga pada Windows Xp Professional di Rumah berhasil juga.

Langsung saja, topologi di kantor saya sebagai berikut :

Modem AHA<--->Router TP_LINK<--->PC1<--->PC2<--->Dan_Seterusnya


Lebih rincinya kalian baca saja catatan yang terdokumentasi di bawah ini tentang install Squid di Windows 7 atau Windows XP Professional yang berjalan sukses.

  • Download versi terakhir squid untuk Windows dari situs resmi disini atau download versi yang sama dengan yang saya pakai di sini yakni squid v2.7.2
  •  Install seperti biasa file installer squid yang baru anda download di atas. Berikut screenshoot proses installasi executable-nya :





















  • Setelah langkah installasi squid selesai anda jangan heran di Start Menu > All Program tidak terindeks Aplikasi Squid ini. Direktori Squid default ada di c:\squid dan di dalam folder squid itu sendiri ada subfolder :  
    bin, docs, etc, libexec, sbin, share, system32, var
      

















    • Lakukan backup file squid.conf, contoh dengan cara berikut :
      copy pastekan squid.conf lalu rename/namai menjadi squid.conf.asli dalam 1 folder tersebut supaya lebih gampang kalau ada apa-apa maka tinggal hapus squid.conf lalu namai squid.conf.asli menjadi squid.conf dan restart komputer.
    • Tidak seperti kebanyakan seting software di Windows hanya cukup dengan klak-klik, cecklist/uncheck opsi yang ada maka langsung berjalan. 

      Pada squid di windows untuk mengkonfigurasi harus mengedit file squid.conf barulah squid bisa berjalan, namun jika kalian kurang familiar dengan squid maka anda tinggal samakan isi squid.conf di sistem Windows anda dengan punya saya di bawah ini yang sudah berjalan dan sederhana :

      #    WELCOME TO SQUID 2.7.STABLE8
      acl all src all
      acl manager proto cache_object
      acl localhost src 127.0.0.1/32
      acl to_localhost dst 127.0.0.0/8 0.0.0.0/32

      acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
      acl localnet src 172.16.0.0/12    # RFC1918 possible internal network
      acl localnet src 192.168.0.0/16    # RFC1918 possible internal network
      acl husen src 192.168.1.0/32    #SESUAIKAN DGN LOKAL ANDA

      acl SSL_ports port 443
      acl Safe_ports port 80        # http
      acl Safe_ports port 21        # ftp
      acl Safe_ports port 443        # https
      acl Safe_ports port 70        # gopher
      acl Safe_ports port 210        # wais
      acl Safe_ports port 1025-65535    # unregistered ports
      acl Safe_ports port 280        # http-mgmt
      acl Safe_ports port 488        # gss-http
      acl Safe_ports port 591        # filemaker
      acl Safe_ports port 777        # multiling http
      acl CONNECT method CONNECT

      http_access allow manager localhost
      http_access allow husen
      http_access deny manager

      http_access deny !Safe_ports
      http_access deny CONNECT !SSL_ports
      http_access allow localnet
      http_access deny all
      icp_access allow localnet
      icp_access deny all

      http_port 3128      # port squid
      hierarchy_stoplist cgi-bin ?
      cache_mem 8 MB
      maximum_object_size_in_memory 32 KB
      memory_replacement_policy lru
      cache_replacement_policy lru
      cache_dir ufs c:/squid/var/cache 500 24 256
      cache_swap_low 90
      cache_swap_high 95

      access_log c:/squid/var/logs/access.log squid
      refresh_pattern ^ftp:        1440    20%    10080
      refresh_pattern ^gopher:    1440    0%    1440
      refresh_pattern -i (/cgi-bin/|\?) 0    0%    0
      refresh_pattern .        0    20%    4320
      quick_abort_pct 95

      cache_mgr webmaster



      Jika sudah di rasa pas dan tidak ada yang salah silahkan save dan tutup
       





    • Sekarang saat nya mem-check apakah konfig kita file squid.conf ada yang salah, cara nya Buka command promp Windows kemudian ketikan, jika pas di Enter tidak ada apa berarti penulisan konfigurasi squid sudah benar :
      c:\squid\sbin\squid -k parse -n squid
    • Sekarang saat nya membuat direktori cache squid, cara nya masih pada command promp Windows kemudian ketikan, tunggu hingga selesai :
      c:\squid\sbin\squid -z
    • Masih pada Command Prompt, saatnya Install squid sebagai services dengan mengetikan seperti berikut:
      c:\squid\sbin\squid -i
    •  Tutup command prompt Windows, saat-nya mengaktifkan services squid dari services.msc. Cara nya Buka Run atau tekan logo Windows+R kemudian ketikan services.msc kemudian Enter. Cari services yang bernama squid lalu klik Start
    • Selesai dan silahkan restart komputer untuk menerapkan perubahan.
    Cara pakai nya manual ya, tinggal masuk ke option browser firefox misalnya, lalu masukan IP Komputer yang terinstall Squid dan Port nya..jika sama dengan di atas maka port nya adalah 3128.


    Sudah dulu ya, selamat mencoba..capek nulis nya saya :D..jika di rasa ada kesalahan tulis atau ada yang kurang paham silahkan tinggalkan komenter!!! 
    Selengkapnya

    Dial PPPOE di Windows XP

    Windows XP di build berserta dialer PPPoE Dialler, ini berarti kita dapat melakukan dial pppoe misal modem adsl yang yang telah di set sebagai bridge dari komputer. Dengan modem yang di set sebagai bridge dan komputer yang mendial pppoe maka kontrol penuh ada di komputer tersebut.

    Umumnya istilah ini lingkup dari sebuah komputer router yang bertugas untuk merutekan dari/dan LAN dan Internet atau jaringan lainnya, juga biasanya sistem yang digunakan adalah Linux atau opensource lainnya karena mengincar support-nya yang banyak dan bebas, namun jika kita mau memakai atau membuat windows xp sebagai router dan ingin seting dial pppoe dari windows xp adalah sebagai berikut :

    • Sebelum kita mulai mengkonfigurasi dialler pppoe ini silahkan set IP dan DNS ke dynamis/automatis dulu.






















    • Mari kita mulai! ini jalan lain dalam mengkonfigurasi dialler di Windows XP.
      Ke Start Menu, lalu klik kanan di My Network Places kemudian pilih Properties
















    • Kotak dialog seperti gambar di bawah ini akan muncul, klik Create New Connection





















    • Kotak dialog seperti dibawah ini akan muncul, klik Next

















    • Pilih Connect to the Internet lalu klik Next.

















    • Pilih Set up my connection manually, klik Next sesudahnya.

















    • Di kotak dialog seperti dibawah ini silahkan namai sendiri nama dari koneksi kalian, jika sudah pilih Next.

















    • Isikan informasi akun yang didapat dari ISP kalian, untuk akun telkomspeedy jika mengalami kegagalan silahkan tambahkan dibelakangnya @telkom.net.id.

















    • Buatkan shortcut dialernya ke desktop.

















    • Dimana dialler telah terkonfigurasi dengan benar maka kita akan melihat icon notice di bagian Broadband  dalam Network Connection seperti gambar di bawah ini.













    • Untuk melakukan koneksi cukup mudah, silahkan klik icon shortcut dialler yang sudah kita buat sebelumnya di desktop lalu klik Connect.























    Kurang lebihnya begitulah cara dial PPPoE dengan Windows XP secara Bridge, perlu di ketahui bahwa jika kalian ingin memfungsikan Windows XP ini sebagai router/server kita harus membuat NAT terlebih dulu dengan mengkonfigurasi Windows XP supaya mampu melakukan IP Forwarding seerti dalam artikel blog ini sebelumnya disini.


    Tambahan :
    Jika menurut kalian akun ISP dan step-step diatas sudah di ikuti dengan benar namun masih menemui error saat dial PPPoE, silahkan set dulu pengaturan di modem, misal modem yang digunakan adalah modem adsl dan seting sebagai bridge.
    Selengkapnya

    Seting Netlimiter

    Netlimiter adalah software traffic control atau bandwidth management dan monitoring bandwidth untuk komputer bersistem windows, software ini sama dengan DU Controller yang umum para admin warnet pakai untuk topologi peer to peer dimana tidak ada server yang betugas untuk mengadministrasi secara terpusat keperluan bandwidth.

    Netlimiter ini penulis angkat berdasarkan pengalaman mempraktekannya beberapa hari lalu dan isi konten yang akan kita bahas kali ini ialah seputar seting Netlimiter 3 Pro, bukan hanya cara install atau sekedar sharing softwarenya. Perlu diketahui bahwa penulis menggunakan sistem Windows Xp Pro 2 saat mempraktekan Netlimiter ini dan software Netlimiter ini di installkan di komputer klien, berikut di bawah ini tahapan cara seting dan konfigurasi Netlimiter untuk batasi bandwidth secara mudah :
    • Terserah kalian mau mulai dari mana dalam hal seting dan konfigurasi Netlimiter ini, namun penulis sendiri mulai dari menu Options seperti tanda panah merah pada gambar di bawah :
      Main Menu Netlimiter














    • Pada kotak dialog seperti di bawah ini yang muncul sesaat setelah kita meng-klik Options pada langkah sebelumnya ada beberapa list service yang ditampilkan oleh aplikasi Netlimiter ini, penulis sendiri membiarkan beberapanya default, namun jika kalian ingin menon-aktifkannya beberapa service silahkan hilangkan tanda centang/ceklist :
      Opsi Service Netlimiter























    • Masih pada kotak dialog options hanya saja sekarang pada opsi Client (lihat gambar) di Side bar, penulis mencentang/ceklist Run on Startup supaya Netlimiter ini ikut start saat Komputer di hidupkan/restart, berikut beberapa penjelasan opsi lainnya :
      • Check for new version – Membiarkan netlimiter ini mengupdate versi baru dari jenisnya.
      • Show Tray Icon – Menampilkan icon Netlimiter di pojok kanan Taskbar.
      • Close to Tray – Jika kita Close (klik tanda silang merah di software) maka software masih run dan bisa di akses pada Taskbar bukan malah berarti Exit/keluar.
      • Minimize to Tray – Pilihan untuk menampilkan atau menyembunyikan Netlimiter ini dari list Taksbar.
      • Show left Sidebar – Pilihan untuk menghilangkan sidebar pada Interfaces Netlimiter itu sendiri.
      Client Options Netlimiter























    • Beralih ke hak akses atau Permissions, klik pada Teks Permissions pada menu seperti langkah awal dan kotak dialog seperti dibawah ini akan muncul. Jika dalam system komputer ada/dibuatkan akun user biasa maka bisa di Deny supaya saat siapa saja yang menggunakan computer dengan akun user yang di maksud tidak bisa membuka/seting dan sebagainya :





















    • Saatnya mengkonfgurasi kecepatan bandwidth download dan upload, Netlimiter ini secara default bekerja berdasarkan service yang berjalan bukan bandwidth umum keseluruhan yang berpatokan pada protocol/port/ip jadi saat kita akan membatasi bandwidth kita harus membuka dulu aplikasinya etc.firefox, download manager, dll barulah service-nya akan muncul di Netlimiter untuk kita batasi speed-nya, akan tetapi untuk seting berdasarkan ip/port/mac dan sebagainya bisa dimungkin dengan membuat terlebih dulu filter baru akan tetapi tidak akan di bahas kali ini.

      Gambar di bawah ini mudah-mudahan bisa membantu, yang di centang/ceklist adalah rule atau aturan pada suatu service aplikasi yang sedang aktif, kotak lainnya yang tidak ter-ceklist adalah rule yang tidak aktif. Nilai 5.00 pada gambar di bawah adalah nilai default dari Netlimiter 3 untuk bisa langsung kita aktifkan namun default statusnya adalah tidak aktif. Untuk merubah nilai besaran download/upload suatu service klik 2x pada nilai-nya (bukan kolom ceklis):












    • Kotak dialog pada gambar-1di bawah tampil setelah kita mengklik dua kali pada nilai download/upload di gambar-2 (perhatikan tanda panahnya). Default satuan/unit adalah Byte bukannya kilo Byte, maka untuk gampangnya dalam demontrasi ini kita buat nilai limit batasan bandwidth untuk download dengan kilo byte atau memilih “kB” dan untuk nilai uploadnya kalian sesuaikan sendiri, terserah kalian mau memakai satuan byte. Jika masih belum mengerti satuan byte dengan bit silahkan baca artikel blog ini sebelumnya disini.

      Nb ; sekalipun default unit/satuan tidak dirubah di opsi general Netlimiter ini maka saat kita menginput dengan satuan berbeda maka si aplikasi netlimiter ini akan menkonversikannya secara otomatis.
      Gambar - 1
      Gambar - 2




































    Sampai dengan tahap ini seting Netlimiter sudah bisa difungsikan. Silahkan tinggalkan komentar jika ada masukan atau tersesat dijalan :D.

    Untuk software Netlimiter 3 Pro full version bisa di download di bawah ini.
    Netlimiter Pro v3.0.0.11
    Selengkapnya

    Panduan manual seting OpenVPN

    Ini ialah terjemahan panduan manual untuk Install dan Konfigurasi OpenVPN dari https://help.ubuntu.com/12.04/serverguide/vpn.html, walau pada prakteknya penulis lebih berhasil dengan OpenVPN Access Server yang dokumentasinya sendiri sudah lebih dulu saya publish namun dari sinilah sebenarnya awal permulaan keberhasilan tersebut.

    Sekilas kalian pasti melihatnya adalah jumlah lembar pada Howto ini dan beranggapan terlalu banyak basa-basi, namun percayalah dengan membaca dari awal hingga akhir dari manual openvpn ini, juga sedikit daya imajinasi maka kita yang masih belajar tidak akan menemukan kesulitan berarti kedepannya. Jika pernah memanage jaringan dan router di Linux sebelumnya maka kalian kemungkinan besar sukses mengimplementasikannya.

    Tulisan selanjutnya dibawah ini ialah urutan dari panduan install dan konfigurasi OpenVPN beserta masksud dan tujuannya dari suatu perintah dan parameter yang kita jalankan, jika kalian yang masih belajar dan melangkah dalam hal membaca howto ini kemungkinan akan terasa sulit memahaminya.

    Tabel konten

    Pendahuluan
    Jika kalian ingin lebih dari sekedar berbagi kunci/keys OpenVPN menjadi lebih mudah setup-nya dan menggunakan Public Key Infrastructure (PKI) untuk menggunakan SSL/TLS sertifikat untuk otentikasi dan pertukaran kunci/key antara server VPN dan klien. OpenVPN juga dapat digunakan dalam mode VPN routed atau bridge dan dapat dikonfigurasi untuk menggunakan UDP atau TCP. Port dapat dikonfigurasi juga, tapi port 1194 adalah defaultnya. Dan hanya menggunakan port tunggal untuk semua komunikasi. Implementasi VPN client yang tersedia untuk hampir semua hal termasuk semua distribusi Linux, OS X, Windows dan berbasis OpenWRT WLAN router.

    Installasi OpenVPN server
    sudo apt-get install openvpn

    Seting Public Key Infrastructure (PKI)
    Langkah awal dalam membangun konfigurasi OpenVPN adalah bahwa menstabilkan PKI (Public Key Infrastructure). PKI sendiri mencakup seperti berikut :
    1. Sertifikat terpisah (biasa dikenal sebagai public key) dan kunci pribadi untuk server dan setiap klien, dan.
    2. Sertifikat utama/master sertifikat Authority (CA) dan kunci/key yang digunakan untuk menandatangani setiap server dan sertifikat klien.
    OpenVPN mendukung otentikasi dua arah berbasis sertifikat, yang berarti bahwa klien harus mengotentikasi sertifikat server dan server harus mengotentikasi sertifikat klien sebelum koneksi saling percaya didirikan/dibangun.

    Kedua server dan klien akan mengotentikasi hal lainnya dengan terlebih dahulu memverifikasi bahwa sertifikat yang diberikan dan ditandatangani oleh master sertifikat otoritas (CA), dan kemudian dengan menguji informasi yang sekarang ini – authenticated certificate header, seperti nama sertifikat umum atau sertifikat tipe (klien atau server).

    Pengaturan Sertifikat Otoritas (Certificate Authority Setup)
    Untuk setup Certificate Authority (CA) itu sendiri dan nantinya menghasilkan sertifikat dan kunci untuk server OpenVPN dan beberapa openvpn klien, pertama copy direktori easy-rsa ke /etc/openvpn. Ini untuk memastikan bahwa setiap perubahan pada script tidak akan hilang ketika paket diperbarui.

    Dari terminal/konsol :
    mkdir /etc/openvpn/easy-rsa/
    cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa/

    Selanjutnya, edit /etc/openvpn/easy-rsa/vars dan sesuaikan contoh berikut ini untuk situasi di kalian:
    export KEY_COUNTRY="ID"
    export KEY_PROVINCE="JawaBarat"
    export KEY_CITY="Bogor"
    export KEY_ORG="Citeureup Foundation"
    export KEY_EMAIL="ncuptea@telkom.net.id"

    Masukan masing-masing perintah di bawah ini secara ber-urut untuk menghasilkan sertifikat master yaitu Certificate Authority (CA) dan key-nya :
    cd /etc/openvpn/easy-rsa/
    source vars
    ./clean-all
    ./build-ca


    Sertifikat untuk server (Certificate Server)
    Berikut dibawah ini kita masukan perintah untuk menghasilkan sertifikat dan private key untuk Server VPN kita :
    ./build-key-server myservername

    Seperti pada langkah sebelumnya, kebanyakan parameter/opsi bisa dibiarkan default. Dua pertanyaan lainnya mungkin memerlukan tanggapan, seperti "Sign the certificate [y / n]?" Dan satu persatu permintaan pertanyaan sertifikat bersertifikat, pilih untuk berkomitmen? [Y/n]".

    Parameter Diffie Hellman harus di hasilkan (di generate) untuk server OpenVPN, perintahnya :
    ./build-dh

    Semua sertifikat dan key yang telah di hasilkan (di generate) akan berada di subdirektori keys di /etc/openvpn. Umum dan praktisnya copy sertifikat dan keys di /etc/openvpn/keys ke /etc/openvpn :
    cd /etc/openvpn/keys/
    cp myservername.crt myservername.key ca.crt dh1024.pem /etc/openvpn/

    Membuat sertifikat klien OpenVPN (Client Certificates)
    Klien VPN akan sangat memerlukan sertifikat untuk melakukan otentikasi dirinya sendiri ke vpn server. Biasanya kita harus membuat sertifikat yang berbeda untuk setiap klien vpn. Dan untuk membuat sertifikat masukan perintah di bawah ini secara ber-urut dan satu persatu di terminal/konsol mesin vpn servernya.:
    cd /etc/openvpn/easy-rsa/
    source vars
    ./build-key client1

    Nb. Jika ingin menambahkan sertifikat klien lainnya tinggalkan tambahkan perintah ./build-key client2

    Copy file-file di mesin vpn server di bawah ini ke mesin vpn klien, terserah mau pakai cara apa kalian memindahkannya ke mesin klien :
    /etc/openvpn/ca.crt
    /etc/openvpn/easy-rsa/keys/client1.crt
    /etc/openvpn/easy-rsa/keys/client1.key

    Sebagaimana diketahui, beberapa file di atas adalah sertifikat dan keys untuk kliennya vpn maka dari itu harap di hapus yang di server jika sudah di copykan ke klien vpn-nya.

    Konfigurasi sederhana server vpn
    Seiring kalian menginstall OpenVPN otomatis kalian mempunyai contoh-contoh file konfigurasi dan banyak lagi jika kalian memeriksa direktori seperti di bawah ini :
    root@server:/# ls -l /usr/share/doc/openvpn/examples/sample-config-files/
    total 68
    -rw-r--r-- 1 root root 3427 2011-07-04 15:09 client.conf
    -rw-r--r-- 1 root root 4141 2011-07-04 15:09 server.conf.gz

    Mulai dengan meng-copy dan meng-extract server.conf.gz ke /etc/openvpn/server.conf dari contoh konfigurasi openvpn yang sedang kita bahas ini :
    sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
    sudo gzip -d /etc/openvpn/server.conf.gz

    Edit /etc/openvpn/server.conf untuk memastikan baris di bawah ini menunjuk ke sertifikat dan kunci yang kalian buat di bagian atas.
    ca ca.crt
    cert myservername.crt
    key myservername.key
    dh dh1024.pem

    Berikut ini ialah output status openvpn server yang sudah berjalan oke dengan konfigurasi yang minimum.
    root@server:/etc/openvpn# /etc/init.d/openvpn start
    * Starting virtual private network daemon(s)...
    * Autostarting VPN 'server' [ OK ]

    Sekarang kita cek apakah openvpn telah membuat interface tun0 :
    root@server:/etc/openvpn# ifconfig tun0
    tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
    UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
    [...]

    Konfigurasi klien cara mudah
    Ada berbagai implementasi OpenVPN klien yang berbeda dengan atau tanpa GUI. Kalian dapat membaca lebih lanjut tentang klien vpn dalam bagian selanjutnya. Namun untuk saat ini kita menggunakan klien OpenVPN untuk Ubuntu yang merupakan eksekusi paket yang sama seperti di server. Jadi, kita harus menginstal paket openvpn lagi pada mesin klien:
    sudo apt-get install openvpn

    Sekarang waktunya mengcopy client.conf dari contoh/sample konfigurasi openvpn ke /etc/openvpn/ :
    sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/

    Salin key serta sertifikat klien dari CA yang telah kita buat seperti di bagian atas, misalnya di copy ke direktori /etc/openvpn/ dan edit /etc/openvpn/client.conf untuk memastikan baris berikut seperti dibawah yang menunjuk ke file-file tersebut. Jika kalian memiliki file di /etc/openvpn/ kalian dapat menghilangkan path-nya (simbol “#” nya).
    ca ca.crt
    cert client1.crt
    key client1.key

    Dan sekarang kita harus setidaknya menentukan nama server OpenVPN atau alamatnya. Pastikan kata kunci klien ada didalam konfigurasi. Dan Itulah yang memungkinkan modus klien.
    client
    remote vpnserver.example.com 1194

    Sekarang start OpenVPN kliennya :
    root@client:/etc/openvpn# /etc/init.d/openvpn start
    * Starting virtual private network daemon(s)...
    * Autostarting VPN 'client' [ OK ]

    Sekarang kita cek apakah openvpn telah membuat interface tun0 :
    root@client:/etc/openvpn# ifconfig tun0
    tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
    UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1

    Cek apakah klien vpn bisa ping ke server vpn :
    root@client:/etc/openvpn# ping 10.8.0.1
    PING 10.8.0.1 (10.8.0.1) 56(84) bytes of data.
    64 bytes from 10.8.0.1: icmp_req=1 ttl=64 time=0.920 ms

    Catatan : Server OpenVPN selalu menggunakan alamat IP paling pertama yang digunakan dalam jaringan klien dan hanya IP yang pingable. Misalnya jika kita mengkonfigurasi /24 untuk network mask klien, alamat no.1-nya akan digunakan. Alamat PTP yang kita lihat dalam output ifconfig di atas biasanya tidak menjawab permintaan ping.

    Cek perutean paket yang keluar di mesin klien :
    root@client:/etc/openvpn# netstat -rn
    Kernel IP routing table
    Destination Gateway Genmask Flags MSS Window irtt Iface
    10.8.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
    10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
    192.168.42.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
    0.0.0.0 192.168.42.1 0.0.0.0 UG 0 0 0 eth0



    Langkah awal dalam troubleshooting
    Jika bahasan dan langkah-langkah di atas tidak bekerja di kalian, periksa di bawah ini :
    1. Cek syslog kalian, contoh grep -i vpn /var/log/syslog.
    2. Dapatkah klien konek ke mesin server? Mungkinkah firewall kalian mem-block akses? Cek kembali syslog di mesin server.
    3. Klien dan server harus menggunakan protokol dan port yang sama, misal UDP port 1194, lihat opsi konfigurasi protokol dan port.
    4. Klien dan server harus menggunakan konfigurasi yang sama tentang “kompresi”. Lihat comp-lzo pada opsi di dalam file konfigurasinya.
    5. Klien dan server harus menggunakan konfigurasi yang sama tentang mode bridge & routed. Lihat opsi konfigurasi server routed vs server-bridge.






    Konfigurasi tingkat tinggi (Advanced Configuration)

    Konfigurasi server vpn mode Route
    Dibagian atas VPN bekerja secara sangat sederhana. Klien dapat mengakses layanan pada mesin server VPN melalui terowongan (tunnel) yang dienkripsi. Jika kita ingin mencapai ke lebih banyak server atau apapun di jaringan lain, menekankan beberapa rute ke klien. Misalnya jika jaringan perusahaan kita dapat diringkas ke network 192.168.0.0/16. Tapi kita juga harus mengubah routing/rute untuk jalan kembali lagi (way back) – untuk itu server kita perlu tahu rute ke jaringan klien VPN.

    Atau kita mungkin ingin menekankan default gateway untuk semua klien untuk mengirim semua lalu lintas internet mereka ke gateway VPN pertamanya dan dari sana juga melalui firewall perusahaan ke internet. Bagian ini menunjukkan beberapa pilihan yang memungkinkan.

    Pastikan rute ke klien bisa memungkinkan untuk mencapai subnet lokal lainnya di belakang server. Ingatlah bahwa subnet lokal juga perlu tahu rute pool alamat klien OpenVPN (10.8.0.0/24) kembali ke server OpenVPN.
    push "route 10.0.0.0 255.0.0.0"

    Jika opsi dibawah ini diaktifkan, direktif ini akan mengkonfigurasi semua klien untuk mengarahkan default gateway jaringan mereka melalui VPN, menyebabkan semua lalu lintas IP seperti web browsing dan pencarian DNS yang pergi melalui VPN (server OpenVPN mesin atau firewall pusat, kita mungkin perlu NAT TUN/TAP interface ke internet untuk bisa bekerja secara benar).
    push "redirect-gateway def1 bypass-dhcp"

    Konfigurasi mode server dan menyediakan subnet VPN untuk OpenVPN untuk menarik klien dari alamat. Server vpn akan mengambil IP 10.8.0.1 untuk dirinya sendiri, sisanya akan dibuat tersedia bagi semua klien vpn yang valid. Setiap klien akan dapat mencapai server pada 10.8.0.1. Hilangkan simbol “#” pada baris dibawah ini jika ethernet kita dibridging.
    server 10.8.0.0 255.255.255.0

    Mempertahankan catatan/rekaman klien ke asosiasi virtual alamat IP dalam file ini. Jika OpenVPN dimatikan atau di-restart, reconnecting klien dapat diberikan alamat IP yang sama dari pool virtual yang sebelumnya ditugaskan.
    ifconfig-pool-persist ipp.txt

    Menekankan DNS server ke klien :
    push "dhcp-option DNS 10.0.0.2"
    push "dhcp-option DNS 10.1.0.2"

    Menginjinkan antara klien dan klien lainnya dapat berkomunikasi :
    client-to-client

    Mengenablekan kompresi pada link VPN :
    comp-lzo

    Direktif keepalive menyebabkan pesan ping yang akan dikirim bolak-balik atas link sehingga masing-masing pihak tahu ketika pihak lain berstatus shutdown, reboot, dsb. Ping setiap 1 detik, menganggap bahwa status remote peer adalah down jika ping tidak diterima selama periode waktu 3 detik.
    keepalive 1 3

    Ini adalah ide yang baik untuk mengurangi hak istimewa daemon OpenVPN setelah inisialisasi.
    user nobody
    group nogroup

    OpenVPN 2.0 meyertakan fitur yang memungkinkan server OpenVPN secara aman mendapatkan username dan password dari klien yang terhubung, dan menggunakan informasi tersebut sebagai dasar untuk otentikasi klien. Untuk menggunakan metode otentikasi, pertama tambahkan direktif auth-user-pass untuk konfigurasi klien. Ini akan mengarahkan klien OpenVPN pada permintaan penggunaan untuk username/password, lalu melewatkan itu ke server melalui saluran TLS yang aman.
    # client config!
    auth-user-pass

    Bagian baris dibawah ini akan memberitahu server openvpn untuk memvalidasi username dan password yang di masukan oleh klien menggunakan modul login PAM. Biasanya jika kita menyentralkan otentifikasi dengan, misal Kerberos.
    plugin /usr/lib/openvpn/openvpn-auth-pam.so login

    Catatan : Harap baca panduan tentang OpenVPN Hardening Security Guide untuk lebih lanjut

    Konfigurasi server vpn mode Bridge
    OpenVPN dapat di setup baik dengat mode Routed atau VPN Bridge. Kadang-kadang ini juga disebut sebagai OSI layer-2 dibandingkan layer-3 VPN. Dalam VPN Bridge semua frame layer-2 misalnya semua frame ethernet dikirim ke mitra VPN dan dalam mode Routed VPN maka hanya layer-3 paket dikirim ke mitra VPN. Dalam mode bridge semua lalu lintas termasuk lalu lintas yang secara tradisional seperti LAN lokal seperti siaran (broadcast) jaringan lokal, permintaan DHCP, permintaan ARP dll dikirim ke mitra VPN, sedangkan dalam mode Routed ini akan disaring (di filter).

    Persiapan untuk mengkonfigurasi interfaces sebagai bridge di mesin server
    Pastikan paket bridge-utils telah terinstall :
    sudo apt-get install bridge-utils

    Sebelum kita mengkonfigurasi vpn dalam mode bridge kita perlu menyesuaikan beberapa konfigurasi interfaces. Mari kita asumsikan bahwa server telah terkoneksi dengan eth0 ke Internet dan eth1 ke LAN yang kita ingin bridge. File konfigurasi /etc/network/interfaces kita mungkin terlihat seperti berikut :
    auto eth0
    iface eth0 inet static
    address 1.2.3.4
    netmask 255.255.255.248
    default 1.2.3.1

    auto eth1
    iface eth1 inet static
    address 10.0.0.4
    netmask 255.255.255.0

    Konfigurasi interface lurus penerusan (straight forward) ini perlu diubah ke dalam mode bridge seperti di mana konfigurasi interfaces eth1 bergerak ke interfaces br0 baru. Plus kita mengkonfigurasi bahwa br0 harus menjembatani (membridge) interfaces eth1. Kita juga harus memastikan bahwa interface eth1 selalu dalam modus promiscuous - ini memberitahu interfaces untuk memforward semua frame ethernet ke IP stack.
    auto eth0
    iface eth0 inet static
    address 1.2.3.4
    netmask 255.255.255.248
    default 1.2.3.1

    auto eth1
    iface eth1 inet manual
    up ip link set $IFACE up promisc on

    auto br0
    iface br0 inet static
    address 10.0.0.4
    netmask 255.255.255.0
    bridge_ports eth1

    Sampai titik ini kita harus merestart networking. Bersiaplah bahwa ini mungkin akan membuat tidak bekerja seperti yang kita harapkan dan mungkin kita akan kehilangan konektivitas secara remote akses. Pastikan kita dapat memecahkan permasalahan ini dengan memiliki akses lokal.
    sudo /etc/init.d/network restart

    Mempersiapkan server untuk di konfigurasi bridge
    Edit /etc/openvpn/server.conf dan ganti beberapa opsi hingga seperti berikut :
    ;dev tun
    dev tap
    up "/etc/openvpn/up.sh br0 eth1"
    ;server 10.8.0.0 255.255.255.0
    server-bridge 10.0.0.4 255.255.255.0 10.0.0.128 10.0.0.254

    Berikutnya buat suatu script helper untuk menambahkan ke interfaces tap ke bridge dan untuk memastikan interfaces eth1 dalam modus promiscuous.
    Buat /etc/openvpn/up.sh dan isi seperti dibawah ini:
    #!/bin/sh

    BR=$1
    ETHDEV=$2
    TAPDEV=$3

    /sbin/ip link set "$TAPDEV" up
    /sbin/ip link set "$ETHDEV" promisc on
    /sbin/brctl addif $BR $TAPDEV

    Lalu buat supaya script helper ini bisa di exekusi :
    sudo chmod 755 /etc/openvpn/up.sh

    Setelah mengkonfigurasi server, saatnya merestart openvpn :
    sudo /etc/init.d/openvpn restart


    Konfigurasi di klien
    Pertama, install openvpn di klien :
    sudo apt-get install openvpn

    Kemudian bermodal dari server yang sebelumnya sudah dikonfigurasi dan dihasilkan sertifikat serta key klien yang telah disalin ke direktori /etc/openvpn/ pada mesin klien, kini membuat file konfigurasi klien dengan menyalin dari sample konfigurasi. Dalam terminal pada komputer klien masukkan :
    sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn

    Kini edit /etc/openvpn/client.conf dan rubah hingga seperti di bawah ini :
    dev tap
    ;dev tun

    Restart openvpn-nya :
    sudo /etc/init.d/openvpn restart

    Mulai sekarang seharusnya kita sudah bisa terkoneksi ke remote LAN melalui VPN.

    Implementasi software klien openvpn
    Linux Network Manager GUI untuk openvpn
    Banyak distribusi linux dekstop menyertakan ini dan bahkan varian Ubuntu desktop datang dengan Network Manager, cara menakjubkan sebuah GUI untuk mengkonfigurasi network seting kita. Ini juga dapat digunakan untuk mengatur koneksi openvpn. Pastikan bahwa kita sudah mempunyai paket network-manager-openvpn terinstall. Dibawah ini kita dapat melihat installasi yang menginstall paket lainnya yang dibutuhkan juga :
    root@client:~# apt-get install network-manager-openvpn
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following extra packages will be installed:
    liblzo2-2 libpkcs11-helper1 network-manager-openvpn-gnome openvpn
    Suggested packages:
    resolvconf
    The following NEW packages will be installed:
    liblzo2-2 libpkcs11-helper1 network-manager-openvpn
    network-manager-openvpn-gnome openvpn
    0 upgraded, 5 newly installed, 0 to remove and 631 not upgraded.
    Need to get 700 kB of archives.
    After this operation, 3,031 kB of additional disk space will be used.
    Do you want to continue [Y/n]?

    Untuk menginformasikan ke network-manager mengenai paket-paket yang baru diinstal kita harus restart:
    root@client:~# restart network-manager
    network-manager start/running, process 3078

    Buka Network Manager GUI, pilih tab VPN dan kemudian klik tombol 'Add'. Pilih OpenVPN sebagai jenis VPN di kotak dialog pembuka dan tekan 'Create'. Pada kotak dialog berikutnya menambahkan nama server OpenVPN itu sebagai 'Gateway', set 'Type' ke 'Sertifikat (TLS)', 'User Sertifikat' titik ke sertifikat pengguna kita, 'CA Certificate' untuk sertifikat CA dan 'Private Key' ke file kunci pribadi kita. Gunakan tombol advanced untuk mengaktifkan kompresi atau pengaturan khusus lainnya yang kita atur sebelumnya di server. Sekarang cobalah untuk membangun (estabilized) VPN kita.

    Software openvpn dengan GUI untuk Windows
    Pertama-tama download dan install versi paling baru dari OpenVPN Windows Installer. Openvpn 2.2.1 menjadi versi terakhir saat manual openvpn ini ditulis.

    Sesudah terinstall kita perlu menjalankan servis openvpn ini. Buka Start Menu>Computer>Manage>Services and Applications>Services. Cari OpenVPN servis dan jalankan itu sebagai administrator. Kita juga bisa mengklik kanan untuk melihat pilihannya.

    Kita juga harus membuat dan menuliskan beberapa option konfig dalam teks file dan diletakan di C:\Program Files\OpenVPN\config\client.ovpn bersama dengan certificate CA. Kita juga bisa memasukan sertifikat pengguna ke dalam direktori home user seperti dalam contoh di bawah ini :
    # C:\Program Files\OpenVPN\config\client.ovpn
    client
    remote server.example.com
    port 1194
    proto udp
    dev tun
    dev-type tun
    ns-cert-type server
    reneg-sec 86400
    auth-user-pass
    auth-retry interact
    comp-lzo yes
    verb 3
    ca ca.crt
    cert "C:\\Users\\username\\My Documents\\openvpn\\client.crt"
    key "C:\\Users\\username\\My Documents\\openvpn\\client.key"
    management 127.0.0.1 1194
    management-hold
    management-query-passwords
    auth-retry interact


    Manual page dalam bentuk PDF-nya bisa di download di bawah ini :
    Panduan manual seting OpenVPN

    Referensi :
    OpenVPN
    OpenVPN Hardening Security Guide
    OpenVPN: Building and Integrating Virtual Private Networks
    help.ubuntu.com/12.04/serverguide/vpn.html




    Selengkapnya