Senin, 11 September 2017

Mengenal Security Pada Linux

Image result for linux security

Assallamu'alaikum Wr. Wb.

A. Pendahuluan
     Hai sobat blogger pada siang hari ini saya akan membahas mengenai Sekuriti Linux atau Pengamanan Linux. Yuk mari kita bahas di postingan di bawah ini.

1. Pengertian
    Root (SuperUser) dan Normal User = Sebagai sistem operasi yang di desain dengan konsep yang secure, di dalam Linux, dikenal 2 golongan user, yaitu: Super User atau sering disebut juga dengan Root, dan Normal User atau User Biasa. Apa beda antara kedua golongan user ini? Perbedaan mendasar di antara keduanya adalah bahwa Super User / Root memiliki hak dan kemampuan untuk melakukan APAPUN terhadap sistem Linux itu sendiri. Jadi, dengan menggunakan account root, kamu bisa mengubah konfigurasi Linux, menambah/menghapus user, dan bahkan memformat harddisk. Sedangkan User Biasa secara default tidak mempunyai hak dan kemampuan untuk mengubah konfigurasi-konfigurasi penting dari Linux, ataupun hal lain yang berbahaya bagi sistem seperti menghapus file-file sistem atau memformat harddisk. Jadi sebagai contoh, user biasa secara default tidak bisa mengubah tanggal dan waktu dari sistem Linux tempatnya berada. Mungkin ada di antara kamu yang berpikir mengapa untuk mengubah tanggal dan waktu saja harus memakai account Root? Repot amat! Hal ini harus dimaklumi bahwa konsep penggunaan Linux dari awalnya adalah sebagai server yang secure, dan bagi server, tanggal dan waktu ini merupakan komponen yang sangat vital, terutama server-server yang memiliki proses rutin harian seperti proses end of day, dll. Jadi dapat dibayangkan betapa kacaunya kalau user biasa bisa mengubah tanggal / jam di server. Namun jangan khawatir, nanti kita akan pelajari bagaimana memberikan hak-hak "khusus" kepada user sehingga tidak memerlukan account root lagi untuk melakukannya. 

2. Latar Belakang 
    Untuk mengetahui bagian dari sistem keamanan pada Linux. 

3. Maksud dan Tujuan
    Bermaksud untuk menambah wawasan dan pengetahuan tentang Security Sistem pada Linux. 

4. Hasil yang Di Harapkan
    Hasil akhir yang di harapkan adalah bahwa pengguna Linux sadar betapa pentingnya Keamanan Sistem pada Linux. 

B. Alat dan Bahan
  • PC/Laptop
  • Koneksi Internet
C. Jangka Waktu Pelaksanaan Kegiatan
  • 55 Menit
D. Proses dan Tahapan Pekerjaan

>> Prinsip Dasar Security 
  • Principle of least Priviledge dan Principle of Minimum Access di dalam sekuriti Linux, terdapat 2 prinsip atau panduan yang harus kita pahami, yaitu Principle of least Priviledge dan Principle of Minimum Access
  • Principle of least Priviledge terjemahan bebasnya kira-kira adalah: Prinsip Hak Paling Sedikit. Disini maksudnya adalah, kita harus memberikan sesedikit mungkin hak pada user, program-program, dan bahkan system Linux itu sendiri di dalam menjalankan fungsinya. Pemakaian prinsip ini berguna untuk mencegah bobolnya sistem Linux kita secara tidak sengaja. Jadi misalnya User A hanya akan memakai Linux untuk browsing internet dan chatting, maka jangan berikan hak lainnya yang tidak perlu, misalnya hak untuk mendownload file dari internet, ataupun menjalankan program file manager.
  • Principle of Minimum Access, seperti yang telah dapat kamu duga, memiliki terjemahan kira-kira sebagai berikut: Prinsip Akses Minimum. Agak sulit menjelaskan hal ini. Tapi secara sederhana maksudnya adalah seperti ini: "Kecuali diizinkan secara spesifik, maka secara default semua hal akan ditolak." Masih bingung? Coba bayangkan Linux kamu pada awalnya adalah tertutup jol;100% bagi user biasa. User biasa tidak mempunyai akses sama sekali pada Linux tersebut. Bila ia mencoba login, maka ia akan ditolak. Lho, lalu bagaimana caranya ia memakai Linux tersebut? Caranya adalah dengan menentukan SATU per SATU hal apa saja yang bisa ia lakukan. Jadi pada prinsip akses minimum ini, kita menentukan secara sistematis hak apa saja yang ingin kamu berikan pada user yang pada awalnya diset tidak memiliki hak apapun. Jadi mulai dari nol.
