Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 67a73f0d1c9314800a8e1ca883f39b8e > files > 15

howto-text-id-9.0-1mdk.noarch.rpm

  Linux Security HOWTO versi Bahasa Indonesia
  Kevin Fenzi, kevin@scrye.com & Dave Wreski, dave@nic.com
  v.0.9.11, 1 Mei 1998

  Dokumen ini merupakan ringkasan umum mengenai isu-isu keamanan yang
  dihadapi administrator sistem Linux. Ia mencakup beberapa filosofi
  keamanan umum dan sejumlah contoh khusus tentang bagaimana membuat
  lebih aman sistem Linux anda dari para penyusup. Juga disertakan
  pointer ke materi dan program keamanan. Catatan: Ini merupakan dokumen
  versi beta. Perbaikan, kritik yang membangun, penambahan dan koreksi
  akan diterima dengan senang hati. Silakan layangkan surat umpan balik
  anda kepada kedua penulis. Pastikan dan sertakan "Linux", "security"
  atau "HOWTO" dalam baris subyek surat anda untuk menghindari penyaring
  spam agar surat anda dapat segera mendapat perhatian dari penulis.
  ______________________________________________________________________

  Table of Contents

















































  1. Pendahuluan

     1.1 Versi Baru Dokumen ini
     1.2 Umpan balik
     1.3 Klaim
     1.4 Informasi Hak Cipta

  2. Gambaran Umum

     2.1 Mengapa kita perlu keamanan ?
     2.2 Seberapa amankah aman ?
     2.3 Apa yang ingin anda lindungi ?
     2.4 Membangun Kebijakan Keamanan
     2.5 Alat-alat untuk mengamankan site anda
        2.5.1 Keamanan Host
        2.5.2 Keamanan Jaringan Anda
        2.5.3 Keamanan Melalui Penyembunyian
     2.6 Organisasi Dokumen Ini

  3. Keamanan Fisik

     3.1 Kunci Komputer
     3.2 Keamanan BIOS
     3.3 Keamanan Boot Loader
     3.4 xlock dan vlock
     3.5 Mendeteksi Gangguan Keamanan Fisik

  4. Keamanan Lokal

     4.1 Membuat Rekening Baru
     4.2 Keamanan Root

  5. Keamanan File dan Sistem File

     5.1 Setting Umask
     5.2 Permisi File
     5.3 Pemeriksaan Integritas dengan Tripwire
     5.4 Trojan Horses (Kuda-kuda Troya)

  6. Keamanan Password dan Enkripsi

     6.1 PGP dan Public Key Cryptography
     6.2 SSL, S-HTTP, HTTPS dan S/MIME
     6.3 Implementasi IPSEC pada Linux x-kernel
     6.4 SSH (Secure Shell), stelnet
     6.5 PAM - Pluggable Authentication Modules
     6.6 Cryptographic IP Encapsulation (CIPE)
     6.7 Kerberos
     6.8 Shadow Passwords
     6.9 Crack dan John the Ripper
     6.10 CFS- Cryptographic File System dan TCFS - Transparent Cryptographic File System
     6.11 X11, SVGA dan keamanan tampilan
        6.11.1 X11
        6.11.2 SVGA
        6.11.3 GGI (Generic Graphics Interface Project)

  7. Keamanan Kernel

     7.1 Pilihan Kompilasi Kernel
     7.2 Device Kernel

  8. Keamanan Jaringan

     8.1 Packet Sniffers
     8.2 Pelayanan sistem dan tcp_wrappers
     8.3 Memverifikasi Informasi DNS Anda
     8.4 identd
     8.5 SATAN, ISS, dan Scanner Jaringan Lainnya
     8.6 Sendmail, qmail dan MTA
     8.7 Serangan Denial of Service
     8.8 Keamanan NFS (Network File System)
     8.9 NIS (Network Information Service) (dahulu YP)
     8.10 Firewall

  9. Persiapan Keamanan (sebelum on-line)

     9.1 Buat Backup Menyeluruh Sistem Anda
     9.2 Memilih Jadwal Backup yang Baik
     9.3 Backup File Database RPM atau Debian Anda
     9.4 Pelihara Data Akuntansi Sistem Anda
     9.5 Aplikasikan Seluruh Update Sistem Baru

  10. Apa yang Harus Dilakukan Ketika dan Setelah Break-In

     10.1 Usaha penggangguan sedang berlangsung
     10.2 Gangguan Keamanan sudah terjadi
        10.2.1 Menutup Lubang
        10.2.2 Memperkirakan Kerusakan
        10.2.3 Backup, Backup, Backup
        10.2.4 Melacak Penyusup

  11. Sumber-sumber Keamanan

     11.1 Site FTP
     11.2 Site Web
     11.3 Milis
     11.4 Buku - Materi Bacaan Tercetak.

  12. Daftar Istilah

  13. Pertanyaan-pertanyaan Yang Sering Diajukan

  14. Kesimpulan

  15. Terima Kasih Kepada

  16. Catatan Penerjemah



  ______________________________________________________________________

  1.  Pendahuluan

  Dokumen ini mencakup beberapa isu utama keamanan yang mempengaruhi
  keamanan Linux. Filosofi umum dan sumber daya Internet didiskusikan.

  Sejumlah dokumen HOWTO yang lain berkaitan dengan isu keamanan, dan
  mereka akan diacu bilamana sesuai.

  Dokumen ini tidak bertujuan sebagai sebuah dokumen mengenai
  eksploitasi yang terbaru. Banyak eksploitasi baru terjadi setiap saat.
  Dokumen ini akan menceritakan di mana informasi terbaru untuk hal
  tersebut, dan beberapa metode umum untuk mencegah eksploitasi tersebut
  terjadi.


  1.1.  Versi Baru Dokumen ini

  Versi baru dokumen ini akan diposkan secara periodik ke
  comp.os.linux.answers. Mereka juga akan ditambahkan ke beberapa site
  FTP anonim yang mengarsip informasi semacam itu, termasuk :
  <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO>

  Sebagai tambahan, anda dapat memperoleh dokumen ini di homepage Linux
  Worldwide Web melalui : <http://sunsite.unc.edu/mdw/linux.html>

  Akhirnya, versi terakhir dokumen ini juga tersedia dalam berbagai
  format di : <http://scrye.com/~kevin/lsh/>


  1.2.  Umpan balik

  Seluruh komentar, laporan kesalahan, tambahan informasi dan kritik
  dialamatkan ke : kevin@scrye.com dan dave@nic.com

  Catatan: Silakan kirim umpan balik anda kepada kedua penulis. Juga,
  yakin dan masukkan "Linux" "security" atau "HOWTO" dalam subyek anda
  untuk menghindari penyaring spam kevin.


  1.3.  Klaim

  Tanggung jawab atas isi dokumen ini tidak dapat diterima. Silakan anda
  tanggung risiko atas penggunaaan konsep, contoh dan isi lain. Sebagai
  tambahan, ini merupakan versi awal, dengan berbagai kemungkinan
  ketidaktepatan dan kesalahan.

  Sejumlah contoh dan deskripsi menggunakan tata letak dan setup sistem
  paket RedHat(tm). Sistem anda mungkin berbeda.

  Sejauh yang kami ketahui, hanya program-program yang dalam beberapa
  hal dapat digunakan atau dievaluasi demi kepentingan personal yang
  akan dideskripsikan. Kebanyakan program tersedia dengan kode sumber
  sesuai persyaratan serupa GNU.


  1.4.  Informasi Hak Cipta


  o  Dokumen-dokumen Linux HOWTO dapat direproduksi dan didistribusi
     secara keseluruhan atau sebagian, dalam berbagai media fisik atau
     elektronik, selama pernyataan hak cipta ini dipertahankan di
     seluruh salinan. Redistribusi komersil diperbolehkan dan
     dianjurkan; namun, para penulis mohon diberitahu untuk distribusi
     demikian.

  o  Seluruh terjemahan, pekerjaan turunan, atau keseluruhan kerja yang
     menggunakan dokumen-dokumen Linux HOWTO harus dilingkupi oleh
     pernyataan hak cipta ini. Artinya, anda tidak boleh memproduksi
     pekerjaan turunan dari sebuah HOWTO dan menambahkan hambatan pada
     distribusinya. Perkecualian untuk aturan ini dapat diberikan untuk
     kondisi tertentu; silakan hubungi koordinator Linux HOWTO di alamat
     di bawah ini.

  o  Jika anda memiliki pertanyaan, silakan hubungi Tim Bynum,
     koordinator Linux HOWTO di linux-howto@sunsite.unc.edu


  2.  Gambaran Umum

  Dokumen ini akan berusaha menjelaskan beberapa prosedur dan software-
  software yang biasa digunakan untuk membantu membuat lebih aman sistem
  Linux anda. Mendiskusikan konsep-konsep dasar dahulu adalah penting,
  dan memberi landasan sebelum kita memulai.



  2.1.  Mengapa kita perlu keamanan ?

  Dalam dunia komunikasi data global yang selalu berubah, hubungan
  Internet yang murah, dan cepatnya perkembangan software, keamanan
  menjadi isu yang semakin penting. Keamanan saat ini menjadi suatu
  kebutuhan dasar karena komputasi global tidak aman. Sebagai contoh,
  dengan berpindahnya data anda dari titik A ke titik B di Internet, ia
  mungkin melalui beberapa titik lain selama perjalanan, membuka
  kesempatan bagi orang lain untuk memotongnya, atau pun merubah data
  anda. Bahkan pengguna lain pada sistem anda dapat merubah data anda ke
  sesuatu yang tidak anda inginkan. Akses yang tidak diijinkan ke dalam
  sistem anda mungkin dapat diperoleh oleh penyusup, juga dikenal
  sebagai "cracker", yang kemudian menggunakan pengetahuannya untuk
  berpura-pura sebagai anda, mencuri informasi dari anda, atau bahkan
  menolak akses anda ke sumber daya anda sendiri. Jika anda masih
  bertanya-tanya mengenai perbedaan antara "Hacker" dan "Cracker",
  silakan lihat dokumen Eric Raymond, "How to Become A Hacker", tersedia
  di  <http://sagan.earthspace.net/~esr/faqs/hacker-howto.html>.


  2.2.  Seberapa amankah aman ?

  Pertama, ketahuilah bahwa tidak ada sistem komputer yang dapat
  diamankan secara total. Yang dapat anda lakukan adalah membuat
  kesulitan bagi orang untuk mengganggu sistem anda. Bagi kebanyakan
  pengguna Linux, tidak terlalu banyak yang diperlukan untuk menjaga
  sistem anda dari cracker. Sedang bagi pengguna Linux profil tinggi
  (bank, perusahaan telekomunikasi, dsb), banyak lagi pekerjaan
  dibutuhkan.

  Faktor lain yang perlu diperhatikan adalah semakin aman sistem anda
  semakin intrusif keamanan anda. Anda perlu menentukan tindakan yang
  membuat sistem anda masih dapat dipakai dan juga aman demi kebutuhan
  anda. Sebagai contoh, anda dapat memaksa setiap orang yang mendial ke
  sistem anda untuk menggunakan modem call back untuk memanggil mereka
  kembali di rumah mereka. Ini lebih aman, tetapi jika seseorang tidak
  berada di rumah, maka akan menjadi sulit bagi mereka untuk login. Anda
  dapat juga mensetup sistem Linux anda dengan tanpa jaringan atau
  hubungan ke Internet, tetapi ini membuatnya sulit untuk menelusuri
  web.

  Jika anda adalah site yang berukuran besar hingga menengah, anda perlu
  menetapkan suatu Kebijakan Keamanan (Security Policy) yang berisikan
  tingkat keamanan yang dibutuhkan oleh site anda dan auditing apa yang
  digunakan untuk memeriksanya. Anda dapat menemukan contoh kebijakan
  keamanan terkenal di  <http://ds.internic.net/rfc/rfc2196.txt>. Belum
  lama ini telah diperbaharui, dan berisikan kerangka kerja yang baik
  bagi penetapan kebijakan keamanan perusahaan anda.


  2.3.  Apa yang ingin anda lindungi ?

  Sebelum anda berusaha mengamankan sistem anda, anda perlu menentukan
  tingkat ancaman yang anda hadapi, risiko apa yang perlu atau tidak
  perlu anda ambil, dan seberapa rentan sistem anda sebagai hasilnya.
  Anda perlu menganalisis sistem anda untuk mengetahui apa yang anda
  lindungi, mengapa anda melindunginya, nilai apa yang dimilikinya, dan
  siapa yang memiliki tanggung jawab terhadap data dan aset lain anda.

  o  Risiko adalah kemungkinan seorang penyusup berhasil dalam usahanya
     mengakses komputer anda. Dapatkah penyusup membaca, menulis, atau
     mengeksekusi program-program yang dapat menyebabkan kerusakan ?
     Dapatkah mereka menghapus data kritis ? Mencegah anda atau
     perusahaan anda menyelesaikan pekerjaan penting ? Jangan lupa,
     seseorang yang memperoleh akses ke rekening anda, atau sistem anda,
     dapat pula berpura-pura sebagai anda.
     Sebagai tambahan, memiliki satu rekening yang tidak aman di sistem
     anda dapat menyebabkan seluruh jaringan anda terganggu. Dengan
     adanya pemakai tunggal yang dibolehkan login menggunakan file
     rhost, atau dibolehkan menggunakan pelayanan yang tidak aman,
     seperti tftp, anda menghadapi risiko seorang penyusup
     menggunakannya untuk masuk ke pintu anda (get his foot in the
     door). Sekali seorang penyusup memiliki rekening pemakai di sistem
     anda, atau sistem orang lain, akan dapat digunakan untuk memperoleh
     akses ke sistem lain atau rekening lain.

  o  Ancaman biasanya berasal dari seseorang dengan motivasi untuk
     memperoleh akses yang tidak diijinkan ke jaringan atau komputer
     anda. Anda perlu memutuskan siapa yang anda percayai untuk memiliki
     akses ke sistem anda, dan ancaman apa yang dapat muncul.

     Terdapat beberapa macam penyusup, dan penting mengeahui beragam
     karakteristiknya saat mengamankan sistem anda.

  o  The Curious (Si Ingin Tahu) - tipe penyusup ini pada dasarnya
     tertarik menemukan jenis sistem dan data yang anda miliki.

  o  The Malicious (Si Perusak) - tipe penyusup ini berusaha untuk
     merusak sistem anda, atau merubah web page anda, atau sebaliknya
     membuat waktu dan uang anda kembali pulih.

  o  The High-Profile Intruder (Si Profil Tinggi) - tipe penyusup ini
     berusaha menggunakan sistem anda untuk memperoleh popularitas dan
     ketenaran. Dia mungkin menggunakan sistem profil tinggi anda untuk
     mengiklankan kemampuannya.

  o  The Competition (Si Pesaing) - tipe penyusup ini tertarik pada data
     yang anda miliki dalam sistem anda. Ia mungkin seseorang yang
     beranggapan bahwa anda memiliki sesuatu yang dapat menguntungkannya
     secara keuangan atau sebaliknya.

  o  Kerentanan menggambarkan seberapa terlindung komputer anda dari
     jaringan lain, dan potensi seseorang memperoleh akses yang tidak
     diijinkan.

     Hal-hal apa yang dipertaruhkan bila seseorang masuk ke sistem anda?
     Tentu saja perhatian pemakai rumahan PPP dinamis akan berbeda
     dengan perusahaan yang menghubungkan mesinnya ke Internet, atau
     jaringan besar lain.

     Berapa banyak waktu yang diperlukan untuk mengembalikan/menciptakan
     data yang hilang? Investasi awal saat ini dapat menghemat puluhan
     kali lebih banyak jika kemudian anda perlu menciptakan kembali data
     yang hilang. Sudahkah anda mengkaji strategi backup anda, dan
     memastikan data anda benar?



  2.4.  Membangun Kebijakan Keamanan

  Ciptakan kebijakan umum dan sederhana bagi sistem anda yang dapat
  dipahami dan diikuti oleh pemakai anda. Ia harus dapat melindungi data
  yang anda simpan, juga privasi pemakai. Beberapa hal yang perlu
  dipertimbangkan adalah siapa yang meiliki akses ke sistem (Dapatkah
  teman saya menggunakan rekening saya?), siapa yang diijinkan untuk
  menginstal software pada sistem, siapa memiliki data apa, perbaikan
  bencana, dan penggunaan yang tepat sistem.

  Kebijakan keamanan yang diterima umum dimulai dengan frase :

  "Hal-hal apa yang tidak dijinkan adalah dilarang"

  Artinya, kecuali anda memberi akses suatu pelayanan kepada pemakai,
  maka pemakai tidak boleh menggunakan pelayanan tersebut hingga anda
  memberi akses. Pastikan kebijakan berlaku untuk rekening pemakai
  reguler anda. Mengatakan, "Ah, saya tidak dapat memecahkan masalah
  permisi ini, saya akan lakukannya sebagai root" dapat menyebabkan
  lubang keamanan yang sangat jelas, dan bahkan yang belum
  tereksploitasi.


  2.5.  Alat-alat untuk mengamankan site anda

  Dokumen ini akan mendiskusikan berbagai alat yang dapat mengamankan
  aset yang telah anda kerjakan dengan keras: mesin lokal anda, data,
  pemakai, jaringan, bahkan reputasi anda. Apa yang akan terjadi pada
  reputasi anda jika seorang penyusup menghapus data beberapa pemakai
  anda? Atau merubah web page anda ? Atau meneberbitkan rencana proyek
  perusahaan anda untuk empat bulan berikut ? Jika anda merencanakan
  instalasi jaringan, ada berbagai faktor yang harus anda perhatikan
  sebelum menambahkan sebuah mesin tunggal ke jaringan anda.

  Bahkan jika anda memiliki sebuah rekening PPP dialup, atau site kecil,
  tidaklah berarti penyusup tidak tertarik kepada sistem anda. Site
  besar dan profil tinggi bukanlah target satu-satunya, banyak penyusup
  hanya ingin mengeksploitasi site sebanyak mungkin, tanpa memandang
  ukurannya. Tambahan lagi, mereka mungkin menggunakan lubang keamanan
  di site anda untuk memperoleh akses ke site lain yang terhubung dengan
  site anda.

  Para penyusup memiliki banyak waktu, dan dapat memperkirakan bagaimana
  anda menyembunyikan sistem anda dengan hanya mencoba seluruh
  kemungkinan. Terdapat pula beberapa alasan seorang penyusup tertarik
  pada sistem anda, yang akan kita diskusikan nanti.


  2.5.1.  Keamanan Host

  Mungkin area yang paling banyak mendapat perhatian dalam keamanan
  adalah berkaitan dengan keamanan berbasis host. Hal ini biasanya
  melibatkan pemastian bahwa sistem anda aman, dan berharap setiap orang
  di jaringan anda melakukan hal yang sama. Memiliki password yang baik,
  mengamankan pelayanan jaringan lokal host anda, menyimpan catatan
  akuntansi yang baik, dan memperbaharui program dengan eksploitasi
  keamanan yang diketahui adalah beberapa hal yang menjadi tanggung
  jawab administrator keamanan lokal, ini dapat merupakan tugas yang
  mengerikan pada saat jaringan anda bertambah besar.


  2.5.2.  Keamanan Jaringan Anda

  Keamanan jaringan juga merupakan suatu keharusan sebagaimana keamanan
  host lokal. Dengan sistem tunggal anda, atau jaringan komputasi
  terdistribusi, Internet, atau ratusan, bila tidak ribuan atau lebih
  komputer pada jaringan yang sama, anda tidak dapat mengandalkan setiap
  sistem aman. Memastikan pemakai yang dijinkan hanyalah satu-satunya
  yang menggunakan sumber daya jaringan anda, membangun firewall,
  menggunakan enkripsi yang baik, dan meyakinkan tidak ada mesin yang
  buruk, atau tidak aman pada jaringan anda adalah tugas administrator
  keamanan jaringan.

  Dokumen ini akan mendiskusikan beberapa teknik yang digunakan untuk
  mengamankan site anda, dan berharap dapat menunjukkan kepada anda
  cara-cara mencegah penyusup memperoleh akses ke apa yang ingin anda
  lindungi.



  2.5.3.  Keamanan Melalui Penyembunyian

  Salah satu tipe keamanan yang perlu didiskusikan adalah "keamanan
  melalui penyembunyian". Artinya dengan melakukan sesuatu seperti
  merubah nama login "root" ke "toor", sebagai contoh, untuk mencoba dan
  membingungkan seseorang masuk ke sistem anda sebagai root adalah
  perkiraan yang salah tentang keamanan, dan akan mengakibatkan
  konsekuensi yang tidak mengenakkan. Hampir pasti bahwa penyerang
  sistem akan secara cepat mengetahui keamanan kosong semacam itu. Hanya
  karena anda memiliki site kecil atau secara relatif rendah profil
  tidaklah berarti penyusup tidak akan tertarik pada apa yang anda
  miliki. Kita akan mendiskusikan apa yang anda lindungi pada bagian
  selanjutnya.


  2.6.  Organisasi Dokumen Ini

  Dokumen ini telah dibagi ke dalam sejumlah bagian. Mereka mencakup
  berbagai macam isu keamanan yang luas. Yang pertama, keamanan fisik,
  mencakup bagaimana anda butuh melindungi mesin anda dari gangguan.
  Yang kedua mendeskripsikan bagaimana melindungi sistem anda dari
  gangguan pemakai lokal. Yang ketiga, keamanan file dan sistem file
  menunjukkan bagaimana mensetup file sistem anda dan permisi file.
  Berikutnya, keamanan password dan enkripsi mendiskusikan bagaimana
  menggunakan enkripsi untuk lebih mengamankan mesin dan jaringan anda.
  Keamanan kernel mendiskusikan pilihan kernel apa yang perlu diset atau
  perlu diperhatikan untuk memperoleh mesin yang lebih aman. Keamanan
  jaringan, mendeskripsikan bagaimana lebih mengamankan sistem Linux
  anda dari serangan jaringan. Persiapan keamanan mendiskusikan
  bagaimana mempersiapkan mesin anda sebelum membuatnya on-line.
  Berikutnya mendiskusikan apa yang perlu dilakukan ketika anda
  mendeteksi adanya bahaya pada sistem anda atau yang telah terjadi.
  Kemudian link ke sumber keamanan lain disebutkan, dan akhirnya
  beberapa pertanyaan dan jawaban dan kata-kata penutupan.

  Dua hal utama yang perlu diperhatikan ketika membaca dokumen ini
  adalah :

  o  Perhatikan sistem anda. Periksa log sistem seperti
     /var/log/messages dan perhatikan sistem anda, dan

  o  Buatlah sistem anda selalu "up to date" dengan memastikan bahwa
     anda telah menginstal versi terbaru software dan telah mengupgrade
     setiap ada pemberitahuan keamanan. Dengan melakukan hal-hal ini
     akan menjadikan sistem anda lebih aman.


  3.  Keamanan Fisik

  Lapis pertama keamanan yang perlu anda perhatikan adalah keamanan
  fisik sistem komputer anda. Siapa yang memiliki akses fisik ke mesin
  anda? Perlukah mereka? Dapatkah anda melindungi mesin anda dari
  gangguan mereka? Perlukah anda?

  Seberapa banyak keamanan fisik yang anda perlukan pada sistem anda
  sangat tergantung pada situasi anda, dan/atau anggaran.

  Jika anda adalah pemakai rumahan, anda mungkin tidak perlu banyak
  (meskipun anda mungkin butuh untuk melindungi mesin anda dari gangguan
  anak-anak atau kerabat lainnya). Jika anda dalam lingkungan lab, anda
  perlu lebih, tetapi pemakai masih dapat melakukan pekerjaan pada
  sistem. Bagian-bagian berikut akan membantu. Jika anda ada dalam
  kantor, anda mungkin atau tidak butuh untuk mengamankan mesin anda
  pada saat selesai atau pada saat anda pergi. Pada beberapa perusahaan,
  meninggalkan konsol tidak aman adalah suatu pelanggaran.

  Metode-metode keamanan fisik yang jelas seperti kunci pintu, kabel,
  kabinet yang terkunci, dan video pengawasan adalah ide yang baik,
  tetapi di luar cakupan dokumen ini. :)


  3.1.  Kunci Komputer

  Banyak case PC modern menyertakan atribut "penguncian". Biasanya ini
  adalah soket pada bagian depan case yang memungkinkan anda memutar
  kunci yang disertakan ke posisi terkunci atau tidak. Kunci case dapat
  membantu mencegah seseorang mencuri PC anda, atau membuka case yang
  secara langsung memanipulasi/mencuri hardware anda. Mereka dapat pula
  suatu saat mencegah seseorang mereboot komputer anda menggunakan
  floppy atau hardware mereka.

  Kunci case ini melakukan hal-hal yang berbeda sesuai dengan dukungan
  dalam motherboard dan bagaimana case dirancang. Pada banyak PC mereka
  membuatnya sehingga anda harus menghancurkan case untuk membukanya.
  Pada yang lain, mereka membuatnya sehingga tidak memungkinkan anda
  memasang keyboard dan mouse baru. Periksa instruksi motherboard atau
  case anda untuk informasi lebih lanjut. Alat ini sewaktu-waktu dapat
  sangat berguna, meskipun kuncinya biasanya memiliki kualitas rendah
  dan dapat secara mudah dibuka oleh penyerang dengan locksmithing.

  Beberapa case (kebanyakan SPARC dan MAC) memiliki "dongle" di belakang
  sehingga jika anda menaruh kabel sepanjangnya, para penyerang harus
  memotong kabel atau membongkar case untuk masuk. Dengan hanya menaruh
  padlock atau combo lock melaluinya dapat mencegah seseorang mencuri
  mesin anda.


  3.2.  Keamanan BIOS

  BIOS adalah software tingkat terendah yang mengkonfigurasi atau
  memanipulasi hardware berbasis x86 anda. LILO dan metode boot Linux
  lainnya mengakses BIOS untuk menentukan bagaimana memboot mesin Linux
  anda. Hardware lain yang menjalankan Linux memiliki software yang
  serupa (OpenFirmware pada MAC dan SUN, SUN boot prom, dsb). Anda dapat
  menggunakan BIOS anda untuk mencegah penyerang mereboot ulang mesin
  anda dan memanipulasi sistem Linux anda.

  Pada Linux/x86 banyak PC BIOS membolehkan anda menset password boot.
  Hal ini tidak memberikan banyak keamanan (BIOS dapat direset, atau
  dihapus jika seseorang dapat masuk ke case), namun mungkin dapat
  berguna (misalnya hal ini memerlukan waktu dan meninggalkan bekas).

  Banyak BIOS x86 juga membolehkan anda menspesifikasikan beragam
  setting keamanan yang baik lainnya. Periksa manual BIOS anda atau
  lihat saat anda boot up. Beberapa contoh adalah : tidak membolehkan
  booting dari floppy drive dan password untuk mengakses beberapa
  atribut BIOS.

  Pada Linux/SPARC, SPARC EEPROM anda dapat diset agar memerlukan
  password boot-up. Ini mungkin akan memperlambat penyerang.

  Catatan: Jika anda memiliki mesin server, dan anda mensetup password
  boot, mesin anda tidak akan memboot secara otomatis. Ingat bahwa anda
  perlu memasukkan password pada saat terjadi suatu kegagalan daya. ;(


  3.3.  Keamanan Boot Loader

  Berbagai boot loader Linux dapat juga memasang password boot. Dengan
  lilo, lihat pada setting "restricted" dan "password". "password"
  memungkinkan anda mensetup password bootup. "restricted" akan
  membiarkan mesin boot kecuali seseorang menspesifikasikan option di
  lilo prompt (seperti 'single').

  Ingatlah ketika menset seluruh password ini bahwa anda perlu mengingat
  mereka. :( Juga ingat bahwa password ini akan memperlambat penyerang
  yang gigih. Hal ini tidak akan mencegah seseorang membooting dari
  floppy, dan melakukan mount partisi root anda. Jika anda menggunakan
  keamanan bersama dengan boot loader, anda perlu juga mematikan booting
  dari floppy di BIOS anda, dan juga memberi password protecting BIOS
  komputer anda.

  Jika seseorang memiliki informasi keamanan bagi boot loader lain, kami
  sangat ingin mendengarnya. (grub, silo, milo, linload, dsb).

  Catatan: Jika anda memiliki mesin server, dan anda mensetup password
  boot, mesin anda tidak akan memboot secara otomatis. Ingat bahwa anda
  perlu memasukkan password pada saat terjadi suatu kegagalan daya. ;(


  3.4.  xlock dan vlock

  Jika anda sering meninggalkan mesin anda, adalah baik untuk dapat
  mengunci konsol anda sehingga tidak seorang pun dapat mengganggu atau
  melihat kerja anda. Dua buah program yang melakukannya adalah : xlock
  dan vlock.

  Xlock adalah sebuah pengunci tampilan X. Ia seharusnya disertakan di
  setiap distribusi Linux yang mendukung X. Periksa man pagenya untuk
  pilihan lebih banyak, tetapi secara umum anda dapat menjalankan xlock
  dari sembarang xterm di konsol anda dan ia akan mengunci tampilan dan
  membutuhkan password anda untuk membukanya.

  vlock adalah program kecil sederhana yang memungkinkan anda mengunci
  beberapa atau seluruh konsol virtual pada mesin Linux anda. Anda dapat
  mengunci hanya satu tempat kerja anda atau seluruhnya. Jika anda hanya
  mengunci satu, orang lain dapat menggunakan konsol, mereka hanya tidak
  dapat menggunakan vty anda hingga anda membukanya. vlock diedarkan
  dengan RedHat Linux, tetapi sistem anda mungkin berbeda.

  Tentu saja mengunci konsol anda akan mencegah seseorang mengganggu
  pekerjaan anda, tetapi tidak mencegah mereka mereboot mesin anda atau
  merusak pekerjaan anda. Hal ini juga tidak mencegah mereka mengakses
  mesin anda dari mesin lain dalam jaringan dan menyebabkan masalah.


  3.5.  Mendeteksi Gangguan Keamanan Fisik

  Hal pertama yang harus diperhatikan adalah pada saat mesin ada
  direboot. Oleh karena Linux adalah Sistem Operasi (SO) yang kuat
  (robust) dan stabil, saat bagi mesin anda untuk reboot adalah ketika
  anda mengupgrade SO, penukaran hardware, dan sejenisnya. Jika mesin
  anda direboot tanpa anda lakukan, kesukaran akan muncul. Banyak cara
  mesin anda dapat diganggu tanpa membutuhkan penyusup untuk reboot atau
  mematikan mesin anda.

  Periksa tanda-tanda gangguan pada case dan daerah komputer. Meskipun
  banyak penyusup membersihkan jejaknya dari log, namun sebaiknya anda
  memeriksa keseluruhannya dan mencatat kejanggalan.

  Beberapa hal untuk diperiksa pada log anda :

  o  Log pendek atau tidak lengkap.

  o  Log yang berisikan waktu yang aneh.

  o  Log dengan permisi atau kepemilikan yang tidak tepat.

  o  Catatan pelayanan reboot atau restart.

  o  Log yang hilang.

  o  Masukan su atau login dari tempat yang janggal

  Kita akan mendiskusikan data sistem log kemudian.


  4.  Keamanan Lokal

  Hal berikutnya yang perlu dilihat adalah keamanan sistem anda
  menghadapi serangan pemakai lokal. Apakah kita baru saja menyebut
  "pemakai lokal"? ya.

  Memperoleh akses ke pemakai lokal adalah salah satu hal yang
  diusahakan penyusup, pada saat berusaha mengeksploitasi rekening root.
  Dengan kurangnya keamanan lokal, mereka lalu dapat meng"upgrade" akses
  pemakai normal mereka ke akses root menggunakan berbagai bug atau
  setup pelayanan lokal yang tidak baik. Jika anda memastikan keamanan
  lokal anda ketat, maka penyusup akan perlu melompati rintangan lain.

  Para pemakai lokal dapat pula menyebabkan banyak kerusakan terhadap
  sistem anda meski (khususnya) jika mereka benar-benar siapa yang
  mereka katakan. Dengan memberikan rekening kepada orang-orang yang
  tidak anda kenal atau tidak memiliki kontak informasi adalah sebuah
  ide yang buruk.


  4.1.  Membuat Rekening Baru

  Anda perlu memastikan untuk memberikan rekening pemakai hanya sesuai
  dengan kebutuhan untuk menyelesaikan tugas mereka. Jika anda
  memberikan anak anda (usia 10) sebuah rekening, anda mungkin ingin
  mereka hanya dapat mengakses pengolah kata atau program gambar, tetapi
  tidak dapat menghapus data yang bukan miliknya.

  Beberapa aturan yang baik ketika membolehkan orang lain berhak
  mengakses mesin Linux anda :

  o  Beri mereka fasilitas minimal yang diperlukan.

  o  Hati-hati terhadap saat/dari mana mereka login, atau tempat
     seharusnya mereka login.

  o  Pastikan dan hapus rekening mereka ketika mereka tidak lagi
     membutuhkan akses.

  Banyak rekening pemakai lokal digunakan dalam gangguan keamanan adalah
  yang tidak pernah digunakan selama berbulan-bulan atau bertahun-tahun.
  Karena tidak ada yang menggunakannya mereka menjadi alat penyerangan
  yang ideal.


  4.2.  Keamanan Root

  Rekening yang paling dicari di mesin anda adalah rekening superuser.
  Rekening ini memiliki otoritas atas seluruh mesin, yang mungkin juga
  mencakup otoritas atas mesin lain yang ada di jaringan. Ingatlah bahwa
  anda hanya perlu menggunakan rekening root untuk tugas tertentu yang
  singkat dan gunakanlah rekening pemakai normal untuk hal lainnya.
  Menggunakan rekening root sepanjang waktu adalah ide yang sangat
  sangat sangat buruk.

  Beberapa trik untuk menghindari pengacauan komputer anda sebagai root:

  o  Ketika melakukan perintah yang kompleks, cobalah dalam cara yang
     tidak merusak dulu...terutama perintah yang menggunakan globbing:
     contoh, anda ingin melakukan "rm foo*.bak", pertama coba dulu: "ls
     foo*.bak" dan pastikan anda ingin menghapus file-file yang anda
     pikirkan. Menggunakan echo sebagai pengganti perintah merusak
     terkadang juga dapat dilakukan.

  o  Beberapa orang merasa terbantu ketika melakukan "touch /-i" pada
     sistem mereka. Hal ini akan membuat perintah-perintah seperti : "rm
     -fr *" menanyakan apakah anda benar-benar ingin menghapus seluruh
     file. (Shell anda menguraikan "-i" dulu, dan memberlakukannya
     sebagai option -i ke rm). Hal ini tidak akan membantu terhadap
     pernyataan rm yang tidak memiliki * di dalamnya. ;(

  o  Hanya menjadi root ketika melakukan tugas tunggal tertentu. Jika
     anda berusaha mengetahui bagaimana melakukan sesuatu, kembali ke
     shell pemakai normal hingga anda yakin apa yang perlu dilakukan
     oleh root.

  o  Jalur perintah untuk pemakai root sangat penting. Jalur perintah,
     atau variabel lingkungan PATH mendefinisikan lokal yang dicari
     shell untuk program. Cobalah dan batasi jalur perintah bagi pemakai
     root sedapat mungkin, dan jangan pernah menggunakan '.', yang
     berarti 'direktori saat ini', dalam pernyataan PATH anda. Sebagai
     tambahan, jangan pernah menaruh direktori yang dapat ditulis pada
     jalur pencarian anda, karena hal ini memungkinkan penyerang
     memodifikasi atau menaruh file biner dalam jalur pencarian anda,
     yang memungkinkan mereka menjadi root ketika anda menjalankan
     perintah tersebut.

  o  Jangan pernah menggunakan seperangkat utilitas rlogin/rsh/rexec
     (disebut utilitas r) sebagai root. Mereka menjadi sasaran banyak
     serangan, dan sangat berbahaya bila dijalankan sebagai root. Jangan
     membuat file .rhosts untuk root.

  o  File /etc/securetty berisikan daftar terminal-terminal tempat root
     dapat login. Secara baku (pada RedHat Linux) diset hanya pada
     konsol virtual lokal (vty). Berhati-hatilah saat menambahkan yang
     lain ke file ini. Anda seharusnya login dari jarak jauh sebagai
     pemakai biasa dan kemudian 'su' jika anda butuh (mudah-mudahan
     melalui ssh atau saluran terenkripsi lain), sehingga tidak perlu
     untuk login secara langsung sebagai root.

  o  Selalu perlahan dan berhati-hati ketika menjadi root. Tindakan anda
     dapat mempengaruhi banyak hal. Pikir sebelum anda mengetik!

  Jika anda benar-benar butuh untuk mengijinkan seseorang (semoga sangat
  dapat dipercaya) untuk memiliki akses superuser pada mesin anda,
  terdapat beberapa alat yang dapat membantu. Sudo memungkinkan pemakai
  menggunakan password mereka untuk mengakses sejumlah perintah terbatas
  sebagai root. Hal ini akan memungkinkan anda untuk, sebagai contoh,
  mengijinkan pemakai untuk mengeluarkan dan melakukan mount media
  removable pada sistem Linux anda, tetapi tidak memiliki kewenangan
  root lainnya. Sudo juga mencatat  usaha yang berhasil dan gagal,
  memungkinkan anda untuk melacak siapa yang menggunakan perintah apa
  untuk melakukan hal apa. Untuk alasan ini sudo bekerja dengan baik
  bahkan di tempat banyak orang memiliki akses root, tetapi gunakan sudo
  sehingga anda dapat melacak perubahan-perubahan yang terjadi.

  Meskipun sudo dapat digunakan untuk memberi kewenangan khusus bagi
  pemakai untuk tugas khusus, ia juga memiliki beberapa kelemahan. Ia
  seharusnya digunakan untuk sejumlah tugas tertentu, seperti memulai
  kembali server, atau menambahkan pemakai baru. Program-program yang
  memberikan shell escape akan memberi akses pemakai root. Ini mencakup
  kebanyakan editor, sebagai contoh. Juga, program seperti /bin/cat
  dapat digunakan untuk menulisi file, yang dapat menyebabkan root
  tereksploitasi. Pertimbangkan sudo sebagai cara bagi akuntabilitas,
  dan jangan mengharapkannya untuk mengganti pemakai root yang juga
  aman.


  5.  Keamanan File dan Sistem File

  Beberapa menit persiapan dan perencanaan sebelum menaruh sistem anda
  online dapat membantu melindungi sistem anda, dan data yang disimpan.

  o  Tidak ada alasan bagi direktori home pemakai agar memungkinkan
     menjalankan program SUID/SGID dari sana. Gunakan opsi "nosuid"
     dalam /etc/fstab untuk partisi yang dapat ditulis oleh orang selain
     root. Anda mungkin ingin menggunakan "nodev" dan "noexec" di
     partisi home pemakai, juga di /var, yang melarang eksekusi program,
     dan penciptaan device karakter atau blok, yang sebenarnya tidak
     perlu.

  o  Jika anda mengekspor sistem file menggunakan NFS, pastikan
     mengkonfigurasi /etc/exports dengan akses yang seketat mungkin.
     Artinya tidak menggunakan wildcard, tidak membolehkan root akses
     menulis, dan melakukan mount read-only jika mungkin.

  o  Konfigurasi umask penciptaan file pemakai anda seketat mungkin.
     Setting yang biasa digunakan adalah 022, 033, dan yang paling ketat
     adalah 077, dan ditambahkan ke /etc/profile.

  o  Set limit sistem file. Anda dapat mengendalikan limit tiap pemakai
     menggunakan module PAM dan /etc/pam.d/limits.conf. Sebagai contoh,
     limit untuk kelompok "users" mungkin tampak sebagai berikut :


                              @users     hard  core    0
                              @users     hard  nproc   50
                              @users     hard  rss     5000




  Perintah ini berarti melarang penciptaan file core, membatasi jumlah
  proses hingga 50, dan membatasi penggunaan memori tiap user hingga 5M.

  o  File /var/log/wtmp dan /var/run/utmp berisi catatan login seluruh
     pemakai sistem anda. Integritasnya harus dipelihara karena dapat
     digunakan untuk menentukan kapan dan dari mana seorang pemakai
     (atau penyusup potensial) memasuki sistem anda. File-file ini harus
     memiliki permisi 644, tanpa mempengaruhi operasi sistem normal.

  o  Bit immutable dapat digunakan untuk mencegah penghapusan atau
     penimpahan sebuah file yang harus dilindungi tanpa sengaja. Juga
     dapat mencegah seseorang menciptakan link simbolik ke file ini,
     yang telah merupakan sumber penyerangan melibatkan penghapusan
     /etc/passwd atau /etc/shadow. Lihat man page chattr(1) untuk
     informasi bit immutable.

  o  File-file SUID dan SGID pada sistem anda adalah risiko keamanan
     potensial, dan harus diawasi dengan baik. Oleh karena program-
     program ini memberi ijin khusus bagi pemakai yang mengeksekusinya,
     maka perlu dipastikan bahwa program yang tidak aman tidak diinstal.
     Trik favorit cracker adalah mengeksploitasi program SUID "root",
     lalu meninggalkan program SUID sebagai backdoor untuk masuk di saat
     lain, meski lubang yang asli telah ditutup.

     Carilah seluruh program SUID/SGID di sistem anda, dan catatlah,
     sehingga anda mengerti setiap perubahan yang dapat mengindikasikan
     penyusup potensial. Gunakan perintah berikut untuk mencari seluruh
     program SUID/SGID di sistem anda:


       ______________________________________________________________________
       root#  find / -type f \( -perm -04000 -o -perm -02000 \)
       ______________________________________________________________________





  Anda dapat menghapus ijin SUID atau SGID pada program yang dicurigai
  menggunakan chmod(1), lalu rubah kembali jika anda rasa perlu.

  o  File-file world-writable, utamanya file sistem, dapat menjadi
     lubang keamanan jika seorang cracker memperoleh akses ke sistem
     anda dan memodifikasinya. Selain itu direktori world-writable
     berbahaya, karena memungkinkan cracker menambah atau menghapus file
     sesuai keinginannya. Untuk mencari seluruh file world-writable di
     sistem anda, gunakan perintah berikut:


       ______________________________________________________________________
       root# find / -perm -2 -print
       ______________________________________________________________________




  dan pastikan anda paham mengapa file tersebut world-writable. Dalam
  operasi normal, terdapat beberapa file writable, termasuk beberapa
  dari /dev, dan link simbolik.

  o  File-file yang tidak ada pemiliknya juga dapat menjadi indikasi
     penyusup telah mengakses sistem anda. Anda dapat menemukan file-
     file di sistem anda yang tidak memiliki pemilik, atau milik suatu
     kelompok dengan perintah :


       ______________________________________________________________________
       root# find / -nouser -o -nogroup -print
       ______________________________________________________________________




  o  Mencari file .rhosts seharusnya menjadi bagian tugas reguler anda
     sebagai sistem administrator, karena file ini tidak diijinkan ada
     di sistem anda. Ingat, cracker hanya perlu satu rekening tidak aman
     untuk secara potensial memperolah akses ke seluruh jaringan anda.
     Anda dapat melihat seluruh file .rhosts di sistem anda dengan
     perintah :


       ______________________________________________________________________
       root# find /home -name .rhosts -print
       ______________________________________________________________________




  o  Akhirnya, sebelum merubah permisi di sembarang sistem file,
     pastikan anda paham apa yang anda lakukan. Jangan pernah merubah
     permisi suatu file hanya karena ini tampaknya merupakan cara
     termudah menyelesaikan sesuatu. Selalu tentukan mengapa file
     memiliki permisi tersebut sebelum merubahnya.
  5.1.  Setting Umask

  Perintah umask dapat digunakan untuk menentukan mode penciptaan file
  baku di sistem anda. Ia merupakan komplemen oktal mode file yang
  diinginkan. Jika file diciptakan tanpa mengindahkan setting permisi,
  pemakai secara tidak sengaja dapat memberi permisi membaca atau
  menulis kepada seseorang yang tidak seharusnya memiliki permisi ini.
  Umumnya setting umask mencakup 022, 027, dan 077, yang paling
  terbatas. Normalnya umask diset dalam /etc/profile, sehingga berlaku
  untuk semua pemakai sistem. Sebagai contoh, anda mungkin memiliki
  sebuah baris yang tampak seperti berikut:


       ______________________________________________________________________
                              # Set the user's default umask
                              umask 033
       ______________________________________________________________________




  Pastikan untuk membuat umask root 077, yang akan meniadakan permisi
  membaca, menulis, dan mengeksekusi bagi pemakai lain, kecuali dirubah
  secara eksplisit menggunakan chmod(1).

  Jika anda menggunakan RedHat, dan mengikuti skema penciptaan ID
  pemakai dan kelompok (User Private Groups), hanya perlu menggunakan
  002 sebagai umask. Hal ini disebabkan kenyataan bahwa konfigurasi baku
  adalah satu orang untuk satu kelompok.


  5.2.  Permisi File

  Penting untuk memastikan bahwa file sistem anda tidak terbuka untuk
  pengeditan oleh pemakai dan grup yang tidak seharusnya melakukan
  pemeliharaan sistem semacam itu.

  UNIX membedakan kendali akses pada file dan direktori berdasarkan tiga
  karakteristik: pemilik (owner), grup, dan yang lain (other). Selalu
  terdapat satu pemilik, sejumlah anggota grup, dan setiap orang lain.

  Penjelasan singkat permisi UNIX:

  Kepemilikan - Pemakai dan grup mana saja yang memperoleh kendali atas
  setting permisi node dan node induk.

  Permisi - Bit yang mampu diset atau direset untuk memungkinkan
  beberapa tipe akses tertentu terhadapnya. Permisi direktori mungkin
  memiliki arti berbeda dengan permisi set yang sama untuk file.

  Read (Baca):

  o  Mampu melihat isi file.

  o  Mampu membaca direktori.

  Write (Menulis):

  o  Mampu menambah atau merubah file.

  o  Mampu menghapus atau memindah file dalam sebuah direktori.

  Execute (Eksekusi):

  o  Mampu menjalankan program biner atau script shell.

  o  Mampu mencari dalam sebuah direktori, dikombinasikan dengan permisi
     read.

  Menyimpan atribut teks: (untuk direktori) Bit sticky juga memiliki
  arti lain ketika diaplikasikan pada direktori. Jika bit sticky diset
  pada direktori, maka seorang pemakai hanya boleh menghapus file yang
  dimiliki atau diberi ijin menulis secara eksplisit, walaupun ia
  memiliki akses ke direktori. Hal ini dirancang untuk direktori seperti
  /tmp, yang bersifat world-writable, tetapi tidak diinginkan setiap
  pemakai dapat menghapus file sesukanya. Bit sticky dilihat sebagai
  sebuah 't' dalam daftar direktori.

  Atribut SUID: (untuk file) Atribut ini menggambarkan permisi set ID
  pemakai atas file. Ketika mode akses permisi set ID diset dalam
  permisi pemilik, dan file adalah eksekutabel, proses yang
  menjalankannya diberi ijin akses kepada sumber daya sistem berdasarkan
  pemakai yang membuat proses. Inilah penyebab eksploitasi 'buffer
  overflow'.

  Atribut SGID: (untuk file) Jika diset dalam permisi grup, bit ini
  mengendalikan status "set group id" file. Ia berlaku serupa dengan
  SUID, kecuali grup terpengaruh. File harus eksekutabel agar dapat
  berlaku.

  Atribut SGID: (untuk direktori) Jika anda menset bit SGID pada
  direktori (dengan "chmod g+s direktori"), file yang tercipta di
  direktori akan memiliki grup yang sama dengan grup direktori.

  Anda - Pemilik file

  Grup - Grup anda berada.

  Orang lain - Setiap orang yang ada di sistem yang bukan pemilik atau
  anggota grup.

  Contoh File :


                      -rw-r--r--  1 kevin  users         114 Aug 28  1997 .zlogin
                      1st bit - direktori?               (tidak)
                       2nd bit - baca oleh pemilik?       (ya, oleh kevin)
                        3rd bit - tulis oleh pemilik?      (ya, oleh kevin)
                         4th bit - eksekusi oleh pemilik?   (tidak)
                          5th bit - baca oleh grup?          (ya, oleh users)
                           6th bit - tulis oleh grup?         (tidak)
                            7th bit - eksekusi oleh grup?      (tidak)
                             8th bit - baca oleh tiap orang?    (ya, o/ tiap orang)
                              9th bit - tulis oleh tiap orang?   (tidak)
                               10th bit - eksekusi o/ tiap orang? (tidak)




  Baris berikut merupakan contoh set minimum permisi yang dibutuhkan
  untuk melakukan akses yang dideskripsikan. Anda mungkin ingin memberi
  permisi lebih daripada yang ditampilkan, tetapi ini akan
  mendeskripsikan apa yang dilakukan oleh permisi minimum :









        -r--------  Membolehkan akses baca file oleh pemilik
        --w-------  Membolehkan pemilik untuk modifikasi/hapus file
        ---x------  Pemilik dapat mengeksekusi program, tapi bukan shell script,
                    yang masih perlu ijin baca
        ---s------  Akan mengeksekusi dengan ID pemakai efektif = pemilik
        -------s--  Akan mengeksekusi dengan ID pemakai efektif = grup
        -rw------T  Tdk ada update "last modified time". Biasanya untuk file swap
        ---t------  Tidak ada efek. (dulunya bit sticky)




  Contoh direktori:


                     drwxr-xr-x  3 kevin  users         512 Sep 19 13:47 .public_html/
                     1st bit - direktori?             (ya, berisi banyak file)
                      2nd bit - baca oleh pemilik?     (ya, oleh kevin)
                       3rd bit - tulis oleh pemilik?    (ya, oleh kevin)
                        4th bit - eksekusi oleh pemilik? (ya, oleh kevin)
                         5th bit - baca oleh grup?        (ya, oleh pemakai)
                          6th bit - tulis oleh grup?       (tidak)
                           7th bit - eksekusi oleh grup?    (ya, oleh pemakai)
                            8th bit - baca oleh tiap orang?  (ya, oleh setiap orang)
                             9th bit - tulis oleh tiap orang?  (tidak)
                              10th bit - eksekusi oleh everyone? (ya, oleh tiap orang)




  Baris-baris berikut adalah contoh set permisi minimum yang diperlukan
  untuk melakukan akses yang dideskripsikan. Anda mungkin ingin memberi
  lebih permisi daripada yang didaftarkan, namun contoh ini dapat
  menggambarkan apa yang dilakukan permisi minimum pada direktori:


            dr--------  Isi dpt ditampilkan, tapi atribut file tidak dapat dibaca
            d--x------  Direktori dapat dimasuki, dan digunakan dl path eksekusi penuh
            dr-x------  Atribut file dapat dibaca oleh pemilik
            d-wx------  File dapat diciptakan/dihapus, meski bukan direktori saat ini
            d------x-t  Mencegah file dihapus oleh orang lain dengan akses tulis.
                        Digunakan di /tmp
            d---s--s--  Tidak ada efek




  File konfigurasi sistem (biasanya di /etc/) biasanya mode 640 (-rw-
  r-----), dan dimiliki oleh root. Tergantung pada persyaratan keamanan
  site anda, anda mungkin perlu menyesuaikannya. Jangan pernah
  meninggalkan file sistem dapat ditulisi oleh grup atau tiap orang.
  Beberapa file konfigurasi, termasuk /etc/shadow, hanya boleh dibaca
  oleh root, dan direktori dalam /etc tidak boleh diakses oleh orang
  lain.

  Script Shell SUID Script shell SUID merupakan risiko keamanan yang
  serius, dan oleh karena itu kernel tidak akan menganggapnya. Meski
  anda menganggap betapa aman script shell, ia dapat dieksploitasi untuk
  memberi cracker shell root.


  5.3.  Pemeriksaan Integritas dengan Tripwire

  Cara baik lain untuk mendeteksi serangan lokal (dan juga jaringan)
  pada sistem anda adalah dengan menjalankan pemeriksa integritas
  seperti Tripwire. Tripwire menjalankan sejumlah checksum di seluruh
  file biner dan config penting anda dan membandingkannya dengan
  database terdahulu, yang diketahui baik sebagai referensi. Oleh karena
  itu, setiap perubahan dalam file akan diketahui.

  Merupakan ide yang baik untuk menginstal tripwire ke floppy, dan
  kemudian mengeset write protect secara fisik pada floppy. Dengan
  demikian penyusup tidak dapat mengganggu tripwire atau merubah
  database. Sekali anda telah memiliki setup tripwire, merupakan ide
  yang baik untuk menjalankannya sebagai tugas administrasi keamanan
  normal anda untuk melihat jika ada perubahan.

  Anda bahkan dapat menambahkan entry crontab untuk menjalankan tripwire
  dari floppy setiap malam dan mengirimkan hasilnya kepada anda di pagi
  hari. Sesuatu seperti :


       ______________________________________________________________________
                              # set mailto
                              MAILTO=kevin
                              # run tripwire
                              15 05 * * * root /usr/local/adm/tcheck/tripwire
       ______________________________________________________________________




  akan mengirimkan laporan kepada anda di jam 5:15 pagi hari.

  Tripwire dapat pula menjadi petunjuk yang baik untuk mendeteksi
  penyusup sebelum anda mengetahuinya. Oleh karena banyaknya file yang
  berubah pada rata-rata sistem, anda harus berhati-hati tentang
  aktivitas cracker dan apa yang anda lakukan.


  5.4.  Trojan Horses (Kuda-kuda Troya)

  Kuda troya diambil namanya dari fabel sastra besar Homer. Idenya
  adalah anda menaruh program atau biner yang tampaknya bagus, dan
  membuat orang lain mendownloadnya dan menjalankannya sebagai root.
  Kemudian, anda dapat mengganggu sistem mereka sementara mereka tidak
  memperhatikan. Sementara mereka berpikir bahwa file biner yang mereka
  ambil hanya melakukan satu hal (dan mungkin sangat baik), namun ia
  juga mengganggu keamanan mereka.

  Anda perlu waspada terhadap program apa yang anda instal di mesin
  anda. RedHat menyediakan checksum MD5, dan tanda PGP, file RPM
  sehingga anda dapat memverifikasi bahwa anda menginstal hal yang
  sebenarnya. Distribusi lain memiliki metode yang serupa. Anda
  sebaiknya tidak menjalankan sembarang file biner yang kode sumbernya
  tidak anda miliki atau kenal sebagai root! Sedikit penyerang yang
  bersedia mengeluarkan kode sumber untuk dilihat publik.

  Meski dapat menjadi kompleks, pastikan anda memperoleh kode sumber
  untuk beberapa program dari site distribusi sebenarnya. Jika program
  akan berjalan sebagai root pastikan anda atau seseorang yang anda
  percayai telah melihat kode sumber dan memverifikasinya.


  6.  Keamanan Password dan Enkripsi

  Salah satu feature keamanan yang penting yang digunakan saat ini
  adalah password. Penting bagi anda dan seluruh pemakai anda untuk
  memiliki password yang aman dan tidak dapat diterka. Kebanyakan
  distribusi Linux terbaru menyertakan program 'passwd' yang tidak
  membolehkan anda menset password yang mudah diterka. Pastikan program
  passwd anda terbaru dan memiliki feature ini.
  Diskusi mendalam tentang enkripsi adalah di luar lingkup dokumen ini,
  tetapi pendahuluannya tidak. Enkripsi sangat berguna, mungkin sangat
  perlu di saat ini. Terdapat berbagai metode enkripsi data, yang
  memiliki karateristiknya sendiri.

  Kebanyakan unicies (dan Linux bukanlah perkecualian) utamanya
  menggunakan algoritma enkripsi satu arah (one-way), disebut DES (Data
  Encryption Standard) untuk mengenkripsi password anda. Password
  terenkripsi ini kemudian disimpan (umumnya) di /etc/passwd (atau
  kurang umum) di /etc/shadow. Ketika anda berusaha login, apapun yang
  anda ketikkan dienkripsi dibandingkan dengan masukan dalam file yang
  menyimpan password anda. Jika cocok, pastilah passwordnya sama, dan
  anda dibolehkan mengakses. Meskipun DES merupakan algoritma enkripsi
  dua arah (anda dapat menkode dan mendekode pesan, dengan memberi kunci
  yang tepat), varian yang digunakan kebanyakan unicies adalah satu
  arah. Artinya tidak mungkin membalik enkripsi untuk memperoleh
  password dari isi /etc/passwd (atau /etc/shadow).

  Serangan brute force, seperti "Crack" atau "John the Ripper" (lihat di
  bawah) sering dapat digunakan untuk menerka password meski password
  anda cukup acak. Modul PAM (lihat di bawah) memungkinkan anda
  menggunakan rutin enkripsi yang berbeda dengan password anda (MD5 atau
  sejenisnya).

  Anda dapat ke http://consult.cern.ch/writeup/security/security_3.html
  untuk informasi bagaimana memilih password yang baik.


  6.1.  PGP dan Public Key Cryptography

  Public Key Cryptography, seperti yang digunakan untuk PGP, melibatkan
  kriptografi yang menggunakan satu kunci untuk enkripsi, dan satu kunci
  untuk dekripsi. Secara tradisional, kriptografi menggunakan kunci yang
  sama untuk enkripsi dan dekripsi. "Kunci pribadi" ini harus diketahui
  oleh kedua pihak, dan ditransfer dari satu ke lainnya secara aman.

  Enkripsi kunci publik membebaskan kebutuhan untuk secara aman
  mentransmisi kunci yang diperlukan untuk enkripsi dengan menggunakan
  dua buah kunci berbeda, kunci pribadi dan kunci publik. Kunci publik
  setiap orang tersedia bagi semua orang untuk melakukan enkripsi,
  sementara pada saat yang sama setiap orang menjaga kunci pribadinya
  untuk mendekripsi pesan terenkripsi dengan kunci publik yang tepat.

  Terdapat keuntungan public key dan private key cryptography, dan anda
  dapat membaca tentang perbedaan-perbedaan ini dalam RSA Cryptography
  FAQ, didaftarkan pada akhir bagian ini.

  PGP (Pretty Good Privacy) didukung dengan baik pada Linux. Versi 2.6.2
  dan 5.0 dikenal bekerja dengan baik. Untuk perkenalan tentang PGP dan
  bagaimana menggunakan, silakan lihat PGP FAQ
  http://www.pgp.com/service/export/faq/55faq.cgi. Pastikan menggunakan
  versi yang dapat digunakan di negara anda, berkaitan dengan pembatasan
  ekspor oleh pemerintah AS, enkripsi kuat dianggap sebuah senjata
  militer, dan terlarang untuk ditransfer dalam bentuk elektronik ke
  luar negeri.

  Terdapat pula panduan langkah-demi-langkah untuk mengkonfigurasi PGP
  pada Linux di . Ditulis untuk versi internasional PGP, tetapi dapat
  diterapkan secara mudah ke versi AS. Anda mungkin butuh patch bagi
  versi terbaru Linux, yang tersedia di .

  Informasi lebih jauh tentang cryptography dapat dijumpai dalam RSA
  Cryptography FAQ, tersedia di http://www.rsa.com/rsalabs/newfaq. Di
  sini anda akan menjumpai informasi mengenai istilah seperti "Diffie-
  Hellman", "public-key cryptography", "Digital Certificates", dsb.

  6.2.  SSL, S-HTTP, HTTPS dan S/MIME

  Seringkali pemakai bertanya mengenai perbedaan-perbedaan antara
  berbagai protokol keamanan, dan bagaimana menggunakannya. Meski ini
  bukan dokumen enkripsi, merupakan ide yang baik untuk menjelaskan
  secara singkat setiap protokol dan di mana mencari informasi yang
  lebih banyak.


  o  SSL : SSL, atau Secure Sockets Layer, adalah metode enkripsi yang
     dikembangkan oleh Netscape untuk memberikan keamanan di Internet.
     Ia mendukung beberapa protokol enkripsi dan memberikan autentikasi
     client dan server. SSL beroperasi pada layer transpor, menciptakan
     saluran enkripsi yang aman untuk data, dan dapat mengenkripsi
     banyak tipe data. Hal ini dapat dilihat ketika mengunjungi site
     yang aman untuk melihat dokumen online aman dengan Communicator,
     dan berfungsi sebagai dasar komunikasi yang aman dengan
     Communicator, juga dengan enkripsi data Netscape Communication
     lainnya. Informasi lebih banyak dapat dijumpai di
     http://www.consensus.com/security/ssl-talk-faq.html. Informasi
     mengenai implementasi keamanan Netscape lainnya dan sebagai titik
     awal yang baik untuk protokol-protokol ini tersedia di
     http://home.netscape.com/info/security-doc.html.

  o  S-HTTP : S-HTTP adalah protokol lain yang memberikan pelayanan
     keamanan di Internet. Ia dirancang untuk memberikan
     confidentiality, authenticity, integrity, dan non-repudiability
     (tidak dapat dianggap sebagai orang lain) sementara mendukung
     banyak mekanisme manajemen kunci dan algoritma kriptografi melalui
     pilihan negosiasi antar pihak-pihak yang terlibat dalam setiap
     transaksi. S-HTTP terbatas pada software khusus yang
     mengimplementasikannya dan mengenkripsi setiap pesan secara
     individual. (Dari RSA Cryptography FAQ, hlm. 138)

  o  S/MIME: - S/MIME, atau Secure Multipurpose Internet Mail Extension,
     adalah standar enkripsi yang digunakan untuk mengenkripsi surat
     elektronik, atau tipe pesan lain di Internet. Ini merupakan standar
     terbuka yang dikembangkan RSA, sehingga kemungkinan akan kita
     jumpai di Linux suatu hari. Informasi lebih lanjut tentang S/MIME
     dapat ditemukan di
     http://home.netscape.com/assist/security/smime/overview.html.


  6.3.  Implementasi IPSEC pada Linux x-kernel

  Bersama dengan CIPE, dan berbagai bentuk lain data enkripsi, terdapat
  pula implementasi IPSEC untuk Linux. IPSEC adalah sebuah usaha oleh
  IETF untuk menciptakan komunikasi yang aman secara kriptografi di
  tingkat jaringan IP, yang juga memberikan autentikasi, integritas,
  kendali akses, dan konfidensial. Informasi mengenai IPSEC dan draft
  Internet dapat dijumpai di IETF Homepage. Anda dapat pula menemukan
  link ke berbagai protokol yang mencakup manajemen kunci, dan sebuah
  mailing list dan arsip.

  Implementasi Linux, yang sedang dikembangkan di Universitas Arizona,
  menggunakan kerangka kerja berbasis obyek untuk mengimplementasikan
  protokol jaringan yang disebut x-kernel, dan dapat dijumpai di
  http://www.cs.arizona.edu/xkernel/hpcc-blue/linux.html. Secara
  sederhana, x-kernel adalah metode penyerahan pesan pada tingkat
  kernel, yang memudahkan dalam implementasi.

  Sama seperti berbagai bentuk kriptografi lainnya, x-kernel tidak
  didistribusikan dengan kernel secara default karena adanya pembatasan
  ekspor.


  6.4.  SSH (Secure Shell), stelnet

  SSH dan stelnet adalah program yang memungkinkan anda untuk login ke
  sistem remote dan memiliki koneksi yang terenkripsi.

  SSH adalah paket program yang digunakan sebagai pengganti yang aman
  untuk rlogin, rsh dan rcp. Ia menggunakan public-key cryptography
  untuk mengenkripsi komunikasi antara dua host, demikian pula untuk
  autentikasi pemakai. Ia dapat digunakan untuk login secara aman ke
  remote host atau menyalin data antar host, sementara mencegah man-in-
  the-middle attacks (pembajakan sesi) dan DNS spoofing. Ia akan
  melakukan kompresi data pada koneksi anda, dan komunikasi X11 yang
  aman antar host. SSH homepage dapat dijumpai di
  http://www.cs.hut.fi/ssh

  Anda dapat pula menggunakan SSH dari stasiun kerja Windows anda ke
  server SSH Linux. Terdapat beberapa implementasi client Windows yang
  tersedia gratis, termasuk satu di
  http://guardian.htu.tuwien.ac.at/therapy/ssh/ dan juga implementasi
  komersil dari DataFellows, di http://www.datafellows.com

  SSLeay adalah implementasi bebas protokol Secure Sockets Layer
  Netscape, termasuk beberapa aplikasi, seperti Secure telnet, modul
  untuk Apache, beberapa database, dan juga beberapa algoritma termasuk
  DES, IDEA dan Blowfish.

  Dengan menggunakan pustaka ini, pengganti secure telnet telah
  diciptakan yang melakukan enkripsi pada koneksi telnet. Tidak seperti
  SSH, stelnet menggunakan SSL, protokol Secure Sockets Layer yang
  dikembangkan Netscape. Anda dapat menjumpai Secure telnet dan Secure
  FTP dengan melihat dulu SSLeay FAQ, tersedia di
  http://www.psy.uq.oz.au


  6.5.  PAM - Pluggable Authentication Modules

  Versi baru distribusi RedHat Linux dikirimkan dengan skema autentikasi
  yang terpadu disebut "PAM". PAM memungkinkan anda merubah secara on
  the fly metode autentikasi anda, persyaratan, dan menyembunyikan
  seluruh metode autentikasi lokal tanpa perlu mengkompilasi ulang biner
  anda. Konfigurasi PAM adalah di luar lingkup dokumen ini, tetapi
  pastikan untuk melihat web site PAM untuk informasi lebih banyak
  http://www.kernel.org/pub/linux/libs/pam

  Beberapa hal yang dapat anda lakukan dengan PAM:

  o  Menggunakan enkripsi non DES untuk password anda. (Membuatnya sulit
     untuk didekodekan secara brute force)

  o  Menset batasan sumber daya pada seluruh pemakai anda sehingga
     mereka tidak dapat melakukan serangan Denial of Service (jumlah
     proses, jumlah memori, dsb)

  o  Memungkinkan shadow password secara on the fly

  o  Membolehkan pemakai tertentu untuk login hanya pada waktu tertentu
     dari tempat tertentu.

  Dalam beberapa jam setelah instalasi dan konfigurasi sistem anda, anda
  dapat mencegah banyak serangan sebelum mereka terjadi. Sebagai contoh,
  menggunakan PAM untuk meniadakan pemakain secara system-wide file dot-
  rhosts dalam direktori home pemakai dengan menambahkan baris-baris
  berikut ke /etc/pam.d/login:



  ______________________________________________________________________
                    #
                    # Disable rsh/rlogin/rexec for users
                    #
                    login auth required pam_rhosts_auth.so no_rhosts
  ______________________________________________________________________





  6.6.  Cryptographic IP Encapsulation (CIPE)

  Tujuan utama software ini adalah memberikan fasilitas bagi
  interkoneksi subnetwork yang aman (menghadapi eavesdropping, termasuk
  traffic analysis, dan faked message injection) melintasi jaringan
  paket yang tidak aman seperti Internet.

  CIPE mengenkripsi data pada level jaringan. Paket-paket yang berjalan
  antar host pada jaringan dienkripsi. Mesin enkripsi ditempatkan dekat
  driver yang mengirim dan menerima paket.

  Tidak seperti SSH, yang mengenkripsi data dengan hubungan, pada level
  soket. Koneksi logika antara program yang berjalan di host yang
  berbeda dienkripsi.

  CIPE dapat digunakan dalam tunnelling, dalam rangka menciptakan
  Virtual Private Network. Enkripsi level rendah memiliki keuntungan
  yaitu dapat dibuat transparan antar dua jaringan yang terhubung dalam
  VPN, tanpa merubah software aplikasi.

  Ringkasan dari dokumentasi CIPE: Standar-standar IPSEC mendefinisikan
  sejumlah protokol yang dapat digunakan (di antara berbagai hal lain)
  untuk membangun VPN yang terenkripsi. Namun demikian, IPSEC lebih
  seperti himpunan protokol kelas berat dan rumit dengan banyak pilihan,
  implementasi seluruh himpunan protokol masih jarang digunakan dan
  beberapa isu (seperti manajemen kunci) masih belum terpecahkan. CIPE
  menggunakan pendekatan yang lebih sederhana, yaitu banyak hal yang
  dapat diparameterkan (seperti pilihan algoritma enkripsi yang
  digunakan) adalah pilihan tetap pada saat instalasi. Hal ini membatasi
  fleksibilitas, namun memungkinkan implementasi yang sederhana (maka
  efisien, mudah didebug..).

  Informasi lebih lanjut dapat ditemukan di
  http://www.inka.de/~bigred/devel/cipe.html

  Serupa dengan bentuk kriptografi lainnya, ia tidak didistribusikan
  dengan kernel secara default karena adanya pembatasan ekspor.


  6.7.  Kerberos

  Kerberos adalah sebuah sistem autentikasi yang dikembangkan oleh
  Proyek Athena di MIT. Ketika pemakai login, Kerberos mengautentikasi
  pemakai tersebut (menggunakan password), dan memberikan pemakai suatu
  cara untuk membuktikan identitasnya ke server dan host lain yang
  tersebar di jaringan.

  Autentikasi ini kemudian digunakan oleh program seperti rlogin untuk
  membolehkan pemakai login ke host lain tanpa password (seperti file
  .rhosts). Autentikasi juga digunakan oleh sistem surat dalam rangka
  menjamin bahwa surat dikirimkan kepada orang yang tepat, dan juga
  menjamin bahwa pengirim adalah benar orang yang diklaimnya.

  Efek keseluruhan menginstalasi Kerberos dan berbagai program
  bersamanya adalah secara virtual menghilangkan kemampuan pemakai untuk
  menipu (spoof) sistem agar mempercayai bahwa mereka adalah orang lain.
  Sayangnya, instalasi Kerberos sangat sulit, membutuhkan modifikasi
  atau mengganti berbagai program standar.

  Anda dapat menemukan informasi lebih banyak tentang kerberos di
  http://www.veritas.com/common/f/97042301.htm dan kodenya dapat
  ditemukan di http://nii.isi.edu/info/kerberos/

  (Dari: Stein, Jennifer G., Clifford Neuman, dan Jeffrey L. Schiller.
  "Kerberos: An Authentication Service for Open Network Systems." USENIX
  Conference Proceedings, Dallas, Texas, Winter 1998.)


  6.8.  Shadow Passwords

  Shadow password adalah suatu cara menjaga password terenkripsi anda
  dari pemakai normal. Normalnya, password terenkripsi ini disimpan di
  file /etc/passwd dapat dibaca semua pemakai. Mereka lalu dapat
  menjalankan program penerka password dan berusaha menentukan
  passwordnya. Shadow password menyimpan informasi ini ke file
  /etc/shadow yang hanya dapat dibaca oleh pemakai yang berhak. Dalam
  rangka menjalankan shadow password anda perlu memastikan bahwa seluruh
  utilitas anda yang perlu mengakses informasi password dikompilasi
  ulang untuk mendukungnya. PAM juga membolehkan anda untuk hanya
  memasukkan modul shadow dan tidak perlu mengkompilasi ulang
  eksekutabel. Anda dapat mengacu pada Shadow-Password HOWTO untuk
  informasi lebih lanjut jika perlu. Tersedia di
  http://sunsite.unc.edu/LDP/HOWTO/Shadow-Password-HOWTO.html. Ini sudah
  kuno, dan tidak dibutuhkan untuk distribusi yang mendukung PAM.


  6.9.  Crack dan John the Ripper

  Jika untuk beberapa alasan program passwd anda tidak memaksa password
  yang tidak mudah diterka, anda mungkin ingin menjalankan program
  password cracking dan memastikan password pemakai anda aman.

  Program password cracking bekerja berdasarkan ide yang mudah. Mereka
  mencoba setiap kata yang ada di kamus, dan kemudian variasi dari kata-
  kata tersebut. Mereka mengenkripsi satu kata dan membandingkannya
  dengan password terenkripsi anda. Jika cocok dicatat.

  Terdapat sejumlah program ini...dua yang paling dikenal adalah "Crack"
  dan "John the Ripper" http://www.false.com/security/john/. Mereka akan
  mengambil banyak waktu cpu anda, tetapi anda seharusnya dapat
  mengetahui jika penyerang dapat masuk dengan menggunakan mereka dengan
  terlebih dulu menjalankan mereka dan memberitahu pemakai dengan
  password lemah. Perhatikan bahwa penyerang harus menggunakan beberapa
  lubang lain untuk memperoleh file passwd anda, namun ini lebih umum
  daripada yang anda pikirkan.


  6.10.  CFS- Cryptographic File System dan TCFS - Transparent Crypto-
  graphic File System

  CFS adalah suatu cara mengenkripsi seluruh sistem file dan
  memungkinkan pemakai untuk menyimpan file-file terenkripsi di
  dalamnya. Ia menggunakan server NFS yang berjalan pada mesin lokal.
  rpms tersedia di http://www.replay.com/redhat/ dan informasi mengenai
  bagaimana bekerjanya ada di ftp://ftp.research.att.com/dist/mab

  TCFS memperbaiki CFS, menambahkan lebih banyak integrasi dengan sistem
  file, sehingga transparan bagi semua pemakai yang menggunakan sistem
  file yang terenkripsi. Informasi lebih banyak di http://edu-
  gw.dia.unisa.it/tcfs/

  6.11.  X11, SVGA dan keamanan tampilan

  6.11.1.  X11

  Penting bagi anda untuk mengamankan tampilan grafis anda untuk
  mencegah penyerang melakukan hal-hal seperti : mengambil password anda
  ketika anda ketikan tanpa anda ketahui, membaca dokumen atau informasi
  yang sedang anda baca, atau bahkan menggunakan lubang untuk memperoleh
  akses superuser. Dengan menjalankan aplikasi X remote melalui jaringan
  dapat pula menjadi ancaman, memungkinkan sniffer melihat seluruh
  interaksi anda dengan remote system.

  X memiliki sejumlah mekanisme kendali akses. Yang termudah adalah
  berdasarkan host. Anda dapat menggunakan xhost untuk menspesifikasikan
  host-host mana saja yang dibolehkan mengakses tampilan anda. Namun ini
  tidak begitu aman. Jika seseorang memperoleh akses ke mesin anda
  mereka dapat xhost + mesin mereka dan dapat masuk secara mudah. Juga,
  jika anda membolehkan akses dari mesin yang tidak terpercaya, siapapun
  di sana dapat mengganggu tampilan anda.

  Ketika menggunakan xdm (x display manager) untuk login, anda
  memperoleh metode akses yang jauh lebih baik: MIT-MAGIC-COOKIE-1.
  Cookie 128-bit dihasilkan dan disimpan dalam file .Xauthority. Jika
  anda butuh untuk membolehkan remote mesin mengakses tampilan anda,
  anda dapat menggunakan perintah xauth dan informasi dalam file
  .Xauthority untuk memberikan hanya akses koneksi. Lihat Remote-X-Apps
  mini-howto, tersedia di http://sunsite.unc.edu/LDP/HOWTO/mini/Remote-
  X-Apps.html

  Anda dapat pula menggunakan ssh (lihat ssh di atas) untuk membolehkan
  koneksi X yang aman. Keuntungannya adalah tranparan bagi pemakai
  akhir, dan berarti tidak ada data yang tidak terenkripsi melalui
  jaringan.

  Silakan lihat Xsecurity man page untuk informasi lebih jauh tentang
  keamanan X. Pilihan terbaik adalah menggunakan xdm untuk login ke
  konsol anda dan kemudian menggunakan ssh untuk ke remote site yang
  ingin anda jalankan program X-nya.


  6.11.2.  SVGA

  Program-program SVGAlib umumnya SUID-root dalam rangka mengakses
  hardware video mesin Linux anda. Ini menjadikan mereka sangat
  berbahaya. Jika mereka crash, anda biasanya perlu mereboot mesin anda
  untuk memperoleh konsol kembali. Pastikan program-program SVGA yang
  anda jalankan autentik, dan paling tidak dapat dipercaya. Lebih baik
  lagi, jangan jalankan mereka sama sekali.


  6.11.3.  GGI (Generic Graphics Interface Project)

  Proyek Linux GGI berusaha memecahkan beberapa masalah dengan antar
  muka video pada Linux. GGI akan memindahkan bagian kecil code video ke
  kernel Linux, dan kemudian mengendalikan akses ke sistem video.
  Artinya GGI akan dapat mengembalikan konsol anda setiap waktu ke
  keadaan yang baik. Mereka juga akan memungkinkan kunci atensi yang
  aman, sehingga anda dapat memastikan bahwa tidak ada program login
  kuda Troya berjalan di konsol anda. http://synergy.caltech.edu/~ggi/


  7.  Keamanan Kernel

  Ini adalah deskripsi pilihan konfigurasi kernel yang terkait dengan
  keamanan, dan sebuah penjelasan apa yang dilakukannya, dan bagaimana
  menggunakan mereka.
  Oleh karena kernel mengendalikan jaringan komputer anda, penting agar
  kernel sangat aman, dan kernel sendiri tidak akan diganggu. Untuk
  mencegah serangan jaringan terkini, anda harus berusaha dan memelihara
  versi kernel anda. Anda dapat menemukan kernel terbaru di
  ftp://ftp.kernel.org


  7.1.  Pilihan Kompilasi Kernel


  o  IP: Drop source routed frames (CONFIG_IP_NOSR) Pilihan ini
     seharusnya diset. Source routed frame berisikan seluruh jalur ke
     tujuan. Artinya router yang dilalui paket tidak perlu memeriksa
     paket, dan hanya memforwardnya saja. Hal ini dapat mengakibatkan
     masuknya data ke sistem anda yang mungkin menjadi eksploitasi
     potensial.

  o  IP: Firewalling (CONFIG_IP_FIREWALL) Pilihan ini perlu jika anda
     ingin mengkonfigurasi mesin anda sebagai firewall, melakukan
     masquerading, atau ingin melindungi stasiun kerja dial-up anda dari
     seseorang yang masuk melalui antar muka dial-up PPP anda.

  o  IP: forwarding/gatewaying (CONFIG_IP_FORWARD) Jika anda menset IP
     forwarding, mesin Linux anda maka menjadi router. Jika mesin anda
     ada pada jaringan, anda harus memforward data dari satu jaringan ke
     yang lain, dan mungkin membalik firewall yang ada di sana untuk
     mencegah hal ini terjadi. Pemakai dial-up normal mungkin ingin
     meniadakannya, dan pemakai lain harus berkonsentrasi pada implikasi
     keamanan melakukan hal ini. Mesin-mesin firewall akan
     mengadakannya, dan digunakan bersamaan dengan software firewall.

     Anda dapat mengadakan IP forwarding secara dinamik menggunakan
     perintah berikut :


       ______________________________________________________________________
                      root#  echo 1 > /proc/sys/net/ipv4/ip_forward
       ______________________________________________________________________





  dan meniadakannya dengan perintah :


       ______________________________________________________________________
                      root#  echo 0 > /proc/sys/net/ipv4/ip_forward
       ______________________________________________________________________





  File ini (dan banyak file lain di /proc) akan selalu tampak berukuran
  nol, tetapi kenyataannya tidak. Ini adalah feature kernel yang baru
  diperkenalkan, sehingga pastikan anda menggunakan kernel 2.0.33 atau
  lebih baru.

  o  IP: firewall packet logging (CONFIG_IP_FIREWALL_VERBOSE) Pilihan
     ini memberi anda informasi tentang paket yang diterima firewall
     anda, seperti pengirim, penerima, port, dsb.

  o  IP: always defragment (CONFIG_IP_ALWAYS_DEFRAG) Umumnya pilihan ini
     ditiadakan, tetapi jika anda membangun host firewall atau
     masquerading, anda mungkin ingin mengadakannya. Ketika data dikirim
     dari satu host ke yang lain, ia tidak selalu dikirim sebagai satu
     paket data, tetapi dipecah-pecah ke beberapa bagian. Masalah dengan
     hal ini adalah nomor port selalu disimpan dalam bagian pertama.
     Artinya seseorang dapat memasukkan informasi ke paket-paket sisanya
     yang tidak seharusnya ada.

  o  IP: syn cookies (CONFIG_SYN_COOKIES) SYN Attack adalah serangan
     denial of service (DoS) yang menghabiskan seluruh sumber daya mesin
     anda, memaksa anda untuk reboot. Kami tidak dapat memikirkan alasan
     anda meniadakan pilihan ini.

  o  Packet Signatures (CONFIG_NCPFS_PACKET_SIGNING) Ini adalah pilihan
     yang tersedia pada seri kernel 2.1 yang akan menandai paket NCP
     untuk keamanan yang lebih kuat. Secara normal anda dapat
     membiarkannya tidak ada, tetapi ia ada jika anda membutuhkannya.

  o  IP: Firewall packet netlink device (CONFIG_IP_FIREWALL_NETLINK) Ini
     adalah pilihan yang baik yang memungkinkan anda menganalisa 128
     byte pertama paket dalam program userspace, untuk menentukan
     bilamana anda ingin menerima atau menolak paket, berdasarkan
     validitasnya.


  7.2.  Device Kernel

  Terdapat sejumlah device blok dan karakter untuk Linux yang dapat
  membantu anda dengan keamanan.

  Dua device /dev/random dan /dev/urandom disediakan oleh kernel untuk
  menerima data random setiap saat.

  /dev/random dan /dev/urandom keduanya cukup aman digunakan dalam
  menghasilkan kunci PGP, tantangan SSH, dan aplikasi lain di mana
  bilangan random yang aman dibutuhkan. Penyerang seharusnya tidak dapat
  memperkirakan nomor berikutnya bila diberi urutan awal nomor-nomor
  dari sumber ini. Telah ada banyak usaha untuk memastikan bahwa nomor
  yang anda peroleh dari sumber ini adalah random dalam setiap arti kata
  random.

  Perbedaannya adalah bahwa /dev/random menghasilkan byte random dan
  membuat anda menunggu lebih banyak untuk dikumpulkan. Perhatikan bahwa
  pada beberapa sistem, ia dapat memblok untuk waktu lama menunggu
  masukan baru pemakai untuk diberi ke sistem. Sehingga anda perlu
  berhati-hati sebelum menggunakan /dev/random. (Mungkin hal terbaik
  yang dapat dilakukan adalah menggunakan ketika anda menciptakan
  informasi sensitif, dan anda mengatakan kepada pemakai untuk menekan
  keyboard secara berulang-ulang hingga anda mencetak "OK, enough").

  /dev/random adalah entropi kualitas tinggi, dihasilkan dari pengukuran
  waktu inter-interrupt dsb. Ia memblok hingga cukup data random bit
  tersedia.

  /dev/urandom adalah serupa, kecuali ketika penyimpanan entropi
  berjalan rendah ia akan mengembalikan hash kuat secara kriptografi.
  Ini tidak aman, tetapi cukup bagi kebanyakan aplikasi.

  Anda mungkin membaca dari device menggunakan sesuatu seperti:


       root# head -c 6 /dev/urandom | uuencode -




  Ini akan mencetak enam karakter random di layar, sesuai untuk
  pembuatan password.
  Lihat /usr/src/linux/drivers/char/random.c untuk deskripsi algoritma.

  Terima kasih kepada Theodore Y. Ts'o, John Lewis, dan yang lain dari
  Linux-kernel atas bantuannya kepada saya (Dave) untuk hal ini.


  8.  Keamanan Jaringan

  Keamanan jaringan menjadi semakin penting dengan semakin banyaknya
  waktu yang dihabiskan orang untuk berhubungan. Mengganggu keamanan
  jaringan sering lebih mudah daripada fisik atau lokal, dan lebih umum.

  Terdapat sejumlah alat yang baik untuk membantu keamanan jaringan, dan
  semakin banyak disertakan dalam distribusi Linux.


  8.1.  Packet Sniffers

  Salah satu cara umum yang digunakan penyusup untuk memperoleh akses ke
  banyak sistem di jaringan anda adalah dengan menggunakan sebuah packet
  sniffer pada host yang telah diganggu. Sniffer ini mendengarkan port
  Ethernet untuk hal-hal seperti "Password" dan "Login" dan "su" dalam
  aliran paket dan kemudian mencatat lalu lintas setelahnya. Dengan cara
  ini, penyerang memperoleh password untuk sistem yang bahkan tidak
  mereka usahakan untuk dibongkar. Password teks biasa adalah sangat
  rentan terhadap serangan ini.

  Contoh: host A telah diganggu. Penyerang menginstal sebuah sniffer.
  Sniffer mencatat login admin ke host B dari host C. Ia memperoleh
  password personal admin ketika ia login ke B. Kemudian, admin
  melakukan 'su' untuk mengatasi suatu masalah. Mereka sekarang memiliki
  password root untuk Host B. Kemudian admin membolehkan seseorang
  telnet dari rekeningnya ke host Z di site lain. Sekarang penyerang
  memiliki password/login di host Z.

  Di masa sekarang, penyerang bahkan tidak perlu mengganggu sebuah
  sistem untuk melakukan hal ini, mereka dapat membawa laptop atau pc ke
  suatu gedung dan menyadap ke jaringan anda.

  Dengan menggunakan ssh atau metode password terenkripsi lainnya dapat
  mencegah serangan ini. Hal-hal seperti APOP untuk rekening pop juga
  dapat mencegah serangan ini. (Login pop normal sangat rentan untuk hal
  ini, sama seperti segala sesuatu yang mengirim password teks biasa
  melalui kabel).


  8.2.  Pelayanan sistem dan tcp_wrappers

  Segera setelah anda menaruh sistem Linux anda di sembarang jaringan,
  hal pertama yang harus dilihat adalah pelayanan yang butuh anda
  tawarkan. Pelayanan-pelayanan yang tidak perlu anda tawarkan
  seharusnya ditiadakan sehingga anda memiliki satu hal yang tidak perlu
  dikhawatirkan dan penyerang memiliki satu hal kurangnya untuk mencari
  lubang.

  Terdapat sejumlah cara untuk meniadakan pelayanan dalam Linux. Anda
  dapat melihat pada file /etc/inetd.conf dan melihat pelayanan apa yang
  ditawarkan oleh inetd anda. Tiadakan segala yang tidak anda butuhkan
  dengan mengkomentari mereka (taruh # di awal baris), dan kemudian
  mengirimkan proses inetd anda sebuah SIGHUP.

  Anda dapat pula menghilangkan (atau mengkomentari) pelayanan-pelayanan
  di file /etc/services. Hal ini berarti client lokal anda tidak akan
  menemukan pelayanan (contoh, jika anda menghilangkan ftp, dan berusaha
  dan ftp ke site remote dari mesin tersebut maka akan gagal dengan
  pesan pelayanan yang tidak dikenal). Tidaklah berharga untuk
  menghilangkan pelayanan, karena tidak memberikan keamanan tambahan.
  Jika orang lokal ingin menggunakan ftp bahkan yang telah anda
  komentari, mereka ingin membuat client mereka menggunakan port ftp
  umum dan masih dapat bekerja baik.

  Beberapa pelayanan yang ingin anda biarkan ada adalah:

  o  ftp

  o  telnet

  o  mail, seperti pop-3 atau imap

  o  identd

  o  time

  Jika anda tahu anda tidak ingin menggunakan beberapa paket tertentu,
  anda dapat menghapusnya. rpm -e dalam distribusi Red Hat akan
  menghapus seluruh paket. Dalam debian dpkg akan melakukan hal yang
  sama.

  Sebagai tambahan, anda benar-benar ingin meniadakan utilitas
  rsh/rlogin/rcp, termasuk login (digunakan oleh rlogin), shell
  (digunakan oleh rcp), dan exec (digunakan oleh rsh) dari dimulai dalam
  /etc/inetd.conf. Protokol-protokol ini sangat tidak aman dan menjadi
  penyebab eksploit dahulu.

  Anda perlu memeriksa /etc/rc.d/rcN.d, dengan N adalah run level sistem
  anda dan melihat apakah pelayanan dimulai dalam direktori tersebut
  tidak dibutuhkan. File dalam /etc/rc.d/rcN.d sebenarnya adalah link
  simbolik ke direktori /etc/rc.d/init.d. Mengganti nama file dalam
  direktori init.d memiliki efek meniadakan seluruh link simbolik dalam
  /etc/rc.d/rcN.d. Jika anda hanya ingin meniadakan pelayanan untuk
  runlevel tertentu, ganti nama file yang sesuai dengan huruf kecil.

  Jika anda memiliki file rc bergaya BSD, anda mungkin ingin memeriksa
  /etc/rc* untuk program-program yang tidak anda butuhkan.

  Kebanyakan distribusi Linux menyertakan tcp_wrappers "wrapping"
  seluruh pelayanan tcp. Sebuah tcp_wrappers (tcpd) dipanggil dari inetd
  selain dari server sebenarnya. tcpd kemudian memeriksa host yang
  membutuhkan pelayanan dan kemudian mengeksekusi atau menolak akses
  server sebenarnya dari host tersebut. tcpd memungkinkan anda membatasi
  akses ke pelayanan tcp anda. Anda perlu membuat /etc/hosts.allow dan
  menambahkan hanya host yang membutuhkan akses ke pelayanan mesin anda.

  Jika anda adalah pemakai dialup rumahan, kami menyarankan anda menolak
  seluruhnya. tcpd juga mencatat usaha yang gagal untuk mengakses
  pelayanan, sehingga ini dapat memberi anda ide bahwa anda sedang
  diserang. Jika anda menambahkan pelayanan baru, anda harus pasti
  mengkonfigurasinya untuk menggunakan tcp_wrappers berbasis TCP.
  Sebagai contoh, pemakai dial-up normal dapat mencegah orang luar
  koneksi ke mesin anda, namun masih memiliki kemampuan untuk menerima
  surat, dan membuat hubungan jaringan ke Internet. Untuk melakukan ini,
  anda mungkin menambahkan perintah berikut ke /etc/hosts.allow:

  ALL: 127.

  Dan tentu saja /etc/hosts.deny akan berisi:

  ALL: ALL

  yang akan mencegah koneksi eksternal ke mesin anda, namun masih
  memungkinkan anda dari dalam berhubungan ke server di Internet.

  8.3.  Memverifikasi Informasi DNS Anda

  Memelihara informasi DNS tentang seluruh host di jaringan anda agar
  tetap baru dapat membantu meningkatkan keamanan. Bilamana ada host
  yang tidak dijinkan terhubung ke jaringan anda, anda dapat
  mengenalinya dengan tidak adanya masukan DNS. Banyak pelayanan dapat
  dikonfigurasi untuk tidak menerima koneksi dari host yang tidak
  memiliki masukan DNS yang valid.


  8.4.  identd

  identd adalah program kecil yang umumnya berjalan di inetd. Ia
  mencatat pelayanan tcp apa yang dijalankan pemakai, dan kemudian
  melaporkannya kepada yang meminta.

  Banyak orang salah mengerti kegunaan identd, sehingga meniadakannya
  atau memblok seluruh site yang memintanya. identd ada bukan untuk
  membantu remote site. Tidak ada cara untuk mengetahui jika data yang
  anda peroleh dari remote identd benar atau tidak. Tidak ada
  autentikasi dalam permintaan identd.

  Lalu mengapa anda ingin menjalankannya? Karena ia membantu anda, dan
  adalah titik data lain dalam penelusuran. Jika identd anda tidak
  terganggu, maka anda mengerti ia memberi tahu remote site nama pemakai
  atau uid orang-orang yang menggunakan pelayanan tcp. Jika admin pada
  remote site datang kepada anda dan memberitahu pemakai anda berusaha
  menghack ke site mereka, anda dapat secara mudah mengambil tindakan
  terhadap pemakai tersebut. Jika anda tidak menjalankan identd, anda
  harus melihat banyak catatan, memperkirakan siapa yang ada pada saat
  itu, dan secara umum membutuhkan waktu yang lebih banyak untuk
  menelusuri pemakai.

  identd yang disertakan dalam banyak distribusi lebih mudah
  dikonfigurasi daripada yang diperkirakan orang. Anda dapat meniadakan
  identd untuk pemakai tertentu (mereka dapat membuat file .noident),
  anda dapat mencatat seluruh permintaan identd (Saya menyarankannya),
  anda bahkan dapat memiliki identd mengembalikan uid daripada nama
  pemakai atau bahkan NO-USER.


  8.5.  SATAN, ISS, dan Scanner Jaringan Lainnya

  Terdapat sejumlah paket software berbeda yang melakukan penelusuran
  berdasarkan port dan pelayanan mesin atau jaringan. SATAN dan ISS
  adalah dua yang paling dikenal. Software ini berhubungan ke mesin
  sasaran (atau seluruh mesin sasaran di suatu jaringan) di semua port
  yang ada, dan berusaha menentukan pelayanan apa yang sedang berjalan.
  Berdasarkan informasi ini, anda dapat menemukan mesin yang rentan
  terhadap eksploitasi tertentu pada server.

  SATAN (Security Administrators Tool for Analyzing Networks) adalah
  sebuah penelusur port dengan antara muka web. Ia dapat dikonfigurasi
  untuk melakukan pemeriksaan ringan, menengah, atau berat pada mesin
  atau pada jaringan mesin. Akan merupakan ide yang baik untuk
  memperoleh SATAN dan memeriksa mesin atau jaringan anda, dan membenahi
  masalah-masalah yang ditemukan. Pastikan anda memperoleh SATAN dari
  sun-site atau FTP atau web site yang bereputasi. Terdapat salinan
  Troya SATAN yang didistribusikan di net.
  http://www.trouble.org/~zen/satan.html

  ISS (Internet Security Scanner) adalah penelusur berdasarkan port yang
  lain. Ia lebih cepat daripada SATAN, dan mungkin lebih baik untuk
  jaringan yang besar. Namun demikian, SATAN memberikan lebih banyak
  informasi.

  Abacus-Sentry adalah penelusur port komersil dari www.psionic.com.
  Lihat informasi lebih lanjut di homepagenya. http://www.psionic.com

  Mendeteksi penelusuran port.  Terdapat beberapa alat yang dirancang
  untuk memberitahu anda adanya probe SATAN dan ISS dan software
  penelusuran lainnya. Namun demikian, dengan pemakaian tcp_wrappers
  yang liberal dan memastikan untuk melihat file log anda secara
  berkala, anda dapat mengetahui probe tersebut. Bahkan pada setting
  terendah, SATAN masih meninggalkan jejak pada log di sistem Red Hat.


  8.6.  Sendmail, qmail dan MTA

  Salah satu pelayanan penting yang dapat anda sediakan adalah server
  surat. Sayangnya, ia juga sangat rentan diserang, karena banyaknya
  tugas yang harus dilakukan dan dibutuhkannya ijin khusus.

  Jika anda menggunakan sendmail, penting untuk menjaga versi anda agar
  up to date. Sendmail memiliki sejarah panjang di eksploitasi keamanan.
  Selalu pastikan anda menjalankan versi terbaru.
  http://www.sendmail.org

  Jika anda bosan mengupgrade versi sendmail anda setiap minggu, anda
  dapat mempertimbangkan beralih ke qmail. qmail dirancang dengan
  perhatian pada keamanan sejak awalnya. Ia cepat dan stabil dan aman.
  http://www.qmail.org


  8.7.  Serangan Denial of Service

  Serangan denial of service adalah saat ketika penyerang berusaha
  menggunakan beberapa sumber daya hingga terlalu sibuk untuk menjawab
  permintaan yang resmi, atau menolak pemakai resmi mengakses mesin
  anda.

  Serangan-serangan semacam ini meningkat dengan cepat pada tahun-tahun
  belakangan ini. Beberapa yang populer dan terbaru ditampilkan di bawah
  ini. Perhatikan bahwa yang baru selalu muncul setiap saat, sehingga
  ini hanya merupakan contoh. Baca list Linux security dan list serta
  archive bugtraq untuk informasi terkini.


  o  SYN Flooding - SYN flooding adalah serangan denial of service
     jaringan. Ia mengambil keuntungan dari "loophole" dalam koneksi TCP
     yang tercipta. Kernel Linux terbaru (2.0.30 ke atas) memiliki
     beberapa pilihan konfigurasi untuk mencegah serangan SYN flood dari
     menolak orang akses ke mesin atau pelayanan anda. Lihat bagian
     keamanan kernel untuk pilihan perlindungan kernel yang tepat.

  o  Pentium "F00F" Bug - Ini baru ditemukan bahwa serangkaian kode
     assembly yang dikirim ke prosesor asli Intel Pentium akan mereboot
     mesin. Ini mempengaruhi setiap mesin dengan prosesor Pentium (bukan
     klon, atau Pentium Pro atau PII), tidak tergantung pada sistem
     operasi yang dijalankan. Kernel Linux 2.0.32 ke atas memiliki
     pemecahan atas bug ini, mencegahnya mengunci mesin anda. Kernel
     2.0.33 memiliki versi perbaikan atas hal ini, dan disarankan
     daripada 2.0.32. Jika anda menggunakan Pentium, anda harus upgrade
     sekarang!

  o  Ping Flooding - Ping flooding adalah serangan denial of service
     brute force sederhana. Penyerang mengirim "flood" paket ICMP ke
     mesin anda. Jika mereka melakukan ini dari host dengan bandwidth
     yang lebih baik daripada milik anda, mesin anda tidak akan mampu
     mengirim sesuatu ke jaringan. Variasi serangan ini, disebut
     "smurfing" mengirim paket ICMP ke host dengan IP kembalian mesin
     anda, memungkinkan mereka membanjiri anda dengan sedikit
     terdeteksi. Anda dapat menumukan informasi lebih jauh tentang
     serangan "smurf" di http://www.quadrunner.com/~chuegen/smurf.txt

     Jika anda diserang ping flood, gunakan alat seperti tcpdump untuk
     menentukan asal paket (atau tampaknya berasal), kemudian hubungi
     provider anda dengan informasi ini. Ping flood dapat secara mudah
     dihentikan di level router atau dengan menggunakan firewall.

  o  Ping o' Death - Serangan Ping o' Death disebabkan lebih besarnya
     paket ICMP ECHO REQUEST yang datang daripada yang dapat ditangani
     struktur data kernel . Oleh karena mengirim sebuah paket "ping"
     besar (65.510 byte) ke banyak sistem akan membuat mereka hang atau
     bahkan crash, masalah ini secara cepat disebut "Ping o' Death". Ini
     telah lama diperbaiki, dan tidak perlu dikhawatirkan lagi.

  o  Teardrop / New Tear - Salah satu eksploit terbaru yang melibatkan
     bug yang ada di kode fragmentasi IP pada platform Linux dan
     Windows. Telah diperbaiki dalam kernel versi 2.0.33, dan tidak
     membutuhkan pilihan pada saat kompilasi untuk menggunakan
     perbaikan. Linux tampaknya tidak rentan terhadap eksploitasi "new
     tear".

  Anda dapat menemukan banyak kode eksploitasi, dan deskripsi lebih
  mendalam tentang bagaimana mereka bekerja di http://www.rootshell.com
  menggunakan mesin pencari mereka.


  8.8.  Keamanan NFS (Network File System)

  NFS adalah protokol file sharing yang paling banyak digunakan. Ia
  memungkinkan server menjalankan nfsd dan mountd untuk mengekspor
  seluruh filesystem ke mesin lain dengan dukungan nfs filesystem pada
  kernelnya (atau beberapa dukungan client jika mereka bukan mesin
  Linux). Mountd mencatat filesystem yang termount di /etc/mtab, dan
  dapat menampilkannya.

  Banyak site menggunakan NFS untuk bertugas sebagai direktori home
  untuk pemakai, sehingga tak peduli mesin apa yang dimasuki, mereka
  akan selalu memiliki file-filenya.

  Terdapat sedikit "keamanan" dibolehkan dalam mengekspor filesystem.
  Anda dapat membuat peta nfsd pemakai root remote (uid=0) ke pemakai
  nobody, membatasi akses total ke file-file yang diekspor. Namun
  demikian, karena pemakai individu memiliki akses ke file-file mereka
  (atau paling tidak uid yang sama), superuser remote dapat login atau
  su ke rekening mereka dan memiliki akses total ke file-file mereka.
  Ini hanya penghalang kecil bagi seorang penyerang yang memiliki akses
  untuk melakukan mount filesystem remote anda.

  Jika harus menggunakan NFS, pastikan anda mengekspor ke mesin-mesin
  yang anda butuh untuk ekspor saja. Jangan pernah mengekspor seluruh
  direktori root anda, ekspor hanya direktori yang perlu anda ekspor.

  Lihat NFS HOWTO untuk informasi lebih jauh tentang NFS.


  8.9.  NIS (Network Information Service) (dahulu YP)

  Network Information Service (dahulu YP) adalah suatu cara
  mendistribusikan informasi ke sekelompok mesin. Master NIS menyimpan
  tabel informasi dan mengkonversinya ke file peta NIS. Peta ini
  kemudian melayani jaringan, memungkinkan mesin klien NIS untuk
  memperoleh login, password, direktori home dan informasi shell
  (seluruh informasi di file /etc/passwd standar). Hal ini memungkinkan
  pemakai merubah password mereka sekali dan berlaku pula di seluruh
  mesin dalam domain NIS.
  NIS tidak seluruhnya aman. Ia tidak pernah dimaksudkan demikian. Ia
  dimaksudkan untuk berguna dan sederhana. Setiap orang dapat menduga
  nama domain NIS anda (di setiap tempat di Net) dapat memperoleh
  salinan file passwd, dan menggunakan Crack dan John the Ripper
  terhadap password pemakai anda. Juga, adalah mungkin untuk menipu NIS
  dan melakukan berbagai trik kotor. Jika anda harus menggunakan NIS,
  pastikan anda paham bahayanya.

  Terdapat pengganti NIS yang lebih aman, disebut NIS+. Silakan periksa
  NIS HOWTO untuk informasi lebih banyak.
  http://sunsite.unc.edu/mdw/HOWTO/NIS-HOWTO.html


  8.10.  Firewall

  Firewall adalah suatu cara untuk membatasi informasi yang dibolehkan
  masuk dan keluar dari jaringan lokal anda. Umumnya host firewall
  terhubung ke Internet dan LAN lokal anda, dan akses LAN anda ke
  Internet hanya melalui firewall. Dengan demikian firewall dapat
  mengendalikan apa yang diterima dan dikirim dari Internet dan LAN
  anda.

  Terdapat beberapa tipe dan metode setting firewall. Mesin-mesin Linux
  dapat menjadi firewall yang baik dan murah. Kode firewall dapat
  dibangun langsung ke dalam kernel 2.0 atau lebih tinggi. Alat ipfwadm
  user space memungkinkan anda merubah tipe lalu lintas jaringan yang
  anda bolehkan secara on the fly. Anda dapat pula mencatat tipe lalu
  lintas jaringan tertentu.

  Firewall adalah teknik yang sangat berguna dan penting dalam
  mengamankan jaringan anda. Penting untuk menyadari bahwa anda tidak
  boleh pernah berpikir bahwa dengan memiliki firewall, anda tidak perlu
  mengamankan mesin-mesin di baliknya. Ini kesalahan fatal. Periksa
  Firewall-HOWTO yang sangat bagus di arsip terbaru sunsite untuk
  informasi mengenai firewall dan
  Linux.http://sunsite.unc.edu/mdw/HOWTO/Firewall-HOWTO.html

  Informasi lebih banyak juga dapat ditemukan di IP-Masquerade mini-
  howto:http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Masquerade.html

  Informasi lebih lanjut tentang ipfwadm (Alat yang memungkinkan anda
  merubah setting firewall anda, dapat ditemukan di homepagenya:
  http://www.xos.nl/linux/ipfwadm


  9.  Persiapan Keamanan (sebelum on-line)

  OK, jadi anda telah memeriksa seluruh sistem anda, dan menentukan
  bahwa ia aman, dan siap menaruhnya online. Terdapat beberapa hal yang
  perlu anda lakukan kini agar siap bila penyusupan benar terjadi,
  sehingga anda dapat secara cepat meniadakan penyusup, dan dapat
  kembali dan berjalan.


  9.1.  Buat Backup Menyeluruh Sistem Anda

  Diskusi mengenai metode backup dan penyimpanan di luar lingkup dokumen
  ini, tetapi beberapa kata berkaitan dengan backup dan keamanan: Jika
  anda memiliki kurang dari 650mb data untuk disimpan dalam partisi,
  salinan data anda pada CD-R adlah cara yang baik (karena sulit
  merubahnya dan jika dikembalikan dengan tepat dapat lestari). Tape dan
  media rewritable lainnya harus di write protect segera setelah backup
  anda selesai dan diverifikasi untuk mencegah perubahan. Pastikan anda
  menyimpan backup anda di tempat yang aman. Backup yang baik akan
  memastikan anda memiliki titik yang baik untuk mengembalikan sistem
  anda.
  9.2.  Memilih Jadwal Backup yang Baik

  Siklus six-tape adalah mudah dipelihara. Ini mencakup empat tape
  selama satu minggu, satu tape untuk Jumat genap, dan satu tape untuk
  Jumat ganjil. Lakukan incremental backup setiap hari, dan full backup
  pada tape Jumat yang tepat. Jika anda membuat perubahan penting atau
  menambah data penting ke sistem anda, lakukan backup.


  9.3.  Backup File Database RPM atau Debian Anda

  Bila ada penyusupan, anda dapat menggunakan database RPM sebagaimana
  anda menggunakan tripwire, tetapi hanya bila anda pasti ia belum
  dimodifikasi. Anda perlu menyalin database RPM ke floppy, dan
  memeliharanya. Distribusi Debian tampaknya memiliki hal serupa.

  Secara khusus, file /var/lib/rpm/fileindex.rpm dan
  /var/lib/rpm/packages.rpm tidak akan cukup di satu floppy. Kompreslah
  maka masing-masing akan cukup di floppy terpisah.

  Kini, bila sistem anda terganggu, anda dapat menggunakan perintah:


       ______________________________________________________________________
       root# rpm -Va
       ______________________________________________________________________




  untuk memverifikasi setiap file di sistem. Lihat man page RPM, ada
  beberapa pilihan lain yang dapat disertakan untuk membuatkan kurang
  detil.

  Artinya setiap kali RPM baru ditambahkan ke sistem, database RPM perlu
  diarsip ulang. Anda perlu memutuskan keunggulan versus kelemahan.


  9.4.  Pelihara Data Akuntansi Sistem Anda

  Sangat penting bahwa informasi yang berasal dari syslog belum
  diganggu. Membuat file dalam /var/log dapat dibaca dan ditulis oleh
  sejumlah pemakai terbatas adalah awal yang baik.

  Yakinkan untuk memperhatikan apa yang ditulis di sana, khususnya dalam
  fasilitas 'auth'. Banyaknya kegagalan login, sebagai contoh, dapat
  mengindikasikan usaha break-in.

  Ke mana untuk melihat file log anda tergantung pada distribusi anda.
  Dalam sistem Linux yang sesuai dengan "Linux Filesystem Standard",
  seperti Red Hat, anda ingin melihat ke /var/log dan memeriksa pesan-
  pesan, mail.log dan lainnya.

  Anda dapat menemukan di mana distribusi anda mencatat dengan melihat
  pada file /etc/syslog.conf. Ini file yang memberitahu syslogd (the
  system logging daemon) di mana mencatat berbagai pesan.

  Anda mungkin ingin mengkonfigurasi script log-rotating anda atau
  daemon untuk menjaga log lebih panjang sehingga anda memiliki waktu
  untuk memeriksanya. Lihat paket 'logrotate' dalam distribusi Red Hat
  terkini. Distribusi lain juga memiliki proses yang serupa.

  Jika file log anda telah diganggu, lihat bila anda dapat menentukan
  kapan terjadinya, dan hal-hal apa yang diganggu. Apakah ada periode
  waktu yang tidak dapat dihitung? Periksa tape backup (jika anda punya)
  untuk file log yang tidak terganggu adalah ide yang baik.
  File log umumnya dimodifikasi oleh penyusup dalam rangka menutup
  jejaknya, tetapi mereka harus juga memeriksa kejadian-kejadian aneh.
  Anda mungkin memperhatikan penyusup berusaha memperoleh jalan masuk,
  atau mengeksploitasi program dalam rangka memperoleh rekening root.
  Anda mungkin melihat masukan log sebelum penyusup memiliki waktu
  memodifikasi mereka.

  Anda harus juga yakin untuk memisahkan fasilitas 'auth' dari data log
  lain, termasuk usaha untuk mengganti pemakai menggunakan 'su', usaha
  login, dan informasi akuntansi pemakai lainnya.

  Jika mungkin, konfigurasi syslog untuk mengirim salinan data yang
  paling penting ke sistem yang aman. Hal ini akan mencegah penyusup
  menutupi jejaknya dengan menghapus usaha login/su/ftp/etc. Lihat
  syslog.conf man page, dan acu pilihan '@'.

  Akhirnya, file log kurang berguna ketika tak seorang pun membacanya.
  Lihatlah log file anda sewaktu-waktu, dan kenali tampaknya untuk hari
  normal. Dengan mengetahui hal ini dapat membantu mengenali hal-hal
  yang tidak biasa.


  9.5.  Aplikasikan Seluruh Update Sistem Baru

  Kebanyakan pemakai Linux menginstal dari CDROM. Oleh karena tingginya
  fase perbaikan keamanan, program-program baru(perbaikan) selalu
  dikeluarkan. Sebelum anda menghubungkan mesin anda ke jaringan, adalah
  ide yang baik untuk memeriksa site ftp distribusi anda (sebagai contoh
  ftp.redhat.com) dan memperoleh seluruh paket yang diperbaharui sejak
  anda menerima CDROM distribusi anda. Seringkali paket-paket ini
  berisikan perbaikan keamanan yang penting, sehingga merupakan ide yang
  baik untuk menginstal mereka.


  10.  Apa yang Harus Dilakukan Ketika dan Setelah Break-In

  Jadi anda telah mengikuti beberapa nasehat di sini (atau di tempat
  lain) dan telah mendeteksi breakin? Hal pertama yang harus dilakukan
  adalah tetap tenang. Tindakan yang ceroboh akan mengakibatkan kerugian
  yang lebih daripada yang dapat dilakukan penyerang.


  10.1.  Usaha penggangguan sedang berlangsung

  Menemukan gangguan keamanan yang sedang berlangsung dapat menjadi
  pekerjaan yang berat. Bagaimana anda bereaksi dapat memberi
  konsekuensi besar.

  Jika gangguan yang anda lihat adalah fisik, ganjil bila anda menemukan
  seseorang yang telah masuk ke rumah anda, kantor atau lab. Anda perlu
  memberitahu otoritas lokal anda. Dalam setting lab anda mungkin
  menemukan seseorang berusaha membuka case atau mereboot mesin.
  Tergantung pada otoritas dan prosedur lokal, anda mungkin meminta
  mereka untuk berhenti, atau hubungi orang-orang keamanan lokal anda.

  Jika anda mendeteksi pemakai lokal berusaha mengganggu keamanan anda,
  hal pertama yang dilakukan adalah memastikan mereka adalah siapa yang
  anda pikirkan. Periksa site darimana mereka login. Apakah itu site
  yang biasa tempat mereka masuk? Kemudian gunakan media non elektronik
  untuk berhubungan. Sebagai contoh, telpon mereka atau kunjungi
  kantor/rumah mereka dan berbicara kepada mereka. Jika mereka yakin
  mereka memang masuk, anda dapat meminta mereka menjelaskan apa yang
  mereka lakukan atau minta mereka untuk menghentikan hal tersebut. Jika
  mereka tidak masuk, dan tidak tahu apa yang anda bicarakan, insiden
  ini tidak memerlukan investigasi lebih lanjut. Lihat insiden-insiden
  semacam ini, dan ambillah banyak informasi sebelum melakukan tuduhan.
  Jika anda mendeteksi gangguan jaringan, hal pertama yang harus
  dilakukan (jika anda mampu) adalah memutuskan jaringan anda. Jika
  mereka terhubung melalui modem, putuskan kabel modem, jika mereka
  terhubung melalui ethernet, putuskan kabel ethernet. Hal ini akan
  mencegah mereka melakukan kerusakan yang lebih parah, dan mereka
  mungkin akan melihatnya sebagai masalah jaringan daripada deteksi.

  Jika anda tidak mampu memutuskan jaringan (jika anda memiliki site
  yang sibuk, atau tidak memiliki kendali fisik atas mesin anda),
  langkah terbaik berikutnya adalah menggunakan sesuatu seperti
  tcp_wrappers atau ipfwadm untuk menolak akses dari site penyusup.

  Jika anda tidak dapat menolak seluruh orang dari site yang sama dengan
  penyusup, anda dapat mengunci rekening pemakai. Perhatikan bahwa
  mengunci rekening bukanlah hal yang mudah. Anda harus mengingat file
  .rhosts, akses FTP, dan host backdoor).

  Setelah anda selesai melakukan salah satu langkah di atas (memutuskan
  jaringan, menolak akses dari site mereka, dan/atau meniadakan rekening
  mereka), anda butuh membunuh seluruh proses pemakai mereka dan
  mencatat mereka.

  Anda perlu memonitor site anda dengan baik untuk beberapa menit
  selanjutnya, karena penyerang akan berusaha dan masuk kembali. Mungkin
  dengan menggunakan rekening yang berbeda, dan/atau dari alamat
  jaringan yang berbeda.


  10.2.  Gangguan Keamanan sudah terjadi

  Jadi anda telah mendeteksi gangguan yang telah terjadi atau anda telah
  mendeteksinya dan mengunci (mudah-mudahan) penyerang dari sistem anda.
  Lalu apa?


  10.2.1.  Menutup Lubang

  Jika anda mampu menentukan cara apa yang digunakan penyerang untuk
  masuk ke sistem anda, anda perlu berusaha dan menutup lubang itu.
  Sebagai contoh, mungkin anda melihat beberapa masukan FTP sebelum
  pemakai login. Tiadakan pelayanan FTP dan periksa dan lihat jika ada
  versi perbaikan atau daftar perbaikan.

  Periksa seluruh log file anda, dan kunjungi list dan halaman keamanan
  anda dan lihat apakah ada eksploitasi umum baru yang dapat anda
  perbaiki. Anda dapat menemukan perbaikan keamanan Caldera di
  http://www.caldera.com/tech-ref/security. Red Hat belum memisahkan
  perbaikan keamanan dengan perbaikan bug, tetapi errata distribusi
  tersedia di http://www.redhat.com/errata. Tampaknya bila satu vendor
  mengeluarkan perbaikan keamanan, maka vendor Linux lainnya juga akan
  melakukan hal yang sama.

  Jika anda tidak mengunci penyerang, mereka cenderung akan kembali.
  Tidak hanya ke mesin anda, tetapi kembali ke suatu tempat di jaringan
  anda. Jika mereka menjalankan paket sniffer, mereka akan memiliki
  akses ke mesin lainnya.


  10.2.2.  Memperkirakan Kerusakan

  Hal pertama adalah memperkirakan kerusakan. Apa yang telah diganggu?
  Jika anda menjalankan Integrity Checker seperti Tripwire anda dapat
  membuat tripwire berjalan dan memberitahu anda. Jika tidak, anda harus
  melihat seluruh data penting anda.


  Oleh karena sistem Linux menjadi semakin mudah diinstal, anda perlu
  mempertimbangkan menyimpan file config anda dan kemudian menghapus
  seluruh disk dan melakukan instal ulang, kemudian mengembalikan file-
  file pemakai dari backup dan config anda. Hal ini akan memastikan
  bahwa anda memiliki sistem yang bersih. Jika anda memiliki file backup
  dari sistem yang terganggu, hati-hati terhadap biner yang anda
  kembalikan karena mungkin itu adalah kuda troya yang ditempatkan oleh
  penyusup.


  10.2.3.  Backup, Backup, Backup

  Memiliki backup reguler adalah tindakan keamanan yang baik. Jika
  sistem anda diganggu, anda dapat mengembalikan data yang dibutuhkan
  dari backup. Tentu saja beberapa data bernilai bagi penyerang juga,
  dan mereka tidak hanya menghancurkannya, mereka juga mencurinya dan
  menyalinnya, tetapi paling tidak anda masih memiliki data.

  Anda perlu memeriksa beberapa backup masa lampau sebelum mengembalikan
  suatu file yang telah terganggu. Penyusup mungkin telah mengganggu
  file anda dahulu, dan anda dapat membuat banyak backup yang berhasil
  untuk file terganggu!!!

  Tentu saja, ada keprihatinan keamanan dengan backup. Pastikan anda
  menyimpannya di tempat yang aman. Mengetahui siapa yang mengakses
  mereka. (Jika penyerang dapat memperoleh backup anda, mereka dapat
  memiliki akses ke seluruh data anda tanpa pernah anda ketahui).


  10.2.4.  Melacak Penyusup

  OK, anda telah mengunci penyusup, dan mengembalikan sistem anda,
  tetapi anda belum selesai. Meskipun kebanyakan penyusup sangat jarang
  akan ditangkap, anda perlu melaporkan serangan.

  Anda perlu melaporkan serangan ke kontak admin di site di mana
  penyerang menyerang sistem anda. Anda dapat melihat kontak ini melalui
  "whois" atau database internic. Anda mungkin mengirimi mereka email
  dengan seluruh catatan log. Jika anda menjumpai sesuatu yang berbeda
  tentang penyusup anda, anda mungkin menyebutkannya juga. Setelah
  mengirimkan email, anda perlu (jika anda begitu ingin) menindaklanjuti
  dengan telpon. Jika admin tersebut menemukan penyerang anda, mereka
  mungkin dapat berbicara dengan admin site darimana mereka berasal dan
  seterusnya.

  Hacker yang baik selalu menggunakan sistem perantara. Beberapa (atau
  banyak) di antaranya bahkan tidak tahu bahwa mereka telah diganggu.
  Berusaha melacak cracker ke sistem home mereka dapat menjadi sulit.
  Bersikap sopan dengan admin yang anda ajak bicara akan memudahkan
  mendapat bantuan dari mereka.

  Anda perlu juga memberitahu organisasi keamanan dengan anda sebagai
  bagiannya (CERT atau yang serupa).


  11.  Sumber-sumber Keamanan

  Terdapat banyak site bagus bagi keamanan UNIX secara umum dan keamanan
  Linux secara khusus. Sangat penting berlangganan ke satu (atau lebih)
  milis keamanan dan terus mengikuti perbaikan-perbaikan keamanan.
  Kebanyakan list ini bervolume sangat rendah, dan sangat informatif.





  11.1.  Site FTP

  CERT adalah Computer Emergency Response Team. Mereka sering
  mengirimkan peringatan serangan-serangan dan perbaikan terkini.
  cert.org

  Replay memiliki arsip banyak program keamanan. Karena mereka berada di
  luar AS, mereka tidak perlu mematuhi pembatasan kripto AS. replay.com

  Matt Blaze adalah penulis CFS dan penasihat keamanan yang hebat.
  Barang-barang Matt Blaze's ftp://ftp.research.att.com/dist/mab

  ftp.win.tue.nl adalah ftp site keamanan yang hebat terdapat di
  Belanda.


  11.2.  Site Web

  FAQ Hacker adalah FAQ tentang hacker.

  Arsip COAST memiliki banyak program keamanan UNIX dan informasi.

  Rootshell.com adalah site bagus untuk melihat apa eksploitasi yang
  sedang digunakan oleh cracker.

  BUGTRAQ menaruh nasihat pada isu-isu keamanan.

  CERT, Computer Emergency Response Team, menaruh nasihat-nasihat atas
  serangan umum pada platform UNIX.

  Dan Farmer adalah penulis SATAN dan banyak alat keamanan lain, home
  sitenya memiliki informasi survei keamanan dan juga alat keamanan.

  Linux security WWW adalah site yang baik untuk informasi keamanan
  Linux.

  Reptile memiliki banyak informasi keamanan Linux pada sitenya.

  Infilsec memiliki mesin kerentanan yang dapat memberitahu anda
  kerentanan apa yang mempengaruhi platform tertentu.

  CIAC mengirim buletin keamanan periodik mengenai eksploitasi umum.

  Titik awal baik untuk Linux Pluggable Authentication Module dapat
  ditemukan di http://www.kernel.org/pub/linux/libs/pam.


  11.3.  Milis

  Bugtraq: untuk berlangganan ke bugtraq, kirim surat ke
  listserv@netspace.org berisi pesan subscribe bugtraq. (lihat link di
  atas untuk arsip).

  CIAC: kirim email ke majordomo@tholia.llnl.gov. Dalam tubuh surat
  (bukan subyek) taruh : subscribe ciac-bulletin


  11.4.  Buku - Materi Bacaan Tercetak.

  Terdapat sejumlah buku keamanan yang bagus. Bagian ini akan
  mendaftarkan beberapa. Sebagai tambahan ke buku keamanan tertentu,
  keamanan dicakup pula dalam sejumlah buku lain mengenai administrasi
  sistem.



    Building Internet Firewalls oleh D. Brent Chapman & Elizabeth D. Zwicky
    Edisi Pertama September 1995
    ISBN: 1-56592-124-0

    Practical UNIX & Internet Security, Edisi kedua oleh Simson Garfinkel &
    Gene Spafford
    Edisi Kedua April 1996
    ISBN: 1-56592-148-8

    Computer Security Basics oleh Deborah Russell & G.T. Gangemi, Sr.
    Edisi Pertama Juli 1991
    ISBN: 0-937175-71-4

    Linux Network Administrator's Guide oleh Olaf Kirch
    Edisi Pertama Januari 1995
    ISBN: 1-56592-087-2

    PGP: Pretty Good Privacy oleh Simson Garfinkel
    Edisi Pertama Desember 1994
    ISBN: 1-56592-098-8

    Computer Crime A Crimefighter's Handbook oleh David Icove, Karl Seger &
    William VonStorch (Consulting Editor Eugene H. Spafford)
    Edisi Pertama Agustus 1995
    ISBN: 1-56592-086-4





  12.  Daftar Istilah


  o  Host: Suatu sistem komputer yang terhubung ke suatu jaringan

  o  Firewall: Sebuah komponen atau seperangkat komponen yang membatasi
     akses antara jaringan terlindungi dan Internet, atau antara
     beberapa jaringan lain.

  o  Bastion Host: Suatu sistem komputer yang harus diamankan dengan
     baik karena rentan untuk diserang, biasanya karena ia diekspos ke
     Internet dan merupakan titik utama hubungan pemakai jaringan
     internal. Ia memperoleh namanya dari proyek penguatan dinding luar
     benteng jaman dahulu. Bastion melihat area kritis pertahanan,
     biasanya memiliki dinding yang kuat, ruang untuk pasukan tambahan,
     dan bak tempat minyak panas untuk menghambat penyerang.

  o  Dual-homed Host: Sistem komputer serba guna yang paling tidak
     memiliki dua antar muka jaringan.

  o  Packet: Unit dasar komunikasi di Internet.

  o  Packet Filtering: Aksi yang dilakukan device untuk secara selektif
     mengendalikan aliran data dari dan ke jaringan. Packet filter
     membolehkan atau memblok paket, biasanya ketika meroute mereka dari
     satu jaringan ke jaringan lain (kebanyakan Internet ke jaringan
     internal, dan sebaliknya). Dengan memasang packet filtering, anda
     mensetup seperangkat aturan yang menspesifikasikan tipe paket (dari
     atau ke alamat IP atau port tertentu) yang dibolehkan dan tipe apa
     yang diblok.

  o  Perimeter network: Jaringan yang ditambahkan antara jaringan
     terlindung dan jaringan eksternal, dalam rangka memberikan layer
     tambahan keamanan. Jaringan perimeter kadang disebut DMZ.


  o  Proxy server: Suatu program yang berkaitan dengan server eksternal
     atas nama clien internal. Klien proxy berbicara ke server proxy,
     yang merelay permintaan klien yang disetujui ke server sebenarnya,
     dan merelay jawaban ke klien.

  o  Denial of Service: Serangan denial of service adalah ketika
     penyerang menghabiskan seluruh sumber daya komputer anda untuk hal-
     hal yang tidak ditujukan untuk dikerjakan, karena itu mencegah
     pemakaian normal sumber daya jaringan anda untuk tujuan yang sah.

  o  Buffer Overflow: Gaya pengkodean umum adalah tidak pernah
     mengalokasikan buffer "cukup besar" dan tidak memeriksa overflow.
     Ketika buffer tersebut overflow, program yang mengeksekusi (daemon
     atau set-uid) dapat ditipu untuk melakukan hal lain. Secara umum
     ini bekerja dengan menulisi alamat kembalian suatu fungsi di stack
     untuk menunjuk ke lokasi lain.

  o  IP Spoofing: IP-Spoofing adalah serangan teknis yang rumit yant
     terdiri dari beberapa komponen. Ini adalah eksploitasi keamanan
     yang bekerja dengan menipu komputer dalam hubungan kepercayaan
     bahwa anda adalah orang lain. Terdapat banyak makalah ditulis oleh
     daemon9, route, dan infinity di Volume Seven, Issue Fourty-Eight
     majalah Phrack.

  o  Authentication: Sifat mengetahui bahwa data yang diterima adalah
     sama dengan data yang dikirim dan bahwa pengirim yang mengklaim
     adalah benar-benar pengirim sebenarnya.

  o  Non-repudiation: Sifat bahwa penerima mampu membuktikan bahwa
     pengirim data benar-benar mengirim data bahkan bilamana pengirim
     kemudian berusaha menyangkal pernah mengirim data tersebut.


  13.  Pertanyaan-pertanyaan Yang Sering Diajukan


  1. Apakah lebih aman mengkompilasi dukungan driver secara langsung ke
     dalam kernel, daripada membuatnya jadi modul?

     Jawab: Beberapa orang berpikir bahwa lebih baik untuk meniadakan
     kemampuan untuk meload device driver menggunakan modul, karena
     penyusup dapat memuat modul troya atau memuat modul yang dapat
     mempengaruhi keamanan sistem.

     Namun demikian, dalam rangka memuat modul, anda perlu menjadi root.
     File obyek modul juga hanya dapat ditulis oleh root. Artinya
     penyusup perlu akses root untuk menyisipkan modul. Jika penyusup
     memperoleh akses root, terdapat hal-hal yang lebih serius yang
     perlu dikhawatirkan daripada apakah ia akan memuat modul.

     Modul adalah untuk dukungan pemuatan secara dinamis untuk device
     tertentu yang mungkin jarang digunakan. Pada mesin server, atau
     firewall sebagai contoh, ini sangat jarang terjadi. Oleh karena
     alasan ini, akan lebih masuk akal untuk mengkompilasi dukungan
     secara langsung ke kernel untuk mesin yang berfungsi sebagai
     server. Modul juga lebih lambat daripada dukungan yang dikompilasi
     secara langsung dalam kernel.

  2. Log in sebagai root dari mesin remote selalu gagal.  Jawab: Lihat
     bagian keamanan root. Hal ini dilakukan dengan sengaja untuk
     mencegah pemakai remote berusaha berhubungan melalui telnet ke
     mesin anda sebagai root, yang merupakan kerentanan keamanan yang
     serius. Jangan lupa, penyusup potensial memiliki waktu di pihaknya,
     dan dapat menjalankan program otomatis untuk menemukan password
     anda.

  3. Bagaimana saya mengadakan shadow password di sistem Linux Red Hat
     4.2 atau 5.0 saya ?  Jawab: Shadow password adalah mekanisme
     penyimpanan password anda dalam file selain file /etc/passwd. Hal
     ini memiliki beberapa keunggulan. Yang pertama adalah file shadow,
     /etc/shadow, hanya dapat dibaca oleh root, tidak seperti
     /etc/passwd, yang harus dapat dibaca oleh setiap orang. Keunggulan
     lain adalah sebagai administrator, anda dapat mengadakan atau
     meniadakan rekening tanpa setiap orang mengetahui status rekening
     pemakai lain.

     File /etc/passwd kemudian digunakan untuk mengembalikan name
     pemakai dan grup, digunakan oleh program seperti '/bin/ls' untuk
     memetakan ID pemakai ke username yang sesuai dalam listing
     direktori.

     File /etc/shadow kemudian hanya berisi username dan passwordnya,
     dan mungkin informasi akuntansi, seperti kapan rekening kadaluarsa,
     dsb.

     Untuk memasang shadow password, jalankan 'pwconv' sebagai root, dan
     /etc/shadow perlu ada, dan digunakan oleh aplikasi. Karena anda
     menggunakan RH 4.2 atau selanjutnya, modul PAM secara otomatis
     mengadaptasi perubahan dari /etc/passwd normal ke shadow password
     tanpa perubahan lain.

     Karena anda tertarik pada pengamanan password anda, mungkin anda
     juga tertarik untuk membuat password yang baik sebagai awal. Untuk
     hal ini anda dapat menggunakan modul 'pam_cracklib', yang merupakan
     bagian PAM. Ia membandingkan pustaka Crack dengan password anda
     untuk membantu anda memutuskan bila ia terlalu mudah diterka oleh
     program pemecah password.

  4. Bagaimana saya mengadakan ekstensi Apache SSL?

     Jawab:

     a. Ambil SSLeay 0.8.0 atau selanjutnya dari
        ftp://ftp.psy.uq.oz.au/pub/Crypto/SSL

     b. Bangun, coba dan instalah!

     c. Ambil sumber Apache 1.2.5

     d. Ambil Apache SSLeay extensions dari

     e. Buka di dalam direktori sumber apache-1.2.5 dan patch Apache
        sesuai README.

     f. Konfigurasi dan bangunlah.

     Anda mungkin juga ingin mencoba Replay Associates yang memiliki
     banyak paket sudah dibangun, dan terletak di luar Amerika Serikat.


  5. Bagaimana saya memanipulasi rekening pemakai, dan masih
     mempertahankan keamanan ?  Jawab: Distribusi Red Hat, terutama RH
     5.0, berisi sejumlah tool bagus untuk merubah properti rekening
     pemakai.

  o  Program pwconv dan unpwconv dapat digunakan untuk mengkonversi dan
     mengkonversi balik antara password shadow dan non-shadowed

  o  Program pwck dan grpck dapat digunakan untuk memverifikasi
     organisasi file passwd dan grup yang tepat.


  o  Program useradd, usermod, dan userdel dapat digunakan untuk
     menambah, menghapus dan mengubah rekening pemakai. Program
     groupadd, groupmod, dan groupdel akan melakukan hal yang sama untuk
     grup.

  o  Password grup dapat dibuat dengan gpasswd.


     Seluruh program ini 'shadow-aware' -- yaitu; jika anda mengadakan
     shadow ia akan menggunakan /etc/shadow untuk informasi password,
     sebaliknya ia tidak akan.

     Lihat man page yang sesuai untuk informasi lebih lanjut.

  6. Bagaimana saya memproteksi dengan password dokumen HTML tertentu
     menggunakan Apache?  Saya bertaruh anda tidak tahu tentang
     http://www.apacheweek.org bukan ?

     Anda dapat menemukan informasi tentang User Authentication di
     http://www.apacheweek.com/features/userauth juga tip keamanan
     server web lainnya dari
     http://www.apache.org/docs/misc/security_tips.html


  14.  Kesimpulan

  Dengan berlangganan milis peringatan keamanan, dan selalu mengikuti
  perkembangan, anda dapat melakukan banyak hal untuk mengamankan mesin
  anda. Jika anda memperhatikan file-file log anda dan menjalankan
  sesuatu seperti tripwire secara rutin, anda dapat melakukan yang lebih
  jauh lagi.

  Tingkat keamanan komputer yang cukup tidak sulit dipelihara untuk
  mesin rumahan. Upaya lebih banyak dibutuhkan oleh mesin bisnis, tetapi
  Linux dapat menjadi platform yang aman. Oleh karena sifat pengembangan
  Linux, perbaikan keamanan sering dikeluarkan lebih cepat daripada pada
  sistem operasi komersil, membuat Linux platform yang ideal ketika
  keamanan menjadi suatu persyaratan.


  15.  Terima Kasih Kepada

  Informasi di sini dikumpulkan dari berbagai sumber. Terima kasih
  kepada yang telah berkontribusi baik secara langsung maupun tidak
  langsung:


              Rob Riggs <rob@DevilsThumb.com>
              S. Coffin <scoffin@netcom.com>
              Viktor Przebinda <viktor@CRYSTAL.MATH.ou.edu>
              Roelof Osinga <roelof@eboa.com>
              Kyle Hasselbacher <kyle@carefree.quux.soltec.net>
              "David S. Jackson" <dsj@dsj.net>
              "Todd G. Ruskell" <ruskell@boulder.nist.gov>
              Rogier Wolff <R.E.Wolff@BitWizard.nl>





  16.  Catatan Penerjemah

  Diterjemahkan oleh Tedi Heriyanto

  Tanggal 29 Maret 1999.

  Kritik, saran atau komentar mengenai terjemahan ini, silakan kirimkan
  ke email saya.