9

Click here to load reader

Keamanan Linux Lilo

Embed Size (px)

Citation preview

Page 1: Keamanan Linux Lilo

Keamanan Linux

Daftar Isi

20.1. Perkenalan20.2. Menutup layanan

20.1. Perkenalan

Dengan peningkatkan penggunaan dari Internet dan jaringan nirkabel, keamanan menjadi semakin penting setiap harinya. Tidaklah mungkin untuk membahas masalah ini dalam sebuah bab pada perkenalan kepada GNU/Linux. Bab ini membahas beberapa teknis keamanan dasar yang menyediakan langkah awal untuk keamanan desktop dan server.

Sebelum kita mulai pada subyek yang lebih spesifik, merupakan ide yang bagus untuk membuat beberapa catatan tentang kata sandi. Otorisasi komputer pada umumnya bergantung pada kata sandi. Pastikan memilih kata sandi yang bagus untuk segala situasi. Hindari menggunakan kata-kata, nama, tanggal lahir, dan kata sandi yang pendek. Kata sandi semacam ini bisa dengan mudah dibobol dengan serangan kamus atau brute force. Gunakan kata sandi yang panjang, idealnya delapan karakter atau lebih, terdiri dari huruf acak (termasuk huruf kapital) dan angka.

20.2. Menutup layanan

20.2.1. Perkenalan

Banyak GNU/Linux menjalankan beberapa layanan yang terbuka untuk jaringan lokal maupun Internet. Host lain bisa terkoneksi pada layanan ini dengan menghubungkan diri ke port tertentu. Sebagai contoh, port 80 digunakan untuk jalur WWW. Berkas /etc/services berisi tabel dengan semua layanan yang digunakan, dan nomor port yang digunakan untuk layanan tersebut.

Sistem yang aman seharusnya hanya menjalankan layanan yang diperlukan. Jadi, misalkan sebuah host berfungsi sebagai server web, maka seharusnya ia tidak memiliki port terbuka (dan melayani) FTP atau SMTP. Dengan banyak port yang terbuka, maka resiko keamanan meningkat dengan cepat, karena terdapat kemungkinan besar perangkat lunak yang memberikan layanan memiliki kecacatan, atau dikonfigurasi dengan tidak benar. Beberapa bagian berikut akan membantu Anda melacak port yang terbuka dan menutupnya.

20.2.2. Mencari port yang terbuka

Port yang terbuka dapat ditemukan menggunakan pemindai port. Salah satu pemindai port yang paling terkenal untuk GNU/Linux adalah nmap. nmap tersedia pada set disk “n”.

Page 2: Keamanan Linux Lilo

Sintaks dasar nmap adalah: nmap host. Parameter host bisa berupa nama host atau alamat IP. Misalkan kita hendak memindai host dimana nmap terpasang. Pada kasus ini, kita bisa menentukan alamat IP localhost, 127.0.0.1:

$ nmap 127.0.0.1

Starting nmap V. 3.00 ( www.insecure.org/nmap/ )Interesting ports on localhost (127.0.0.1):(The 1596 ports scanned but not shown below are in state: closed)Port State Service21/tcp open ftp 22/tcp open ssh 23/tcp open telnet 80/tcp open http 6000/tcp open X11

Nmap run completed -- 1 IP address (1 host up) scanned in 0 seconds

Pada kasus ini, Anda bisa melihat bahwa host memiliki lima port yang terbuka yang melayani; ftp, ssh, telnet, http dan X11.

20.2.3. inetd

Terdapat dua cara untuk menawarkan layanan TCP/IP: dengan menjalankan server aplikasi stand-alone (mandiri) sebagai daemon atau dengan menggunakan server internet super, inetd. inetd adalah sebuah daemon yang memonitor sekumpulan port. Jika sebuah klien mencoba untuk menghubungkan diri ke port, inetd akan menangani koneksi tersebut dan meneruskan koneksi pada perangkat lunak yang menangani jenis koneksi tersebut. Keunggulan dari pendekatan ini adalah adanya tambahan lapisan keamanan dan membuatnya lebih mudah untuk mencatat koneksi yang masuk. Kelemahannya adalah lebih lambat dibandingkan daemon yang bersifat stand-alone. Oleh sebab itu merupakan ide bagus untuk menjalankan daemon yang bersifat stand-alone pada server FTP yang sibuk.

