Pages
Diberdayakan oleh Blogger.
About Me
Archivo del blog
Popular Posts
-
Dalam komputer terdapat dua buah cara merepresentasikan nilai negatif, yaitu komplemen satu (ones complement) dan komplemen dua (twos c...
-
BAB 1 MATERI PENGANTAR 1. Pengertian Dan Penjelasan Dari DCE Data Circuit terminating Equipment Sebuah data...
-
Tunneling Protocol Pada dasarnya jaringan komputer menggunakan sebuah tunneling protokol saat data dalam protokol HTTP di-enkapsulasi (di...
-
7 LAPISAN OSI LAYER Gambaran Umum Referensi OSI Sebuah badan multinasional yang didirikan...
-
LSB : Watermarking Menggunakan Metode LSB ( Least Significant Bit ) Menggunakan MATLAB 7.8 Pengertian Watermarking Watermarki...
-
Awalnya, sistem penamaan alamat IP menggunakan sistem host table. Di dalam sistem ini, setiap komputer memiliki file host.txt yang berisi da...
-
ENTITY RELATIONSHIP DIAGRAM (ERD) Dalam rekayasa perangkat lunak, sebuah Entity-Relationship Model (ERM) merupakan abstra...
-
Pengertian dan Cara Kerja MAIL SERVER MAIL SERVER Email merupakan sebuah layanan pengiriman surat elektronik yang di kirim m...
-
IPTABLES Mengapa diberi nama firewall? Mungkin itu pertanyaan yang pertama kali muncul ketika membaca artikel tentang keamanan, baik di ...
-
Shorewall Shorewall adalah salah satu tools firewall pada linux yang berbasiskan iptables. Shorewall terdapat konsep “zone” yang memuda...
Apa itu ERD ?
ENTITY RELATIONSHIP DIAGRAM (ERD)
Dalam rekayasa perangkat lunak, sebuah Entity-Relationship
Model (ERM) merupakan abstrak dan konseptual representasi data. Entity-Relationship adalah
salah satu metode pemodelan basis data yang digunakan untuk menghasilkan skema
konseptual untuk jenis/model data semantik sistem. Dimana sistem
seringkali memiliki basis data relasional, dan ketentuannya bersifat top-down. Diagram
untuk menggambarkan modelEntitiy-Relationship ini disebut Entitiy-Relationship diagram, ER
diagram, atau ERD.
1. Entity
-
Entity
adalah objek yang dapat dibedakan dalam dunia nyata
-
Entity
Set adalah kumpulan dari entity yang sejenis
-
Entity
Set dapat berupa :
o
Objek
secara Fisik: Rumah, kendaraan, Peralatan
o
Objek secara konsep: Pekerjaan, Perusahaan,
Rencana
2. Atribut
Karakteristik dari Entity atau relationship,
yang menyediakan penjelasan detail tentang entity
atau relationship tersebut.
รพ Jenis Atribut:
-
Nilai Atribut :
Data actual atau informasi yang disimpan
pada suatu atribut di dalam suatu entity atau relationship
-
Key
Atribut yang digunakan untuk menentukan
suatu Entity secara unik
-
Atribut Simple
Atribut yang bernilai tunggal
Contoh:
-
Atribut Multivalue
Atribut yang memiliki sekelompok nilai
untuk setiap instant Entity
Contoh Atribut : Atribut Multivalue
-
Atribut composite
Suatu atribut yang terdiri dari beberapa
atribut yang lebih kecil yang mempunyai arti tertentu
Contoh:
-
Atribut Derivatif
Suatu atribut yang dihasilkan dari
atribut yang lain.
Contoh:
3. Relationship
- Definisi
Hubungan yang terjadi antara satu atau
lebih entity.
- Relationship Set
Kumpulan Relationship yang sejenis
Contoh:
- Derajat dari Relationship
Menjelaskan jumlah Entity
yang berpartisipasi dalam suatu Relationship
§ Unary Degree (Derajat Satu)
§ Binary Degree (Derajat Dua)
§ Ternary Degree (Derajat Tiga)
4. Cardinality Ratio Constraint
-
Definisi :
Menjelaskan batasan Jumlah
keterhubungan satu Entity dengan Entity lainnya.
M Jenis-jenis Cardinality Ratio
( 1:1
( 1:M / N:1
( M : N
5. Participation Constraint
Definisi:
Menjelaskan apakah keberadaan suatu
Entity bergantung pada hubungannya dengan entity lain
Jenis-Jenis Participation Constraint
- Total Participation
Keberadaan suatu entity tergantung pada
hubungannya dengan entity lain
2. Partial Participation
Keberadaan suatu entity tidak tergantung pada hubungannya dengan
Entity lain
6. Weak Entity
Definisi:
Weak Entity: suatu entity dimana
keberadaan dari entity tersebut tergantung dari keberadaan entity lain
Entity yang merupakan induknya disebut
Identifying Owner dan relationship-nya
Disebut Identifyimg Relationship
Weak Entity Selalu mempunyai Total
Participation Constraint dengan Identifying Owner
Contoh Weak
Entity:
1. Entity
2. Weak Entity
3. Relationship
4. Identifying Relationship
5. Atribut
6. Atribut Primary Key
Apakah itu Tunneling Protocol ?
Tunneling Protocol
Pada dasarnya jaringan komputer menggunakan sebuah tunneling
protokol saat data dalam protokol HTTP di-enkapsulasi (dibungkus) dalam
protokol SSL sebagai payload. Secara sederhana tunneling berarti mengirimkan
data melalui koneksi lain yang sudah terbentuk , sebagai contoh saat Anda
membuka situs internet banking, pasti dalam awalan akan terdapat URL
"https", yang itu sebenarnya adalah data dalam protokol HTTP yang
dikirimkan melalui koneksi dengan protokol SSL, atau "HTTP over SSL".
Dalam bahasa gaulnya "HTTP digendong SSL".
Pada dasarnya jaringan komputer menggunakan sebuah tunneling
protokol saat data dalam protokol HTTP di-enkapsulasi (dibungkus) dalam
protokol SSL sebagai payload. Secara sederhana tunneling berarti mengirimkan
data melalui koneksi lain yang sudah terbentuk , sebagai contoh saat Anda
membuka situs internet banking, pasti dalam awalan akan terdapat URL
"https", yang itu sebenarnya adalah data dalam protokol HTTP yang
dikirimkan melalui koneksi dengan protokol SSL, atau "HTTP over SSL".
Dalam bahasa gaulnya "HTTP digendong SSL".
VIRTUAL PRIVATE NETWORK
Apakah VPN itu?
Virtual Networking: menciptakan ‘tunnel’ dalam jaringan yang
tidak harus direct.
Sebuah ‘terowongan’ diciptakan melalui public network
seperti Internet. Jadi seolaholah ada hubungan point-to-point dengan data yang
dienkapsulasi.
Private Networking: Data yang dikirimkan terenkripsi,
sehingga tetap rahasia
meskipun melalui public network.
Cara Kerja
VPN bisa bekerja dengan cara:
•dial-up
• bagian dari router-to-router
Digging the Tunnel
Tunnel dalam VPN sebenarnya hanya logical point-to-point
connection dengan
otentikasi dan enkripsi. Analoginya adalah kalau sebuah
organisasi/perusahaan
punya kantor di 2 gedung yang berbeda. Nah, untuk
orang/informasi bergerak dari
satu kantor ke kantor lainnya, bisa melalui:
• kaki lima atau jalan umum
• menggali lubang di bawah tanah (analog dengan VPN).
Proses Enkapsulasi
Paket lama dibungkus dalam paket baru. Alamat ujung tujuan
terowongan (tunnel
endpoints) diletakkan di destination address paket baru,
yang disebut dengan
encapsulation header. Tujuan akhir tetap ada pada header
paket lama yang
dibungkus (encapsulated). Saat sampai di endpoint, kapsul
dibuka, dan paket lama
dikirimkan ke tujuan akhirnya.
Enkapsulasi dapat dilakukan pada lapisan jaringan yang
berbeda.
Layer 2 Tunneling
VPN paling sering menggunakan lapisan data link, misalnya:
• Point-to-Point Tunneling Protocol (PPTP) dari Microsoft.
• Contoh yang lain adalah Layer 2 Forwarding (L2F) dari
Cisco yang bisa
bekerja pada jaringan ATM dan Frame Relay. L2F didukung oleh
Internetwork Operating System yang didukung oleh
router-router Cisco.
• Yang terbaru adalah Layer 2 Tunneling Protocol (L2TP) yang
mengkombinasikan elemen dari PPTP dan L2F.
Layer 3 Tunneling
Tunneling dapat dibuat pula pada lapisan IP. Jadi paket IP
dibungkus dalam IP
Security (IPSec) dengan menggunakan pula IKE (Internet Key
Exchange).
IPSec bisa dipergunakan dengan beberapa cara:
• transport mode: IPSec melakukan enkripsi, tetapi tunnel
dibuat oleh L2TP.
Perhatikan bahwa L2TP bisa juga mengenkapsulasi IPX
(Internetwork
Packet Exchange) dan jenis paket-paket layer 3 lainnya.
• tunneling mode: IPSec melakukan enkripsi dan tunneling-nya.
Ini mungkin
harus dilakukan jika router/gateway tidak mendukuk L2TP atau
PPTP.
Dukungan Sistem Operasi
• Windows 9x, Windows NT: PPTP
• Windows 2000: L2TP, PPTP
• Linux: IPSec & SSH (Secure Shell)
VPN pada Windows 2000
Alasan Penggunaan VPN
VPN vs Dial-up Networking:
Misalnya seorang pegawai yang mobile bertugas antarkota.
Bisa saja pakai dial-up
service, tetapi kalau dial-up antar kota, bisa mahal sekali.
Oleh karena itu menggunakan ISP lokal + VPN, untuk mengakses
LAN perusahaan.
Selain itu VPN juga akan mereduksi jumlah telephone line
& modem bank yang
perlu disediakan perusahaan. Perusahaan cukup menyediakan 1
koneksi saja ke
Internet. Hal ini akan mereduksi cost dari perusahaan.
Keuntungan VPN terhadap dial-up access:
1. menghemat biaya interlokal
2. membutuhkan lebih
sedikit saluran telepon di perusahaan
3. membutuhkan
hardware yang lebih sedikit (seperti modem bank)
Kerugian VPN
1. kedua endpoints
dari VPN, koneksinya harus reliable. Sebagai contoh,
kalau ISP di sisi client (sang telecommuter employee) tidak
bisa
diakses/di-dial, maka tentu VPN tidak bisa juga! Lain halnya
kalau bisa
dial-up service ke kantor.
2. Performance VPN
bisa lebih lambat daripada dial-up service yang biasa
tanpa VPN. Hal ini disebabkan karena ada proses tunneling
dan
enkripsi/dekripsi.
Skenario-skenario VPN
Remote Access VPN
1. Home user atau
mobile user men-dial ke ISP
2. Setelah ada
koneksi Internet, client menghubungkan diri ke remote access server
yang telah dikonfigurasikan dengan VPN.
3. User diotentikasi,
dan akses kemudian diizinkan.
Virtual Private Extranets
Untuk menghubungkan diri partner, supplier atau customer,
seperti dalam B2B ecommerce. Hal yang penting adalah melindungi LAN (intranet)
dari akses yang
mungkin merugikan dari luar. Oleh karena itu harus
dilindungi oleh firewall.
Koneksi client ke intranet dengan VPN di perimeter network.
Karena biasanya yang
diakses adalah web server, maka web server juga ada di
perimeter network.
VPN Connections Between Branch Offices
Disebut juga gateway-to-gateway atau router-to-router
configuration. Routernya
harus disetup sebagai VPNserver dan client.
Software seperti vpnd (VPNdaemon) bisa dipergunakan untuk
menghubungkan 2
LAN dengan Linux atau FreeBSD.
VPN Protocols
Tunneling Protocols
1. PPTP
Dikembangkan oleh Microsoft dari PPP yang dipergunakan untuk
remote access.
Caranya:
a. PPTP
mengenkapsulasi frame yang bisa berisi IP, IPX atau NetBEUI dalam
sebuah header Generic Routing Encapsulation (GRE). Tetapi
PPTP
membungkus GRE dalam paket IP. Jadi PPTP membutuhkan IP
untuk
membuat tunnel-nya, tetapi isinya bisa apa saja.
b. Data aslinya
dienkripsi dengan MPPE.
PPTP-linux adalah client software. Sedangkan yang server
adalah PoPToP untuk
Linux, Solaris dan FreeBSD.
2. L2F
Dibuat Cisco tahun 1996. Bisa menggunakan ATM dan Frame
Relay, dan tidak
membutuhkan IP. L2F juga bisa menyediakan otentikasi untuk
tunnel endpoints.
3. L2TP
Dikembangkan oleh Microsoft dan Cisco. Bisa mengenkapsulasi
data dalam IP,
ATM, Frame Relay dan X.25.
Keunggulan L2TP dibandingkan PPTP:
• multiple tunnels between endpoints, sehingga bisa ada
beberapa saluran
yang memiliki perbedaan Quality of Service (QoS).
•mendukung kompresi
•bisa melakukan tunnel authentication
• bisa bekerja pada jaringan non-IP seperti ATM dan Frame
Relay.
4. IPSec
Dalam tunneling mode, IP Sec bisa dipergunakan untuk
mengenkapsulasi paket.
IP Sec juga bisa dipergunakan untuk enkripsi dalam protokol
tunneling lainnya.
IPSec menggunakan 2 protokol
• Authentication Header (AH): memungkinkan verifikasi
identitas pengirim.
AH juga memungkinkan pemeriksaan integritas dari
pesan/informasi.
•Encapsulating Security Payload (ESP): memungkinkan enkripsi
informasi
sehingga tetap rahasia. IP original dibungkus, dan outer IP
header
biasanya berisi gateway tujuan. Tetapi ESP tidak menjamin
integrity dari
outer IP header, oleh karena itu dipergunakan berbarengan
dengan AH.
5. SSH dan SSH2
Dikembangkan untuk membuat versi yang lebih aman dari rsh,
rlogin dan rcp
pada UNIX. SSH menggunakan enkripsi dengan public key
seperti RSA. SSH
bekerja pada session layer kalau merujuk pada OSI reference
model, sehingga
disebut circuit-level VPN. SSH membutuhkan login account.
6. CIPE
Adalah driver kernel Linux untuk membuat secure tunnel
anatara 2 IP subnet.
Data dienkripsi pada lapisan network layer (OSI) sehingga di
sebut low-level
encryption. Oleh karena itu CIPE tidak memerlukan perubahan
besar pada layerlayer di atasnya (termasuk aplikasi).
Encryption Protocols
•MPPE
• IPSec encryption: DES atau 3DES
•VPNd: Blowfish
• SSH: public key encryption
VPN Security
1. Authentication
Proses mengidentifikasi komputer dan manusia/user yang
memulai VPN
connection. Metode otentikasi dapat dilakukan dengan
protokol:
- Extensible Authentication Protocol (EAP)
- Challenge Handshake Authentication (CHAP)
-MS-CHAP
-Password Authentication Protocol (PAP)
-Shiva-PAP
2. Authorization
Menentukan apa yang boleh dan yang tidak boleh diakses
seorang user.
3. Enkripsi
Masalah Performa VPN
Yang paling jadi masalah adalah performa Internet sendiri.
Misalnya kadang-kadang
bisa terjadi ISP tidak bisa diconnect, atau sedang ada heavy
traffic di Internet
(karena ada berita besar misalnya).
Kemudian adalah masalah kecepatan, dimana circuit-level VPN
lebih lambat
ketimbang network-level VPN.
PPTP merupakan protokol jaringan yang memungkinkan
pengamanan transfer
data dari remote client (client yang berada jauh dari server) ke server pribadi perusahaan dengan membuat sebuah VPN melalui TCP/IP (Snader, 2005). Protokol ini dikembangkan oleh Microsoft dan Cisco.
Teknologi jaringan PPTP merupakan pengembangan dari remote access Point-to-Point protocol yang dikeluarkan oleh Internet Engineering Task Force (IETF).
PPTP merupakan protokol jaringan yang merubah paket PPP menjadi IP datagram agar dapat ditransmisikan melalui intenet. PPTP juga dapat digunakan pada jaringan private LAN-to-LAN. PPTP terdapat sejak dalam sistem operasi Windows NT server dan Windows NT Workstation versi 4.0. Komputer yang berjalan dengan sistem operasi tersebut dapat menggunakan protokol PPTP dengan aman untuk terhubung dengan private network sebagai client dengan remote access melalui internet. PPTP juga dapat digunakan oleh komputer yang terhubung dengan LAN untuk membuat VPN melalui LAN.
Fasilitas utama dari penggunaan PPTP adalah dapat digunakannya public-switched telephone network (PSTN) untuk membangun VPN. Pembangunan PPTP yang mudah dan berbiaya murah untuk digunakan secara luas menjadi solusi untuk remote user dan mobile user, karena PPTP memberikan keamanan dan enkripsi komunikasi melalui PSTN ataupun internet.
Karakteristik
Setelah PPTP tunnel terbentuk, data dari user ditransmisikan antara PPTP client dan PPTP server. Data yang ditransmisikan dalam bentuk IP datagram yang berisi PPP paket. IP datagram dibuat dengan menggunakan versi protokol Generic Routing Encapsulation (GRE) internet yang telah dimodifikasi. Struktur paket data yang dikirimkan melalui PPTP dapat digambarkan sebagai berikut:
data dari remote client (client yang berada jauh dari server) ke server pribadi perusahaan dengan membuat sebuah VPN melalui TCP/IP (Snader, 2005). Protokol ini dikembangkan oleh Microsoft dan Cisco.
Teknologi jaringan PPTP merupakan pengembangan dari remote access Point-to-Point protocol yang dikeluarkan oleh Internet Engineering Task Force (IETF).
PPTP merupakan protokol jaringan yang merubah paket PPP menjadi IP datagram agar dapat ditransmisikan melalui intenet. PPTP juga dapat digunakan pada jaringan private LAN-to-LAN. PPTP terdapat sejak dalam sistem operasi Windows NT server dan Windows NT Workstation versi 4.0. Komputer yang berjalan dengan sistem operasi tersebut dapat menggunakan protokol PPTP dengan aman untuk terhubung dengan private network sebagai client dengan remote access melalui internet. PPTP juga dapat digunakan oleh komputer yang terhubung dengan LAN untuk membuat VPN melalui LAN.
Fasilitas utama dari penggunaan PPTP adalah dapat digunakannya public-switched telephone network (PSTN) untuk membangun VPN. Pembangunan PPTP yang mudah dan berbiaya murah untuk digunakan secara luas menjadi solusi untuk remote user dan mobile user, karena PPTP memberikan keamanan dan enkripsi komunikasi melalui PSTN ataupun internet.
Karakteristik
Setelah PPTP tunnel terbentuk, data dari user ditransmisikan antara PPTP client dan PPTP server. Data yang ditransmisikan dalam bentuk IP datagram yang berisi PPP paket. IP datagram dibuat dengan menggunakan versi protokol Generic Routing Encapsulation (GRE) internet yang telah dimodifikasi. Struktur paket data yang dikirimkan melalui PPTP dapat digambarkan sebagai berikut:
Teknologi tunneling dikelompokkan secara garis besar
berdasarkan protokol tunneling layer 2 (Data Link Layer) dan layer 3 (Network
Layer) model OSI layer. Yang termasuk ke dalam tunneling layer 2 adalah L2F,
PPTP, dan L2TP. Sedangkan yang termasuk layer 3 adalah IPSec, VTP, dan ATMP.
Pada posting ini saya hanya akan membahas mengenai PPTP saja. Untuk L2TP akan dibahas pada posting berikutnya. Di samping itu juga dibahas mengenai salah satu protokol keamanan komputer lainnya, yaitu RADIUS.
Pada posting ini saya hanya akan membahas mengenai PPTP saja. Untuk L2TP akan dibahas pada posting berikutnya. Di samping itu juga dibahas mengenai salah satu protokol keamanan komputer lainnya, yaitu RADIUS.
Pengenalan
PPTP merupakan protokol jaringan yang memungkinkan pengamanan transfer
data dari remote client (client yang berada jauh dari server) ke server pribadi perusahaan dengan membuat sebuah VPN melalui TCP/IP (Snader, 2005). Protokol ini dikembangkan oleh Microsoft dan Cisco.
Teknologi jaringan PPTP merupakan pengembangan dari remote access Point-to-Point protocol yang dikeluarkan oleh Internet Engineering Task Force (IETF).
PPTP merupakan protokol jaringan yang merubah paket PPP menjadi IP datagram agar dapat ditransmisikan melalui intenet. PPTP juga dapat digunakan pada jaringan private LAN-to-LAN. PPTP terdapat sejak dalam sistem operasi Windows NT server dan Windows NT Workstation versi 4.0. Komputer yang berjalan dengan sistem operasi tersebut dapat menggunakan protokol PPTP dengan aman untuk terhubung dengan private network sebagai client dengan remote access melalui internet. PPTP juga dapat digunakan oleh komputer yang terhubung dengan LAN untuk membuat VPN melalui LAN.
Fasilitas utama dari penggunaan PPTP adalah dapat digunakannya public-switched telephone network (PSTN) untuk membangun VPN. Pembangunan PPTP yang mudah dan berbiaya murah untuk digunakan secara luas menjadi solusi untuk remote user dan mobile user, karena PPTP memberikan keamanan dan enkripsi komunikasi melalui PSTN ataupun internet.
Karakteristik
Setelah PPTP tunnel terbentuk, data dari user ditransmisikan antara PPTP client dan PPTP server. Data yang ditransmisikan dalam bentuk IP datagram yang berisi PPP paket. IP datagram dibuat dengan menggunakan versi protokol Generic Routing Encapsulation (GRE) internet yang telah dimodifikasi. Struktur paket data yang dikirimkan melalui PPTP dapat digambarkan sebagai berikut:
PPTP merupakan protokol jaringan yang memungkinkan pengamanan transfer
data dari remote client (client yang berada jauh dari server) ke server pribadi perusahaan dengan membuat sebuah VPN melalui TCP/IP (Snader, 2005). Protokol ini dikembangkan oleh Microsoft dan Cisco.
Teknologi jaringan PPTP merupakan pengembangan dari remote access Point-to-Point protocol yang dikeluarkan oleh Internet Engineering Task Force (IETF).
PPTP merupakan protokol jaringan yang merubah paket PPP menjadi IP datagram agar dapat ditransmisikan melalui intenet. PPTP juga dapat digunakan pada jaringan private LAN-to-LAN. PPTP terdapat sejak dalam sistem operasi Windows NT server dan Windows NT Workstation versi 4.0. Komputer yang berjalan dengan sistem operasi tersebut dapat menggunakan protokol PPTP dengan aman untuk terhubung dengan private network sebagai client dengan remote access melalui internet. PPTP juga dapat digunakan oleh komputer yang terhubung dengan LAN untuk membuat VPN melalui LAN.
Fasilitas utama dari penggunaan PPTP adalah dapat digunakannya public-switched telephone network (PSTN) untuk membangun VPN. Pembangunan PPTP yang mudah dan berbiaya murah untuk digunakan secara luas menjadi solusi untuk remote user dan mobile user, karena PPTP memberikan keamanan dan enkripsi komunikasi melalui PSTN ataupun internet.
Karakteristik
Setelah PPTP tunnel terbentuk, data dari user ditransmisikan antara PPTP client dan PPTP server. Data yang ditransmisikan dalam bentuk IP datagram yang berisi PPP paket. IP datagram dibuat dengan menggunakan versi protokol Generic Routing Encapsulation (GRE) internet yang telah dimodifikasi. Struktur paket data yang dikirimkan melalui PPTP dapat digambarkan sebagai berikut:
Cara Kerja
Cara kerja PPTP dimulai dari sebuah remote atau PPTP client mobile yang membutuhkan akses ke sebuah LAN private dari sebuah perusahaan. Pengaksesan dilakukan dengan menggunakan ISP lokal. Client (yang menggunakan Windows NT Server versi 4.0 atau Windows NT Workstation versi 4.0) menggunakan Dial-Up networking dan protokol remote access PPP untuk terhubung ke sebuah ISP.
Client terhubung ke Network Access Server (NAS) pada fasilitas ISP. NAS di sini bisa berupa prosesor front-end, server dial-in atau server Point-of-Presence (POP). Begitu terhubung, client bisa mengirim dan menerima paket data melalui internet. NAS menggunakan protocol TCP/IP untuk semua trafik yang melalui internet.
Setelah client membuat koneksi PPP ke ISP, panggilan Dial-Up Networking yang kedua dibuat melalui koneksi PPP yang sudah ada. Data dikirimkan menggunakan koneksi yang kedua ini dalam bentuk IP datagram yang berisi paket PPP yang telah ter-enkapsulasi.
Panggilan yang kedua tersebut selanjutnya menciptakan koneksi VPN ke server PPTP pada LAN private perusahaan. Koneksi inilah (melalui panggilan kedua) yang di-istilahkan sebagai tunnel (lorong). Berikut ini gambar yang menjelaskan proses tersebut:
Cara kerja PPTP dimulai dari sebuah remote atau PPTP client mobile yang membutuhkan akses ke sebuah LAN private dari sebuah perusahaan. Pengaksesan dilakukan dengan menggunakan ISP lokal. Client (yang menggunakan Windows NT Server versi 4.0 atau Windows NT Workstation versi 4.0) menggunakan Dial-Up networking dan protokol remote access PPP untuk terhubung ke sebuah ISP.
Client terhubung ke Network Access Server (NAS) pada fasilitas ISP. NAS di sini bisa berupa prosesor front-end, server dial-in atau server Point-of-Presence (POP). Begitu terhubung, client bisa mengirim dan menerima paket data melalui internet. NAS menggunakan protocol TCP/IP untuk semua trafik yang melalui internet.
Setelah client membuat koneksi PPP ke ISP, panggilan Dial-Up Networking yang kedua dibuat melalui koneksi PPP yang sudah ada. Data dikirimkan menggunakan koneksi yang kedua ini dalam bentuk IP datagram yang berisi paket PPP yang telah ter-enkapsulasi.
Panggilan yang kedua tersebut selanjutnya menciptakan koneksi VPN ke server PPTP pada LAN private perusahaan. Koneksi inilah (melalui panggilan kedua) yang di-istilahkan sebagai tunnel (lorong). Berikut ini gambar yang menjelaskan proses tersebut:
Tunneling pada gambar 3 adalah sebuah proses pengiriman
paket data ke sebuah komputer pada jaringan privat dengan me-routing paket data
tersebut melalui beberapa jaringan yang lain, misalnya Internet. Router-router
jaringan yang lain tidak bisa mengakses komputer yang berada pada jaringan
privat. Oleh karena itu, tunneling memungkinkan jaringan routing untuk
mentransmisikan paket data ke komputer penghubung, seperti PPTP server, yang
terhubung ke jaringan routing dan jaringan privat. PPTP client dan PPTP server
menggunakan tunneling untuk merutekan paket data secara aman ke komputer yang
berada pada jaringan privat melalui router-router yang hanya mengetahui alamat
server penghubung jaringan privat.
Contoh Implementasi
PPTP merupakan protocol VPN pertama yang didukung oleh Microsoft Dial-Up Networking. Semua versi rilis Microsoft Windows sejak Windows 95 OSR2 telah dilengkapi dengan aplikasi PPTP client, sedangkan PPTP server berada pada Routing dan Remote Access Service untuk Microsoft Windows. Microsoft Windows Mobile 2003 dan versi yang lebih tinggi juga telah didukung oleh protocol PPTP.
PPTP yang mendukung server-side Linux disediakan oleh PoPToP daemon. Mac OS X (termasuk versi yang dibenamkan ke iPhone) juga sudah dilengkapi dengan PPTP client. Begitu juga berbagai gadget dengan sistem operasi Android telah mendukung pemakaian PPTP dengan baik.
Contoh Implementasi
PPTP merupakan protocol VPN pertama yang didukung oleh Microsoft Dial-Up Networking. Semua versi rilis Microsoft Windows sejak Windows 95 OSR2 telah dilengkapi dengan aplikasi PPTP client, sedangkan PPTP server berada pada Routing dan Remote Access Service untuk Microsoft Windows. Microsoft Windows Mobile 2003 dan versi yang lebih tinggi juga telah didukung oleh protocol PPTP.
PPTP yang mendukung server-side Linux disediakan oleh PoPToP daemon. Mac OS X (termasuk versi yang dibenamkan ke iPhone) juga sudah dilengkapi dengan PPTP client. Begitu juga berbagai gadget dengan sistem operasi Android telah mendukung pemakaian PPTP dengan baik.
Firewall Turunan IPTABLES
Shorewall
Shorewall adalah salah satu tools firewall pada linux yang
berbasiskan iptables. Shorewall terdapat konsep “zone” yang memudahkan kita
untuk menentukan policy firewall, daripada kita melakukan konfigurasi secara
manual dengan iptables, sebelum kita mensetting shorewall lebih baiknya saya
kasih mukadimah mengenai shorewall sebelumnya. Shorewall adalah sebuah tool
firewall yang menggunakan IPTABLES sebagai pengeksekusi firewallnya. Dimana
IPTABLES adalah tool firewall yang ada di Linux dan sudah di include kan ke
kernel, jadi kalau kita nginstall Linux otomatis kita telah menginstall
IPTABLES. Dengan IPTABLES saja sebenernya sudah cukup untuk membangun sebuah
firewall, namun bila kita membangun firewall dari IPTABLES tanpa tool itu sama
saja dengan menyiksa diri sendiri.
Dengan tool shorewall ini saya merasa dimanjakan dengan kemudahannya dalam membangun firewall. Kita cuma perlu menentukan aturan defaultnya lalu aturan khususnya juga pada masqueradingnya.
Shorewall juga dapat digunakan untuk loadbalancing, dan sangat mudah sekali dalam penggunaanya (baru baca, belum pernah nyoba saya).
Dengan tool shorewall ini saya merasa dimanjakan dengan kemudahannya dalam membangun firewall. Kita cuma perlu menentukan aturan defaultnya lalu aturan khususnya juga pada masqueradingnya.
Shorewall juga dapat digunakan untuk loadbalancing, dan sangat mudah sekali dalam penggunaanya (baru baca, belum pernah nyoba saya).
Firewall di DEBIAN dengan Shorewall
Peringatan
Sebelum kita berkenalan dengan shorewall, perlu saya sampaikan disini, jika Anda ingin mencoba-coba mengkonfigurasi firewall, pastikan mesin yang Anda gunakan tidak berada di posisi yang jauh (susah Anda jangkau secara fisik). Kesalahan dalam mengkonfigurasi firewall bisa menyebabkan sistem Anda terkunci, dan tidak bisa diremote login dari jauh. Shorewall terdapat konsep “zone” yang memudahkan kita untuk menentukan policy firewall, daripada kite melakukan konfigurasi secara manual dengan iptables. Misalnya network anda adalah seperti gambar dibawah ini :
Instalasi Shorewall
maka untukmemudahkan kita, asumsikan saja ada 3 zona yang
dapat di definisikan, yaitu :
1. LAN, yaitu jaringan lokal, kita definisikan sebagai zona lok
2. Internet, yaitu koneksi kita ke internet, kita definisikn sebagai zona net
3. Komputer Firewall kita secara otomatis bernama zona $FW
Berikut ini adalah step-by-step konfigurasi yang diterapkan
ini saya testing di Debian
sebelumnya ente kudu remove "ipchains" jika dah keinstal di mesin ente by running this command
1. LAN, yaitu jaringan lokal, kita definisikan sebagai zona lok
2. Internet, yaitu koneksi kita ke internet, kita definisikn sebagai zona net
3. Komputer Firewall kita secara otomatis bernama zona $FW
Berikut ini adalah step-by-step konfigurasi yang diterapkan
ini saya testing di Debian
sebelumnya ente kudu remove "ipchains" jika dah keinstal di mesin ente by running this command
# apt-get remove ipchains
setelah itu
1. Install shorewall dari repository terdekat
Code:
root@haris:~# apt-get install shorewall shorewall-doc
2. Kopi konfigurasi dari template yg
ada
Code:
root@haris:~# cd
/usr/share/doc/shorewall-common/default-config
root@haris:~# cp zones /etc/shorewall/
root@haris:~# cp interfaces /etc/shorewall/
root@haris:~# cp policy /etc/shorewall/
root@haris:~# cp rules /etc/shorewall/
root@haris:~# cp zones /etc/shorewall/
root@haris:~# cp interfaces /etc/shorewall/
root@haris:~# cp policy /etc/shorewall/
root@haris:~# cp rules /etc/shorewall/
3. Setting Shorewall sebagai berikut
:
a. konfigurasi zona
a. konfigurasi zona
Code:
root@haris:~# vim
/etc/shorewall/zones
fw firewall
lok ipv4
net ipv4
fw firewall
lok ipv4
net ipv4
b. konfigurasi interface
Code:
root@haris:~# vim
/etc/shorewall/interfaces
lok eth0 detect tcpflags,nosmurfs
net eth1 detect tcpflags,nosmurfs
lok eth0 detect tcpflags,nosmurfs
net eth1 detect tcpflags,nosmurfs
c. konfigurasi policy
Code:
root@haris:~# vim
/etc/shorewall/policy
$FW all ACCEPT
lok $FW DROP info
lok net DROP info
net $FW DROP info
net lok DROP info
$FW all ACCEPT
lok $FW DROP info
lok net DROP info
net $FW DROP info
net lok DROP info
d. konfigurasi rules
Code:
root@haris:~# vim
/etc/shorewall/rules
ACCEPT lok $FW tcp 80
ACCEPT net $FW tcp 80
ACCEPT lok $FW tcp 53
ACCEPT lok $FW udp 53
ACCEPT lok $FW tcp 80
ACCEPT net $FW tcp 80
ACCEPT lok $FW tcp 53
ACCEPT lok $FW udp 53
4. Testing konfigurasi sebelum menjalankannya
Code:
root@haris:~# shorewall check
root@haris:~# shorewall start
root@haris:~# shorewall start
5. Coba
me-restart shorewall untuk memastikan tidak ada error
Code:
root@haris:~# shorewall restart
root@haris:~# shorewall safe-restart
root@haris:~# shorewall safe-restart
6. Setting Shorewall agar automatis
berjalan sewaktu booting
Code:
root@haris:~# vim
/etc/default/shorewall
startup=1
startup=1
Code:
shorewall
shorewall-nat
shorewall-accounting
shorewall-hosts
shorewall-interfaces
shorewall-routestopped
shorewall.conf
shorewall-masq
shorewall-policy
shorewall-rules
shorewall-zones
shorewall-nat
shorewall-accounting
shorewall-hosts
shorewall-interfaces
shorewall-routestopped
shorewall.conf
shorewall-masq
shorewall-policy
shorewall-rules
shorewall-zones
konfigurasi /etc/shorewall/shorewall.conf
Di konfigurasi ini, isi saja yang diperlukan, yang sebagian sudah terisi biasanya tidak perlu di ubah.
Lengkapnya…
Code:
###############################################################################
# S T A R T U P E N A B L E D
###############################################################################
#agar aktif saat startup
STARTUP_ENABLED=YES
###############################################################################
# V E R B O S I T Y
###############################################################################
#menampilkan proses
VERBOSITY=1
###############################################################################
# C O M P I L E R
# (setting this to 'perl' requires installation of Shorewall-perl)
###############################################################################
#karena tidak ada yang perlu di compile, kosongkan saja
SHOREWALL_COMPILER=
###############################################################################
# L O G G I N G
###############################################################################
#bagian ini, tidak ada yang diubah, periksa dulu tapinyaaa
LOGFILE=/var/log/messages
LOGFORMAT="Shorewall:%s:%s:"
LOGTAGONLY=No
LOGRATE=
LOGBURST=
LOGALLNEW=
BLACKLIST_LOGLEVEL=
MACLIST_LOG_LEVEL=info
TCP_FLAGS_LOG_LEVEL=info
RFC1918_LOG_LEVEL=info
SMURF_LOG_LEVEL=info
LOG_MARTIANS=No
###############################################################################
# L O C A T I O N O F F I L E S A N D D I R E C T O R I E S
###############################################################################
#pada bagian ini, yang sebelah kanan setelah "=" berisi letak direktori file
#sebelah kiri yang sudah terisi tidak perlu di ubah, yang belum dan kalo akan
#digunakan cari dulu filenya, kemudian copy paste letak direktorinya.
#IPTABLES kosongkan, karena kita sudah jadikan shorewall sebagai firewall
IPTABLES=
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
SHOREWALL_SHELL=/bin/sh
SUBSYSLOCK=/var/lock/subsys/shorewall
MODULESDIR=/lib/modules/2.6.24-19-server/kernel/net/netfilter
CONFIG_PATH=/etc/shorewall:/usr/share/shorewall
RESTOREFILE=
IPSECFILE=zones
LOCKFILE=
###############################################################################
# D E F A U L T A C T I O N S / M A C R O S
###############################################################################
#tak perlu ada yang diubah
DROP_DEFAULT="Drop"
REJECT_DEFAULT="Reject"
ACCEPT_DEFAULT="none"
QUEUE_DEFAULT="none"
###############################################################################
# R S H / R C P C O M M A N D S
###############################################################################
#ini juga... biarkan
RSH_COMMAND='ssh ${root}@${system} ${command}'
RCP_COMMAND='scp ${files} ${root}@${system}:${destination}'
###############################################################################
# F I R E W A L L O P T I O N S
###############################################################################
# konfigurasi yang biasanya digunakan...
IP_FORWARDING=On
ADD_IP_ALIASES=Yes
ADD_SNAT_ALIASES=No
RETAIN_ALIASES=No
TC_ENABLED=Internal
TC_EXPERT=No
CLEAR_TC=Yes
MARK_IN_FORWARD_CHAIN=No
CLAMPMSS=No
ROUTE_FILTER=No
DETECT_DNAT_IPADDRS=No
MUTEX_TIMEOUT=60
ADMINISABSENTMINDED=Yes
BLACKLISTNEWONLY=Yes
DELAYBLACKLISTLOAD=No
MODULE_SUFFIX=
DISABLE_IPV6=Yes
BRIDGING=No
DYNAMIC_ZONES=No
PKTTYPE=Yes
RFC1918_STRICT=No
MACLIST_TABLE=filter
MACLIST_TTL=
SAVE_IPSETS=No
MAPOLDACTIONS=No
FASTACCEPT=No
IMPLICIT_CONTINUE=Yes
HIGH_ROUTE_MARKS=No
USE_ACTIONS=Yes
OPTIMIZE=1
EXPORTPARAMS=No
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################
#yang ini juga nggak perlu ada yang diubah
BLACKLIST_DISPOSITION=DROP
MACLIST_DISPOSITION=REJECT
TCP_FLAGS_DISPOSITION=DROP
#LAST LINE -- DO NOT REMOVE
# S T A R T U P E N A B L E D
###############################################################################
#agar aktif saat startup
STARTUP_ENABLED=YES
###############################################################################
# V E R B O S I T Y
###############################################################################
#menampilkan proses
VERBOSITY=1
###############################################################################
# C O M P I L E R
# (setting this to 'perl' requires installation of Shorewall-perl)
###############################################################################
#karena tidak ada yang perlu di compile, kosongkan saja
SHOREWALL_COMPILER=
###############################################################################
# L O G G I N G
###############################################################################
#bagian ini, tidak ada yang diubah, periksa dulu tapinyaaa
LOGFILE=/var/log/messages
LOGFORMAT="Shorewall:%s:%s:"
LOGTAGONLY=No
LOGRATE=
LOGBURST=
LOGALLNEW=
BLACKLIST_LOGLEVEL=
MACLIST_LOG_LEVEL=info
TCP_FLAGS_LOG_LEVEL=info
RFC1918_LOG_LEVEL=info
SMURF_LOG_LEVEL=info
LOG_MARTIANS=No
###############################################################################
# L O C A T I O N O F F I L E S A N D D I R E C T O R I E S
###############################################################################
#pada bagian ini, yang sebelah kanan setelah "=" berisi letak direktori file
#sebelah kiri yang sudah terisi tidak perlu di ubah, yang belum dan kalo akan
#digunakan cari dulu filenya, kemudian copy paste letak direktorinya.
#IPTABLES kosongkan, karena kita sudah jadikan shorewall sebagai firewall
IPTABLES=
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
SHOREWALL_SHELL=/bin/sh
SUBSYSLOCK=/var/lock/subsys/shorewall
MODULESDIR=/lib/modules/2.6.24-19-server/kernel/net/netfilter
CONFIG_PATH=/etc/shorewall:/usr/share/shorewall
RESTOREFILE=
IPSECFILE=zones
LOCKFILE=
###############################################################################
# D E F A U L T A C T I O N S / M A C R O S
###############################################################################
#tak perlu ada yang diubah
DROP_DEFAULT="Drop"
REJECT_DEFAULT="Reject"
ACCEPT_DEFAULT="none"
QUEUE_DEFAULT="none"
###############################################################################
# R S H / R C P C O M M A N D S
###############################################################################
#ini juga... biarkan
RSH_COMMAND='ssh ${root}@${system} ${command}'
RCP_COMMAND='scp ${files} ${root}@${system}:${destination}'
###############################################################################
# F I R E W A L L O P T I O N S
###############################################################################
# konfigurasi yang biasanya digunakan...
IP_FORWARDING=On
ADD_IP_ALIASES=Yes
ADD_SNAT_ALIASES=No
RETAIN_ALIASES=No
TC_ENABLED=Internal
TC_EXPERT=No
CLEAR_TC=Yes
MARK_IN_FORWARD_CHAIN=No
CLAMPMSS=No
ROUTE_FILTER=No
DETECT_DNAT_IPADDRS=No
MUTEX_TIMEOUT=60
ADMINISABSENTMINDED=Yes
BLACKLISTNEWONLY=Yes
DELAYBLACKLISTLOAD=No
MODULE_SUFFIX=
DISABLE_IPV6=Yes
BRIDGING=No
DYNAMIC_ZONES=No
PKTTYPE=Yes
RFC1918_STRICT=No
MACLIST_TABLE=filter
MACLIST_TTL=
SAVE_IPSETS=No
MAPOLDACTIONS=No
FASTACCEPT=No
IMPLICIT_CONTINUE=Yes
HIGH_ROUTE_MARKS=No
USE_ACTIONS=Yes
OPTIMIZE=1
EXPORTPARAMS=No
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################
#yang ini juga nggak perlu ada yang diubah
BLACKLIST_DISPOSITION=DROP
MACLIST_DISPOSITION=REJECT
TCP_FLAGS_DISPOSITION=DROP
#LAST LINE -- DO NOT REMOVE
konfigurasi /etc/shorewall/policy
Bagian ini bersifat umum, berlaku untuk keseluruhan
Code:
#pada baris pertama berarti dari
firewall atau dari net yang berarti dari
#server kita menuju keluar atau ke net di ACCEPT semua... masa di larang!?
#pada baris kedua yang masuk dari net ke firewall kita di DROP semua
#pada baris ketiga saya tambahkan agar jika dari jaringan masuk ke server kita
#DROP dulu semuanya
###############################################################################
#SOURCE DEST POLICY LOG LEVEL LIMIT:BURST
$FW net ACCEPT
net $FW DROP info
net all DROP info
# The FOLLOWING POLICY MUST BE LAST
all all REJECT info
#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
#server kita menuju keluar atau ke net di ACCEPT semua... masa di larang!?
#pada baris kedua yang masuk dari net ke firewall kita di DROP semua
#pada baris ketiga saya tambahkan agar jika dari jaringan masuk ke server kita
#DROP dulu semuanya
###############################################################################
#SOURCE DEST POLICY LOG LEVEL LIMIT:BURST
$FW net ACCEPT
net $FW DROP info
net all DROP info
# The FOLLOWING POLICY MUST BE LAST
all all REJECT info
#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
konfigurasi /etc/shorewall/rules
Bagian ini merupakan pengecualian dari kongigurasi policy
Code:
#######################################################################################
#ACTION SOURCE DEST PROTO DEST SOURCE
ORIGINAL RATE USER/ MARK
# PORT PORT(S)
DEST LIMIT GROUP
# Reject Ping from the "bad" net zone.. and prevent your log from being flooded..
Ping/ACCEPT net $FW
# Permit all ICMP traffic FROM the firewall TO the net zone
#pada baris pertama berarti membolehkan semua dari server keluar atau ke net melalui icmp
#biar bisa ssh,treceroute,...etc kemana-manaaa
#pada baris kedua berarti kita membolehkan user dari net melakukan koneksi melalui tcp
#tepatnya port 22 ya... biar server kita bisa di kendalikan dengan ssh dari komp lain,
#setujui saja
#pada baris ketiga berarti memperbolehkan server kita diakses lewat browser, yaitu port 80
#karena kebetulan firewall saya pasang di webserver^^
ACCEPT $FW net icmp
ACCEPT net $FW tcp 22
ACCEPT all $FW tcp 80
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
#ACTION SOURCE DEST PROTO DEST SOURCE
ORIGINAL RATE USER/ MARK
# PORT PORT(S)
DEST LIMIT GROUP
# Reject Ping from the "bad" net zone.. and prevent your log from being flooded..
Ping/ACCEPT net $FW
# Permit all ICMP traffic FROM the firewall TO the net zone
#pada baris pertama berarti membolehkan semua dari server keluar atau ke net melalui icmp
#biar bisa ssh,treceroute,...etc kemana-manaaa
#pada baris kedua berarti kita membolehkan user dari net melakukan koneksi melalui tcp
#tepatnya port 22 ya... biar server kita bisa di kendalikan dengan ssh dari komp lain,
#setujui saja
#pada baris ketiga berarti memperbolehkan server kita diakses lewat browser, yaitu port 80
#karena kebetulan firewall saya pasang di webserver^^
ACCEPT $FW net icmp
ACCEPT net $FW tcp 22
ACCEPT all $FW tcp 80
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
konfigurasi /etc/shorewall/interfaces
Code:
# nggak perlu ada yang diubah
###############################################################################
#ZONE INTERFACE BROADCAST OPTIONS
net eth0 detect dhcp,tcpflags,logmartians,nosmurfs
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
###############################################################################
#ZONE INTERFACE BROADCAST OPTIONS
net eth0 detect dhcp,tcpflags,logmartians,nosmurfs
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Klo udah,.tinggal start lagi shorewallnya
Code:
/etc/init.d/shorewall start