Selasa, 27 November 2012

sistem keamanan pada linux KEAMANAN SISTEM OPERASI PADA LINUX


sistem keamanan pada linux
KEAMANAN SISTEM OPERASI PADA LINUX
Linux

Komponen Arsitektur Keamanan Linux :

1.      Account Pemakai (user account)

Keuntungan :
·         Kekuasaan dalam satu account yaitu root, sehingga mudah dalam administrasi system.
·         Kecerobohan salah satu user tidak berpengaruh kepada system secara keseluruhan.
·         Masing-masing user memiliki privacy yang ketat

Macam User :
Root       : kontrol system file, user, sumber daya (devices) dan akses jaringan
User        : account dengan kekuasaan yang diatur oleh root dalam melakukan aktifitas
                 dalam system.
Group     : kumpulan user yang memiliki hak sharing yang sejenis terhadap suatu
                 devices tertentu.

2.      Kontrol Akses secara Diskresi (Discretionary Access control)

Discretionary Access control (DAC) adalah metode pembatasan yang ketat, yang meliputi :
·         Setiap account memiliki username dan password sendiri.
·         Setiap file/device memiliki atribut(read/write/execution) kepemilikan, group, dan user umum.

Jika kita lakukan list secara detail menggunakan $ls –l, kita dapat melihat penerapan DAC pada file system linux :

d rw-   - -x    - - -  5  fade  users 1024  Feb    8 12:30 Desktop
- rw-   r - -    r - -   9 Goh  hack    318  Mar  30 09:05 borg.dead.letter

-
rw-
r - -
r - -
9
Goh
hack
318
Mar
30
09:05
borg.dead.letter
1
2
3
4
5
6
7
8
9
10
11

Keterangan :
1 =
tipe dari file ; tanda dash ( - ) berarti file biasa, d berarti directory, l berarti file link, dsb
5 =
6 =
7 =
Jumlah link file
Nama pemilik (owner)
Nama Group
2 =
Izin akses untuk owner (pemilik), r=read/baca, w=write/tulis, x=execute/eksekusi
8 =
9 =
10 =
Besar file dalam byte
Bulan dan tanggal update terakhir
Waktu update terakhir
3 =
Izin akses untuk group
11 =
Nama file/device
4 =
Izin akses untuk other (user lain yang berada di luar group yang didefinisikan sebelumnya)

Perintah-perintah penting pada DAC :
·         Mengubah izin akses file :
1.      bu : chmod < u | g | o > < + | - > < r | w | e > nama file,
contoh :
chmod u+x g+w o-r borg.dead.letter ; tambahkan akses eksekusi(e) untuk user (u), tambahkan juga akses write(w) untuk group (g) dan kurangi izin akses read(r) untuk other(o) user.
2.      chmod metode octal, bu: chmod - - - namafile , digit dash ( - ) pertama untuk izin akses user, digit ke-2 untuk izin akses group dan digit ke-3 untuk izin akses other, berlaku ketentuan : r(read) = 4, w(write) = 2, x (execute) = 1 dan tanpa izin akses = 0.
Contoh :
Chmod 740 borg.dead.letter
Berarti : bagi file borg.dead.letter berlaku
digit ke-1 à 7=4+2+1=izin akses r,w,x penuh untuk user.
digit ke-2 à 4=4+0+0=izin akses r untuk group
digit ke-3 à 0=0+0+0=tanpa izin akses untuk other user.

·         Mengubah kepemilikan : chown <owner/pemilik><nama file>
·         Mengubah kepemilikan group : chgrp <group owner><nama file>
·         Menggunakan account root untuk sementara :
~$su                      ; system akan meminta password
password : ****    ; prompt akan berubah jadi pagar, tanda login sebagai root
~#

·         Mengaktifkan shadow password, yaitu membuat file /etc/passwd menjadi dapat dibaca (readable) tetapi tidak lagi berisi password, karena sudah dipindahkan ke/etc/shadow

Contoh tipikal file /etc/passwd setelah diaktifkan shadow:
root:x:0:0::/root:/bin/bash
fade:x:1000:103: , , , :/home/fade:/bin/bash

Lihat user fade, dapat kita baca sebagai berikut :

username                     : fade
Password                     : x
User ID (UID)                        : 1000
Group ID (GUID)      : 103
Keterangan tambahan : -
Home directory                       : /home/fade
Shell default                : /bin/bash

Password-nya bisa dibaca (readable), tapi berupa huruf x saja, password sebenarnya disimpan di file /etc/shadow dalam keadaan dienkripsi :
root:pCfouljTBTX7o:10995:0:::::
fade:oiHQw6GBf4tiE:10995:0:99999:7:::

Perlunya Pro aktif password

Linux menggunakan metode DES (Data Encription Standart) untuk password-nya. User harus di training dalam memilih password yang akan digunakannya agar tidak mudah ditebak dengan program-program crack password dalam ancaman bruto force attack. Dan perlu pula ditambah dengan program Bantu cek keamanan password seperti :
·         Passwd+    : meningkatkan loging dan mengingatkan user jika mengisi password yang mudah ditebak, ftp://ftp.dartmouth.edu/pub/security 
·         Anlpasswd            : dapat membuat aturan standar pengisian password seperti batas minimum, gabungan huruf besar dengan huruf kecil, gabungan angka dan huruf dsb,ftp://coast.rs.purdue.edu/pub/tools/unix/ 

3.      Kontrol akses jaringan (Network Access Control)
Firewall linux [1]  :
alat pengontrolan akses antar jaringan yang membuat linux dapat memilih host yang berhak / tidak berhak mengaksesnya.