>>  Catatan : pengertian "user" di atas, tidak hanya terbatas pada user "orang", tapi juga pada program-program, dan sistem Linux itu sendiri. Untuk mudahnya, kita bisa mengganti kata "user" dengan "program", "browser", dll.

>> Berdasarkan kedua prinsip di atas, ada beberapa hal yang harus mendapatkan perhatian di dalam sekuriti Linux, yaitu : 

1. Mengamankan Akses User (User Access)
    Jika kamu ingin benar-benar membuat sebuah komputer aman, kamu dapat menaruh komputer tersebut sedemikian rupa sehingga tidak ada seorang pun bisa menjangkaunya. Namun tentu saja hal ini akan juga membuat komputer tersebut tidak berguna bagi orang lain. Jadi, yang dapat kamu lakukan adalah membatasi Akses User sehingga system Linux kamu aman, sambil tetap dapat menjalankan fungsinya. Berkaitan dengan mengamankan Akses User ini, terdapat 4 hal yang harus kamu lakukan : 
  • Batasi Akses Fisik ke komputer tersebut. Seperti ilustrasi di atas, walaupun dari sisi software aman, tapi secara fisik komputer tersebut dapat dibobol. Oleh karena itu lakukanlah hal berikut ini untuk mengamankan komputer kamu secara fisik : 
    • Matikan option untuk boot dari floppy disk dan juga CDROM. Hal ini untuk mencegah orang menggunakan disket atau CDROM untuk memboot komputer kamu. 
    • Edit atau buatlah file /etc/shutdown.allow (jika belum ada) yang berisi nama-nama user siapa saja yang berhak mengshutdown komputer kamu. Jika kamu menginginkan hanya Root yang bisa mengshutdown, buatlah file tersebut kosong. Jadi ketika seseorang yang tidak berhak mencoba menekan tombol Ctrl+Alt+Del untuk merestart, Linux akan menolaknya. Tentu saja orang tersebut masih bisa menggunakan cara lain yaitu dengan cara menekan tombol reset ataupun mencabut kabel power komputer kamu, jadi pastikan bahwa kedua hal ini pun kamu amankan.
    • Taruhlah komputer kamu terkunci pada sebuah perabotan yang besar, sehingga jika ada orang yang berusaha mengambilnya akan mengalami kesulitan. Hal ini sama seperti jika kita ingin mengamankan sepeda kita dengan jalan menguncinya pada tiang listrik. 
  • Membatasi Akses User Biasa. Berdasarkan kedua prinsip sekuriti di atas, kamu harus membatasi hak seorang user biasa sampai seminimum mungkin sambil memperhatikan bahwa ia masih tetap bisa melakukan tugasnya. Jadi misalnya ada seorang user biasa yang hanya membutuhkan fasilitas email dan browsing internet, janganlah kamu berikan hak Telnet (mengkonek Linux dari jauh/ remote).
  • Membatasi Akses Super User (root). Karena sifatnya yang sangat powerful, account super user ini harus kamu gunakan jika HANYA perlu saja, misalnya ketika ingin menginstall software tertentu, atau tugas administrasi lainnya. Jangan gunakan account ini untuk melakukan tugas non-administratif seperti browsing internet, chatting IRC, dll, sebab ada kemungkinan seorang cracker berhasil mencuri password super usermu. 
  • Membatasi semua akses pada saat terjadi keadaan darurat / serangan. Jika suatu ketika kamu menyadari bahwa Linuxmu telah berhasil dibobol orang, hal pertama yang harus kamu lakukan adalah menghentikan semua akses (login) terlebih dahulu, sampai kamu mengetahui apa saja yang telah dibobol dan kamu telah berhasil mengatasinya. Cara menghentikan semua login adalah dengan membuat sebuah sebuah file bernama /etc/nologin. Di dalam file ini kamu bisa masukan pesan bahwa untuk sementara Linux tidak bisa diakses, dan juga waktu perkiraan kapan bisa diakses kembali. Pembuatan file ini mengakibatkan semua user biasa tidak dapat login, dan juga super user hanya bisa login melalui console fisik (keyboard).