Anda bisa menguji apakah inetd berjalan pada sebuah host atau tidak dengan ps, sebagai contoh:

$ ps ax | grep inetd 2845 ? S 0:00 /usr/sbin/inetd

Pada kasus ini, inetd berjalan dengan PID (process ID) 2845. inetd bisa dikonfigurasikan menggunakan berkas /etc/inetd.conf. Mari kita lihat contoh sebuah contoh dari inetd.conf:

# File Transfer Protocol (FTP) server:ftp stream tcp nowait root /usr/sbin/tcpd proftpd

Baris ini menjelaskan bahwa inetd harus menerima koneksi FTP dan mengirimkannya pada tcpd. Hal ini mungkin cukup aneh, karena proftpd biasanya menangani koneksi

Page 3: Keamanan Linux Lilo

FTP. Anda bisa menentukan untuk langsung menggunakan proftpd pada inetd.conf, tetapi merupakan ide bagus untuk memberikan koneksi pada tcpd. Program ini mengirimkan koneksi pada proftpd, seperti yang ditentukan. tcpd digunakan untuk memonitor layanan dan menyediakan kontrol akses berbasis host.

Layanan bisa dinonaktifkan dengan menambahkan karakter kres (#) di awal baris. Merupakan ide bagus untuk menonaktifkan semua layanan dan mengaktifkan layanan yang Anda butuhkan satu persatu. Setelah mengubah /etc/inetd.conf inetd harus dijalankan ulang untuk mengaktifkan perubahan. Hal ini bisa dilakukan dengan mengirimkan sinyal HUP pada proses inetd:

# ps ax | grep 'inetd' 2845 ? S 0:00 /usr/sbin/inetd# kill -HUP 2845

Jika Anda tidak membutuhkan inetd sama sekali, merupakan ide bagus untuk menghapusnya. Jika Anda tetap ingin agar paket ini terinstall, tetapi tidak ingin agar Slackware Linux menjalankannya saat proses boot, jalankan perintah berikut sebagai root:

# chmod a-x /etc/rc.d/rc.inetd

Bab 2

Boot Loader Password

Boot loader digunakan untuk me-load konfigruasi program untuk dijalankan sewaktu booting. Tentunya dengan berbeda jenis operating system maka akan berbeda pula jenis pengamanannya.Kali ini saya dengan menggunakan Redhat 9.0

Berikut ini alasan utama kenapa harus mengamankan boot loader:

1. Melarang user masuk dengan single user mode.Single user di sini maksudnya seorang yang login pertama kali maka di otomatis menjadi root.Dengan mengetikkan linux -s pada prompt boot loader maka user tersebut otomatis sebagai root.Secara default semua distro linux membolehkan penggunaan single user mode (linux single) tapigak tau juga yah setahu aku sih iya.Jika hal ini tidak diatasi maka orang dengan mudah mengacak-acak kompie mu. Karena hak akses root tak terbatas,wah..... gawat donk kalo gitu .....???

Page 4: Keamanan Linux Lilo

2. Melarang user masuk ke console dari GRUB.Linux redhat menggunakan GRUB sebagai boot loader mengingat boot loader ini mempunyai keunggulan tersendiri.

3. Melarang user masuk ke opsi booting yang lainApabila pada komputer tersebut menggunakan dual boot maka bisa saja orang jahil ini akan masuk ke sistem operasi lain(windows) maka dapat saja dengan mudah mengacak-acak linux tentunya dengan bantuan program yang lain. Tentunya hal sederhana seperti diatas akan membawa dampak yang berbahaya jika sejak dari dini kita tidak mewaspadainya.

nah.... diantara kalian pasti pada melupakan hal ini .....

=== Password pada GRUB ======

Untuk memberi password pada GRUB lakukan perintah berikut ini:

a. Ketikkan pada shell (login sebagai root):

# /sbin/grub-md5-crypt

b. Setelah Anda ketikkan perintah tersebut diatas maka akan tampil perintah untuk memasukkan password.

Berikut ini contoh yang saya lakukan pada mesin redhat 9.0

[root@dokter cinta]# /sbin/grub-md5-cryptPassword: Retype password:$1$1UogH0$cZpecMy.EaOue7vNBp/Xk1

password yang penulis gunakan yaitu : 6u4c4q3p!jangan di apa apain yah !!!! ampun om......

Password tersebut akan di enkripsi menggunakan alogritma md5 menjadi

$1$1UogH0$cZpecMy.EaOue7vNBp/Xk1

Seperti yang tercantum di atas.

c. Ingat dengan benar password hasil enkripsi tadi, sebaiknya anda copy kan ke text editor anda. Password yang telahterenkripsi ini akan di masukkan kedalam grub.

Page 5: Keamanan Linux Lilo

d. Buka grub.conf yang terletak di /boot/grub/

Berikut ini isi file grub.conf yang sudah di modifikasi:

default=1timeout=10password --md5 $1$1UogH0$cZpecMy.EaOue7vNBp/Xk1splashimage=(hd0,7)/boot/grub/splash.xpm.gztitle Red Hat Linux (2.4.20-8)root (hd0,7)kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/initrd /boot/initrd-2.4.20-8.imgtitle Windowsrootnoverify (hd0,0)chainloader +1

Tambahkan perintah

password --md5 $1$1UogH0$cZpecMy.EaOue7vNBp/Xk1

dibawah timeout=10, Format penambahannya yaitu:

password -md5 <password yang sudah di enkripsi>

Jika sudah anda tambahkan kemudian cek file permission file grub.conf. Gunakan perintah sebagai berikut:

[root@dokter cinta]$ stat /boot/grub/grub.confFile: `/boot/grub/grub.conf'Size: 673 Blocks: 8 IO Block: 4096 Regular FileDevice: 308h/776d Inode: 261427 Links: 1Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)Access: 2004-03-24 11:42:40.000000000 +0700Modify: 2004-03-24 11:42:40.000000000 +0700Change: 2004-03-24 11:42:40.000000000 +0700

Pastikan file permissionnya 600 yang artinya file tersebut hanya dapat di baca dan di tulis oleh root. Apabila filepermission masih belum 600 gunakan perintah berikut:

[root@dokter grub]# chmod 600 grub.conf

Jika semua konfigurasi telah di lakukan dengan benar reboot komputer anda. Kemudian ketika GRUB tampil waktu booting untuk masuk ke editor biasanya anda mengetikkan 'e' terlebih dahulu, tapi karena sudah di password anda harus

Page 6: Keamanan Linux Lilo

mengetikkan 'p' dahulu kemudian memasukkan password untuk masuk ke editor.

Namun pengamanan seperti diatas masih tidak cukup karena bisa saja masuk ke opsi booting yang lain yaitu masuk ke opsi DOS jika menggunakan dual boot. Untuk mengunci (lock) agar tidak dapat masuk ke DOS maka buka lagi file grub.conf.Tambahkan kata 'lock' di bawah title Windows.

Reboot kembali pc anda kemudian pada GRUB pindah ke DOS atau Windows maka proses booting akan berhenti sebelum anda menekan tombol 'p' pada GRUB dan memasukkan password. Jika anda hanya menambahkan kata lock saja maka password pada GRUB dan password untuk masuk ke windows menggunakan password yang sama. Tetapi jika ingin memberikan password yangberbeda ketika ingin booting ke windows tambahkan:

title Windowslock password --md5 $1$1UogH0$cZpecMy.EaOue7vNBp/Xk1

Untuk password dapat mengenerate sendiri dengan mengetikkan perintah:

# /sbin/grub-md5-crypt

B.2. Password pada LILO

a. Buka file /etc/lilo.conf.

b. Dibawah image=/boot/vmlinux-<xx>

Tambahkan perintah:

password=password_andarestricted

Arti dari restricted yaitu jika seseorang ketika tampil boot prompt memasukkan perintah boot dengan menggunakan argumenmaka dia harus memasukkan password terlebih dahulu. Misalnya mengetikkan 'linux -s' yang artinya login dengan linuxsingle

Password pada Lilo bukan password terenkripsi sehingga atur file permissionnya agar tidak bisa di lihat oleh user yang bukanroot.

Page 7: Keamanan Linux Lilo

Jangan lupa setelah melakukan perubahan pada lilo.conf jalankan perintah

#/sbin/lilo -v

Pastikan juga bahwa file permission 600 untuk lilo.conf.

wassalam

me masih newbie nih.... ajarin aku yah kalo ada info terbaru

di kutip dari berbagai sumber di internet dan buku

semoga berguna