Internet merupakan sebuah jaringan
komputer yang sangat terbuka di dunia, konsekuensi yang harus di
tanggung adalah tidak ada jaminan keamanan bagi jaringan yang terkait ke
Internet. Artinya jika operator jaringan tidak hati-hati dalam
menset-up sistemnya, maka kemungkinan besar jaringan yang terkait ke
Internet akan dengan mudah dimasuki orang yang tidak di undang dari
luar. Adalah tugas dari operator jaringan yang bersangkutan, untuk
menekan resiko tersebut seminimal mungkin. Pemilihan strategi dan
kecakapan administrator jaringan ini, akan sangat membedakan apakah
suatu jaringan mudah ditembus atau tidak.
Firewall merupakan alat untuk mengimplementasikan kebijakan security
(security policy). Sedangkan kebijakan security, dibuat berdasarkan
perimbangan antara fasilitas yang disediakan dengan implikasi
security-nya. Semakin ketat kebijakan security, semakin kompleks
konfigurasi layanan informasi atau semakin sedikit fasilitas yang
tersedia di jaringan. Sebaliknya, dengan semakin banyak fasilitas yang
tersedia atau sedemikian sederhananya konfigurasi yang diterapkan, maka
semakin mudah orang orang ‘usil’ dari luar masuk kedalam sistem (akibat
langsung dari lemahnya kebijakan security).
Tulisan ini akan mencoba melihat beberapa kebijakan sekuriti yang
lazim digunakan pada saat mengkaitkan sebuah jaringan ke Internet.
Firewall
Firewall adalah istilah yang biasa digunakan untuk menunjuk pada
suatu komponen atau sekumpulan komponen jaringan, yang berfungsi
membatasi akses antara dua jaringan, lebih khusus lagi, antara jaringan
internal dengan jaringan global Internet. Firewall mempunyai beberapa
tugas :
- Pertama dan yang terpenting adalah: harus dapat mengimplementasikan
kebijakan security di jaringan (site security policy). Jika aksi
tertentu tidak diperbolehkan oleh kebijakan ini, maka firewall harus
meyakinkan bahwa semua usaha yang mewakili operasi tersebut harus gagal
atau digagalkan. Dengan demikian, semua akses ilegal antar jaringan
(tidak diotorisasikan) akan ditolak.
- Melakukan filtering: mewajibkan semua traffik yang ada untuk
dilewatkan melalui firewall bagi semua proses pemberian dan pemanfaatan
layanan informasi. Dalam konteks ini, aliran paket data dari/menuju
firewall, diseleksi berdasarkan IP-address, nomor port, atau arahnya,
dan disesuaikan dengan kebijakan security.
- Firewall juga harus dapat merekam/mencatat even-even mencurigakan
serta memberitahu administrator terhadap segala usaha-usaha menembus
kebijakan security.
Merencanakan Jaringan Dengan Firewall
Merencanakan sistem firewall pada jaringan, berkaitan erat dengan
jenis fasilitas apa yang akan disediakan bagi para pemakai, sejauh mana
level resiko-security yang bisa diterima, serta berapa banyak waktu,
biaya dan keahlian yang tersedia (faktor teknis dan ekonomis). Firewall
umumnya terdiri dari bagian filter (disebut juga screen atau choke) dan
bagian gateway (gate). Filter berfungsi untuk membatasi akses,
mempersempit kanal, atau untuk memblok kelas trafik tertentu. Terjadinya
pembatasan akses, berarti akan mengurangi fungsi jaringan. Untuk tetap
menjaga fungsi komunikasi jaringan dalam lingkungan yang ber-firewall,
umumnya ditempuh dua cara :
- Pertama, bila kita bayangkan jaringan kita berada dalam
perlindungan sebuah benteng, komunikasi dapat terjadi melalui
pintu-pintu keluar benteng tersebut. Cara ini dikenal sebagai
packet-filtering, dimana filter hanya digunakan untuk menolak trafik
pada kanal yang tidak digunakan atau kanal dengan resiko-security cukup
besar, sedangkan trafik pada kanal yang lain masih tetap diperbolehkan.
- Cara kedua, menggunakan sistem proxy,
dimana setiap komunikasi yang terjadi antar kedua jaringan harus
dilakukan melalui suatu operator, dalam hal ini proxy server. Beberapa
protokol, seperti telnet dan SMTP(Simple Mail Transport Protocol), akan
lebih efektif ditangani dengan evaluasi paket (packet filtering),
sedangkan yang lain seperti FTP
(File Transport Protocol), Archie, Gopher dan HTTP (Hyper-Text
Transport Protocol) akan lebih efektif ditangani dengan sistem proxy.
Kebanyakan firewall menggunakan kombinasi kedua teknik ini (packet
filtering dan proxy).
Ada banyak literatur yang membahas masalah security & membagi
arsitektur dasar firewall menjadi tiga jenis. Masing masing adalah:
- arsitektur dengan dual-homed host (kadang kadang dikenal juga sebagai dual homed gateway/ DHG)
- screened-host (screened host gateway/ SHG) · screened subnet (screened subnet gateway/ SSG).
Sistem DHG menggunakan sebuah komputer dengan (paling sedikit) dua network-interface.
Interface pertama dihubungkan dengan jaringan internal dan yang lainnya
dengan Internet. Dual-homed host nya sendiri berfungsi sebagai bastion
host (front terdepan, bagian terpenting dalam firewall).