Fungsi Firewall linux :
·         Analisa dan filtering paket
Memeriksa paket TCP, lalu diperlakukan dengan kondisi yang sudah ditentukan, contoh paket A lakukan tindakan B.
·         Blocking content dan protocol
Bloking isi paket seperti applet java, activeX, Vbscript, Cookies
·         Autentikasi koneksi dan enkripsi
Menjalankan enkripsi dalam identitas user, integritas satu session dan melapisi data dengan algoritma enkripsi seperti : DES, triple DES, Blowfish, IPSec, SHA, MD5, IDEA, dsb.

Tipe firewall linux :
·         Application-proxy firewall/Application Gateways
Dilakukan pada level aplikasi di layer OSI, system proxy ini meneruskan / membagi paket-paket ke dalam jaringan internal. Contoh : software TIS FWTK (Tursted Information System Firewall Toolkit)
·         Network level Firewall, fungsi filter dan bloking paket dilakukan di router. Contoh : TCPWrappers, aplikasinya ada di /usr/sbin/tcpd. Cara kerjanya :
Lihat isi file /etc/inetd.conf :
...
telnet      stream     tcp    nowait    root /usr/sbin/telnetd
shell        stream     tcp    nowait    root /usr/sbin/rshd
pop3       stream     tcp    nowait    root /usr/sbin/pop3d

dengan diaktifkan TCPwrappers maka isi file /etc/inetd.conf :
...
telnet      stream     tcp    nowait    root /usr/sbin/tcpd in.telnetd
shell        stream     tcp    nowait    root /usr/sbin/tcpd in.rshd -L
pop3       stream     tcp    nowait    root /usr/sbin/tcpd in.pop3d

setiap ada permintaan layanan jarak jauh, dipotong dulu dengan pencocokan rule set yang telah diatur oleh tcp in, jika memenuhi syarat diteruskan ke file yang akan diekseskusi, tapi jika tidak memenuhi syarat digagalkan.
Pengaturan TCPWrapper dilakukan dengan mengkonfigurasi 2 file, yaitu :
·         /etc/host.allow à host yang diperbolehkan mengakses.
·         /etc/host.deny à host yang tidak diperbolehkan mengakses.

4.      Enkripsi (encryption)
Penerapan Enkripsi di linux :
·         Enkripsi password  à menggunakan DES ( Data Encryption Standard )
·         Enkripsi komunikasi data :

1.      Secure Shell (SSH) à Program yang melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote dan memindahkan file dari satu mesin ke mesin lainnya. Enkripsi dalam bentuk Blowfish, IDEA, RSA, Triple DES. Isi SSH Suite :
·        scp (secure shell copy) à mengamankan penggandaan data
·        ssh (secure shell client) à  model client ssh seperti telnet terenkripsi.
·        ssh-agent à otentikasi lewat jaringan dengan model RSA.
·        sshd (secure shell server) à di port 22
·        ssh-keygen à pembuat kunci (key generator) untuk ssh
Konfigurasi dilakukan di :
·        /etc/sshd_config (file konfigurasi server)
·        /etc/ssh_config (file konfigurasi client)

2.      Secure socket Layer (SSL) à mengenkripsi data yang dikirimkan lewat port http.
Konfigurasi dilakukan di : web server APACHE dengan ditambah PATCH SSL.

5.      Logging

Def : Prosedur dari Sistem Operasi atau aplikasi merekam setiap kejadian dan menyimpan rekaman tersebut untuk dapat dianalisa.

Semua file log linux disimpan di directory /var/log, antara lain :

·         Lastlog : rekaman user login terakhir kali
·         last : rekaman user yang pernah login dengan mencarinya pada file /var/log/wtmp
·         xferlog : rekaman informasi login di ftp daemon berupa data wktu akses, durasi transfer file, ip dan dns host yang mengakses, jumlah/nama file, tipe transfer(binary/ASCII), arah transfer(incoming/outgoing), modus akses(anonymous/guest/user resmi), nama/id/layanan user dan metode otentikasi.
·         Access_log : rekaman layanan http / webserver.
·         Error_log : rekaman pesan kesalahan atas service http / webserver berupa data jam dan waktu, tipe/alasan kesalahan
·         Messages : rekaman kejadian pada kernel ditangani oleh dua daemon :
o   Syslog à merekam semua program yang dijalankan, konfigurasi pada syslog.conf
·         Klog à menerima dan merekam semua pesan kernel
·          
6.      Deteksi Penyusupan (Intrusion Detection)

Def : aktivitas mendeteksi penyusupan secara cepat dengan menggunakan program khusus secara otomatis yang disebut Intrusion Detection System
Tipe dasar IDS :
·         Ruled based system : mencatat lalu lintas data jika sesuai dengan database dari tanda penyusupan yang telah dikenal, maka langsung dikategorikan penyusupan. Pendekatan Ruled based system :
o   Preemptory (pencegahan) ; IDS akan memperhatikan semua lalu lintas jaringan, dan langsung bertindak jika dicurigai ada penyusupan.
o   Reactionary (reaksi) ; IDS hanya mengamati file log saja.
·         Adaptive system : penerapan expert system dalam mengamati lalu lintas jaringan.

Program IDS :
·         Chkwtmp : program pengecekan terhadap entry kosong
·         Tcplogd : program pendeteksi stealth scan (scanning yang dilakukan tanpa membuat sesi tcp)
·         Host entry : program pendeteksi login anomaly (perilaku aneh) à bizarre behaviour (perilaku aneh), time anomalies (anomaly waktu), local anomaly.

Tidak ada komentar:

Posting Komentar