2. Mengamankan Proses Otorisasi User 
    Secara tradisional semua sistem yang berbasis UNIX menyimpan info user di dalam file /etc/passwd. File ini berisi username, password yang terenkripsi, user ID, group ID dari user tersebut, dan default shell. Nah, file /etc/passwd ini disetel agar bisa dibaca oleh semua program (world readable) yang membutuhkan proses otorisasi. Hal ini mengakibatkan seoarang cracker yang handal bisa mengelabui program-program yang dibuat secara kurang baik, untuk mengirimkan file tersebut ke email sang cracker! Setelah dia berhasil mendapatkan file tersebut, dia bisa menggunakan program pembobol password untuk mengetahui password-password yang ada dalam file tersebut. Bayangkan apa saja yang bisa dilakukan olehnya setelah dia berhasil mengetahui password user ataupun root. 

   Lalu apa yang bisa kita lakukan untuk mengatasi kelemahan ini? Kita bisa menggunakan yang namanya Shadow password. Dengan program ini, kita bisa "memindahkan" password-password yang tersimpan di dalam file /etc/passwd ke dalam file /etc/shadow. File shadow ini hanya bisa dibaca oleh root atau program yang dijalankan dengan ID root. Dengan demikian bila seorang cracker tetap berhasil memperoleh file /etc/passwd kita, dia tidak akan mendapatkan password apapun di dalamnya sebab semua password telah dipindahkan ke dalam file /etc/shadow.

   Masih belum yakin akan keamanan proses otorisasi Linuxmu? Atau kamu ingin mengatur bahwa user A hanya bisa login pada jam 10-12 hari Senin, dan Rabu saja, dsbnya. Untuk melakukan hal ini, kamu bisa menggunakan program bernama PAM (Pluggable Authentication Method). Dengan menggunakan program ini maka tanggung jawab proses otorisasi diserahkan dari program yang bersangkutan (misalnya program login) ke program PAM. Keunggulan dari PAM ini adalah, tersedia banyak modul-modul tambahan yang memberikan tambahan fungsi di dalam proses otorisasi login, seperti mengatur waktu kapan user boleh login (jam, tanggal, hari), servis-servis apa saja yang diminta oleh user, dari terminal mana ia login, dll.

3. Mengamankan Servis (Service) yang berjalan
    Sering kali cracker berhasil masuk ke dalam system Linux kita karena kita lalai mematikan servis-servis yang sebenarnya tidak kita perlukan. Lalu bagaimanakah cara kita mengamankan Linux kita dari sisi servis? Kita harus melakukan langkah pengamanan ini mulai dari proses installasi. Jika kita menginstall Linux hanya untuk dijadikan web server, maka otomatis kita tidak memerlukan servis lainnya seperti mail server, news server, dll. Berkaintan dengan hal ini, alangkah baiknya jika kamu berniat memakai Linuxmu sebagai server, kamu TIDAK menginstall program-program berikut ini : 
  • Semua yang berkaitan dengan XWindows, dan XWindows itu sendiri.
  • Semua program yang berkaitan dengan multimedia.
  • Semua interpreter (program bantu penterjemah proses), kecuali jika benar-benar dibutuhkan. Misalnya jika web servermu hanya melayani Perl, maka jangan install yang lainnya.
  • Semua server lainnya yang tidak kamu perlukan, misalnya kamu ingin memakai web server saja, maka jangan install server lain seperti mail server, NIS (Network Information System), Samba, dll.
  • Semua file editor lainnya yang tidak kamu pakai.
  • Semua program client seperti email client yang tidak akan kamu pakai.
E. Hasil yang Di Dapatkan
     Dapat paham akan pentingnya Keamanan Sistem pada Linux.

F. Temuan Permasalahan
    Selama saya mempelajari tentang postingan ini saya belum menemukan masalah sama sekali.

G. Kesimpulan
     Dapat di simpulkan bahwa suatu Sistem Operasi tidak aman jika tidak ada Security System.

Demikian artikel pembahasan tentang Mengenal Security Pada Linux, semoga bermanfaat ^_^

Wassallamu'alaikum Wr. Wb. 

Tidak ada komentar:

Posting Komentar