Pada topologi SHG, fungsi firewall dilakukan oleh sebuah
screening-router dan bastion host. Router ini dikonfigurasi sedemikian
sehingga akan menolak semua trafik kecuali yang ditujukan ke bastion
host, sedangkan pada trafik internal tidak dilakukan pembatasan. Dengan
cara ini setiap client servis pada jaringan internal dapat menggunakan
fasilitas komunikasi standard dengan Internet tanpa harus melalui proxy.
Firewall dengan arsitektur screened-subnet menggunakan dua
screening-router dan jaringan tengah (perimeter network) antara kedua
router tersebut, dimana ditempatkan bastion host. Kelebihan susunan ini
akan terlihat pada waktu optimasi penempatan server.
Selanjutnya, bagaimana relevansi arsitektur firewall tersebut
terhadap level security? Suatu jaringan harus dapat menangani interaksi
client-server, tidak terkecuali dengan kehadiran firewall. Sejauh ini,
untuk operasi client internal – server internal, atau client internal –
server eksternal, tidak terlalu menimbulkan masalah. Jika kita akan
membuat sistem firewall untuk jaringan demikian, hanya dengan memasang
proxy server pada bastion host dalam arsitektur yang dipilih, kualitas proteksi
firewall yang bersangkutan akan maksimal. Artinya ‘keselamatan’ seluruh
jaringan, sekarang hanya tergantung pada baik-tidaknya atau seberapa
‘bagus’ firewall tersebut dan tidak tergantung pada program-program yang
lain. Beda halnya bila jaringan kita akan mendukung operasi client
eksternal – server internal, atau dengan kata lain : jaringan internal
kita menyediakan layanan informasi yang dapat diakses dari luar. Dalam
konteks ini, harus diperhitungkan metoda penempatan mesin yang
menjalankan program server, supaya mesin tersebut dapat dikenali dari
internet dan sedemikian, komunikasi dengan client-nya dapat berlangsung
dengan baik tanpa mengorbankan kepentingan security.
Arsitektur dual-homed menawarkan solusi sederhana dan murah.
Satu-satunya mesin yang dikenal dari internet dalam sistem ini adalah
dual-homed host-nya sendiri, dan dengan demikian ia menjadi satu-satunya
mesin alternatif untuk menjalankan program server. Tetapi akan
bermanfaat untuk mengingat, bahwa semakin banyak layanan yang disediakan
atau semakin banyak program yang berjalan pada bastion-host, maka
peluang penyusupan ke komputer tersebut semakin besar. Karena, seperti
diyakini banyak orang, hampir dipastikan tidak ada program apapun yang
bebas sama sekali dari bugs, apalagi untuk program-program berukuran
besar. Dan sekali bugs ini dapat dieksploitasi oleh seseorang yang
kemudian masuk ke dalam bastion-host, maka seluruh komputer di jaringan
kita akan menjadi terbuka! Jika faktor ekonomis memaksa kita untuk tetap
mengimplementasikan arsitektur DHG, maka ada beberapa nasihat yang
patut diperhatikan, diantaranya: menggunakan perangkat lunak server yang
telah teruji relatif ‘aman’ serta berukuran kecil, mereduksi dan
mengoptimasi jumlah program yang berjalan, kemudian tidak memberikan
account reguler pada bastion-host.
Dua arsitektur lainnya, screened-host dan screened-subnet,
menyediakan pilihan lebih banyak. Screening-router dapat diatur untuk
melakukan operasi packet filtering yang memungkinkan mesin-mesin
tertentu dapat dikenali dari luar. Mesin mesin ini, kemudian menjalankan
program-program server yang dapat diakses dari internet. Resiko dengan
metoda seperti ini adalah penambahan jumlah komputer yang mungkin untuk
diserang, sehingga akan lebih baik jika sebelumnya kita menyiapkan
mesin-mesin tersebut dengan level security paling tidak sama dengan
bastion-host atau kalau bisa, lebih.
Packet Filtering
Berbagai kebijakan dapat diterapkan dalam melakukan operasi packet
filtering. Pada intinya, berupa mekanisme pengontrollan data yang
diperbolehkan mengalir dari dan/atau ke jaringan internal, dengan
menggunakan beberapa parameter yang tercantum dalam header paket data:
arah (inbound atau outbound), address asal dan tujuan, port asal dan
tujuan, serta jenis protokol transport. Router akan mengevaluasi
informasi ini dalam setiap paket data yang mengalir melaluinya, kemudian
menetapkan aksi yang harus dilakukan terhadap paket tersebut,
berdasarkan set aturan/program dalam packet-filtering. Sehingga
keputusan routing dasar router tersebut, kemudian dilengkapi dengan
bagian dari kebijakan security jaringan.
Tabel berikut akan menunjukan contoh konfigurasi operasi
packet-filtering, untuk menyediakan hanya fasilitas SMTP inbound dan
outbound pada jaringan.
|
Aturan
|
Arah
|
Address Asal
|
Address Tujuan
|
Protokol
|
Port Tujuan
|
Aksi
|
| A |
masuk |
eksternal |
internal |
TCP |
25 |
ok |
| B |
keluar |
internal |
eksternal |
TCP |
>1023 |
ok |
| C |
keluar |
internal |
eksternal |
TCP |
25 |
ok |
| D |
masuk |
eksternal |
internal |
TCP |
>1023 |
ok |
| E |
sembarang |
sembarang |
sembarang |
sembarang |
sembarang |
deny |
Aturan A dan B melayani hubungan SMTP inbound (email
datang), aturan C dan D melayani hubungan SMTP outbound (email keluar)
serta aturan E merupakan aturan default yang dilakukan bila aturan
aturan sebelumnya gagal. Kalau diamati lebih dekat, selain trafik SMTP
konfigurasi tersebut juga masih membolehkan hubungan masuk dan keluar
pada port >1023 (aturan B dan D), sehingga terdapat kemungkinan bagi
program-program server seperti X11 (port 6000), OpenWindows (port 2000),
atau kebanyakan program basis-data (Sybase, Oracle, Informix, dll),
untuk dihubungi dari luar. Untuk menutup kemungkinan ini, diperlukan
evaluasi parameter lain, seperti evaluasi port asal. Dengan cara ini,
satu-satunya celah menembus firewall adalah dengan menggunakan port
SMTP. Bila kita masih juga kurang yakin dengan kejujuran para pengguna
port ini, dapat dilakukan evaluasi lebih lanjut dari informasi ACK.
Proxy
Dalam jaringan yang menerapkan sistem proxy, hubungan komunikasi ke
internet dilakukan melalui sistem pendelegasian. Komputer-komputer yang
dapat dikenali oleh internet bertindak sebagai ‘wakil’ bagi mesin lain
yang ingin berhubungan ke luar. Proxy server untuk (kumpulan) protokol
tertentu dijalankan pada dual-homed host atau bastion-host, dimana
seluruh pemakai jaringan dapat berkomunikasi dengannya, kemudian proxy
server ini bertindak sebagai delegasi. Dengan kata lain setiap program
client akan berhubungan dengan proxy server dan proxy server ini lah
yang akan berhubungan dengan server sebenarnya di internet. Proxy server
akan mengevaluasi setiap permintaan hubungan dari client dan memutuskan
mana yang diperbolehkan dan mana yang tidak. Bila permintaan hubungan
ini disetujui, maka proxy server me-relay permintaan tersebut pada
server sebenarnya.

Ada beberapa istilah menunjuk pada tipe proxy server, diantaranya
proxy level aplikasi, proxy level circuit, proxy generik atau khusus,
proxy cerdas dll. Apapun jenis proxy yang digunakan, ada beberapa
konsekuensi implementasi sistem ini:
- pada umumnya memerlukan modifikasi client dan/atau prosedur akses
serta menuntut penyediaan program server berbeda untuk setiap aplikasi.
- Penggunaan sistem proxy memungkinkan penggunaan private IP Address
bagi jaringan internal. Konsekuensinya kita bisa memilih untuk
menggunakan IP Address kelas A (10.x.x.x) untuk private IP address yang
digunakan dalam jaringan internet; sehingga komputer yang dapat
tersambung dalam jaringan internal dapat mencapai jumlah jutaan
komputer.
- Paket SOCKS atau TIS FWTK merupakan contoh paket perangkat lunak proxy yang sering digunakan dan tersedia bebas di internet.
Penulis: Eueung Mulyana & Onno W. Purbo