Pages

Subscribe:

Thursday, September 18, 2008


Jaringan nirkabel adalah hal yang relatif baru pada dunia komputer, namun banyak orang yang mulai meliriknya dengan membeli laptop dan menginginkan jaringan berjalann, tanpa harus bermain dengan kabel silang lama. Tren ini tidak akan surut. Sayangnya, jaringan nirkabel belumlah didukung sekuat jaringan kabel tradisional di Linux.

Terdapat tiga langkah dasar untuk mengkonfigurasi sebuah kartu Ethernet nirkabel 802.11:

  1. Dukungan perangkat keras untuk kartu nirkabel

  2. Mengkonfigurasi kartu untuk terhubung ke sebuah titik akses nirkabel

  3. Mengkonfigurasi jaringan

Dukungan Perangkat Keras

Dukungan perangkat keras untuk kartu nirkabel disediakan melalui kernel, baik dari sebuah modul atau disertakan pada kernel. Secara umum, sebagian besar kartu Ethernet baru disediakan melalui modul kernel, sehingga Anda harus menentukan nama modul kernel yang benar dan memuatnya melalui /etc/rc.d/rc.modules. netconfig mungkin tidak mendeteksi kartu jaringan Anda, sehingga Anda harus menentukan kartu Anda sendiri. Lihat http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/ untuk informasi lebih banyak tentang driver kernel untuk berbagai kartu nirkabel.

Mengkonfigurasi Setting Nirkabel

Sebagian besar dari pekerjaan ini dikerjakan oleh iwconfig, sehingga seperti biasa bacalah halaman manual untuk iwconfig jika Anda membutuhkan informasi lebih banyak.

Pertama, Anda mungkin hendak mengkonfigurasi titik akses nirkabel Anda. Titik akses nirkabel cukup berbeda-beda dalam terminologinya, dan bagaimana mengkonfigurasinya, sehingga Anda perlu melakukan sedikit pengaturan untuk mengakomodasi perangkat keras Anda. Secara umum, setidaknya Anda membutuhkan informasi berikut:

  • ID domain, atau nama jaringan (disebut ESSID oleh iwconfig)

  • Kanal yang digunakan WAP

  • Setting enkripsi, termasuk kunci yang digunakan (disarankan dalam heksadesimal)

Peringatan

SEBUAH CATATAN TENTANG WEP. WEP cukup rawan, tetapi lebih baik daripada tidak sama sekali. Jika Anda menginginkan tingkat keamanan yang lebih baik pada jaringan nirkabel Anda, Anda harus menginvestigasi VPN atau IPSec, dimana keduanya diluar batasan dari dokumen ini. Anda mungkin juga mengkonfigurasi WAP Anda untuk tidak mengiklankan ID domain/ESSIDnya. Diskusi lebih dalam tentang aturan nirkabel diluar bahasan sub bagian ini, tetapi pencarian pada Google akan menghasilkan lebih dari yang Anda inginkan.

Setelah Anda mengumpulkan informasi diatas, dan mengasumsikan Anda telah menggunakan modprobe untuk memuat driver kernel yang sesuai, Anda bisa mengedit rc.wireless.conf dan menambahkan setting Anda. Berkas rc.wireless.conf agak tidak teratur. Usaha minimal yang bisa dilakukan adalah untuk memodifikasi bagian generik dengan ESSID dan KEY Anda, dan CHANNEL jika diperlukan oleh kartu Anda. (Coba untuk tidak melakukan setting CHANNEL, dan jika berjalan, bagus; jika tidak, setting CHANNEL sebagaimana diperlukan.) Jika Anda nekad, Anda bisa memodifikasi berkas sehingga hanya variabel yang diperlukan yang ditentukan. Nama variabel pada rc.wireless.conf berkorespondensi dengan parameter iwconfig, dan dibaca oleh rc.wireless dan digunakan pada perintah iwconfig.

Jika Anda memiliki kunci Anda pada heksadesimal, maka itulah idealnya, karena Anda bisa cukup yakin bahwa WAP Anda dan iwconfig akan setuju tentang kunci. Jika Anda hanya memiliki sebuah string, Anda tidak bisa yakin bagaimana WAP Anda akan menterjemahkannya kedalam kunci heksadesimal, sehingga beberapa usaha perlu dilakukan (atau dapatkan kunci WAP Anda dalam heksa).

Setelah Anda memodifikasi rc.wireless.conf, jalankan rc.wireless sebagai root, lalu jalankan rc.inet1, lagi-lagi sebagai root. Anda bisa menguji jaringan nirkabel Anda dengan perangkat pengujian standar seperti ping, bersamaan dengan iwconfig. Jika Anda memiliki antarmuka kabel, Anda juga bisa mencoba menggunakan ifconfig untuk menonaktifkan antarmuka tersebut selama Anda menguji jaringan nirkabel Anda untuk memastikan tidak ada interferensi. Anda juga bisa mencoba perubahan Anda melalui sebuah reboot.

Sekarang setelah Anda melihat bagaimana mengedit /etc/rc.d/rc.wireless untuk jaringan default Anda, mari kita lihat lebih dekat pada iwconfig dan melihat bagaimana semuanya bekerja. Hal ini akan mengajarkan Anda cara mudah untuk melakukan setting wifi ketika Anda berada pada warung Internet, toko kopi, atau hot spot wifi lainnya dan hendak online.

Langkah pertama adalah memberitahu kepada NIC nirkabel Anda tentang jaringan yang hendak dipakai. Pastikan Anda mengganti “eth0” dengan sembarang antarmuka jaringan nirkabel Anda dan ganti “mynetwork” dengan ESSID yang hendak Anda gunakan. Ya, kami tahu Anda lebih pintar dari itu. Berikutnya, Anda harus menentukan kunci enkripsi (jika ada) yang digunakan pada jaringan nirkabel Anda. Akhirnya tentukan channel yang digunakan (jika diperlukan).

# iwconfig eth0 essid "mynetwork"
# iwconfig eth0 key XXXXXXXXXXXXXXXXXXXXXXXXXXX
# iwconfig eth0 channel n

Itu seharusnya menjadi akhir dari nirkabel.

Sistem Berkas Jaringan

Pada titik ini, Anda seharusnya sudah memiliki koneksi TCP/IP yang bekerja pada jaringan Anda. Anda seharusnya sudah bisa melakukan ping kepada komputer lain pada jaringan internal Anda dan, jika Anda telah mengkonfigurasi sebuah gateway yang benar, Anda juga bisa melakukan ping pada komputer lain pada Internet. Seperti yang kita tahu, tujuan utama dalam menyambungkan sebuah komputer pada sebuah jaringan adalah untuk mengakses informasi. Sementara sebagian orang mungkin menghubungkan sebuah komputer pada sebuah jaringan hanya untuk bersenang-senang, sebagian besar orang berharap dapat berbagi berkas dan printer. Mereka berharap dapat menagkses dokumen pada Internet atau memainkan permainan online. Memiliki TCP/IP yang berfungsi pada sistem Slackware baru Anda adalah jalan menuju tujuan tersebut, tetapi jika hanya terinstall, fungionalitasnya akan sangat terbatas. Untuk berbagai berkas, kita harus mengirimnya dan menerimanya kembali menggunakan FTP atau SCP. Kita tidak bisa menjelajahi berkas-berkas pada komputer Slackware kita dari ikon Network Neighborhood atau My Network Places pada komputer Windows computers. Kita ingin agar bisa mengakses berkas pada komputer Unix lain sama seperti ini.

Idealnya, kita ingin agar dapat menggunakan sistem berkas jaringan untuk mengijinkan kita akses transparan pada berkas kita pada komputer lain. Program yang kita gunakan untuk berinteraksi dengan informais yang tersimpan pada komputer lain tidak harus mengerti pada komputer mana informasi tersebut disimpan; mereka hanya perlu mengetahui bahwa informasi itu ada dan bagaimana untuk mendapatkannya. Adalah tanggung jawab dari sistem operasi untuk mengelola akses pada berkas tersebut melalui sistem berkas yang ada dan sistem berkas jaringan. Dua sistem berkas jaringan yang paling umum digunakan adalah SMB (sebagaimana diimplementasi oleh Samba) dan NFS.

SMB/Samba/CIFS

SMB (untuk Server Message Block) adalah penerus dari protokol NetBIOS yang sebelumnya ada dan digunakan oleh IBM pada produk LAN Managernya. Microsoft cukup tertarik dengan NetBIOS dan penerusnya (NetBEUI, SMB dan CIFS). Proyek Samba telah ada sejak 1991, ketika proyek ini dibuat untuk menghubungkan PC IBM yang menjalankan NetBIOS dengan server Unix. Saat ini, SMB adalah metode yang disarankan untuk berbagi berkas dan layanan cetak pada sebuah jaringan untuk seluruh pengguna di seluruh dunia karena Windows mendukungnya.

Berkas konfigurasi Samba adalah /etc/samba/smb.conf; salah satu dari berkas konfigurasi yang paling penuh dengan catatan yang dapat Anda temukan. Contoh sudah disediakan untuk Anda lihat dan modifikasi sesuai kebutuhan Anda. Jika Anda membutuhkan kontrol yang lebih ketat, halaman manual dari smb.conf sangatlah berguna. Karena Samba terdokumentasi dengan baik, kami tidak akan menulis ulang dokumentasi tersebut disini. Kami akan membahas dasar-dasarnya.

smb.conf dibagi menjadi beberapa bagian: satu bagian per share, dan bagian global untuk opsi setting yang digunakan dimana-mana. Beberapa opsi hanya valid pada bagian global; beberapa hanya valid diluar bagian global. Harap diingat bahwa bagian global bisa ditimpa oleh bagian lain. Lihat halaman manual untuk informasi lebih lanjut.

Anda mungkin akan mengedit berkas smb.conf Anda untuk mencerminkan pengaturan jaringan pada LAN Anda. Saya menyarankan Anda memodifikasi beberapa hal yang tercetak dibawah ini:

[global]
# workgroup = Nama-Domain-NT atau Nama-Workgroup, Cth: LINUX2
workgroup = MYGROUP

Ganti nama workgroup untuk merefleksikan workgroup atau nama domain yang Anda gunakan secara lokal.

# server string is the equivalent of the NT Description field
server string = Samba Server

Ini adalah nama komputer Slackware Anda yang akan ditampilkan pada folder Network Neighborhood (atau My Network Places).

# Security mode. Most people will want user level security. See
# security_level.txt for details. NOTE: To get the behaviour of
# Samba-1.9.18, you'll need to use "security = share".
security = user

Anda sudah hampir pasti akan mengimplementasikan keamanan dengan level pengguna pada sistem Slackware Anda.

# You may wish to use password encryption. Please read
# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba
# documentation.
# Do not enable this option unless you have read those documents
encrypt passwords = yes

Jika enkripsi kata sandi tidak diaktifkan, Anda tidak akan bisa menggunakan Samba dengan NT4.0, Win2k, WinXP, dan Win2003. Sistem operasi Windows sebelumnya tidak memerlukan enkripsi untuk berbagi berkas.

SMB adalah protokol yang terauthentikasi, yang berarti Anda harus menyediakan nama pengguna dan kata sandi yang benar agar dapat menggunakan layanan ini. Kita memberitahu server samba nama pengguna dan kata sandi yang valid dengan perintah smbpasswd. smbpasswd menerima beberapa pilihan untuk memberitahukannya apakah menggunakan pengguna seperti biasa atau menambahkan pengguna komputer (SMB meminta Anda menambahkan nama NETBIOS komputer sebagai pengguna komputer, membatasi komputer mana yang dapat melakukan authentikasi).

Menambahkan seorang pengguna pada berkas /etc/samba/private/smbpasswd.
# smbpasswd -a user
Menambahkan nama komputer pada berkas /etc/samba/private/smbpasswd.
# smbpasswd -a -m machine

Sangatlah penting untuk dicatat bahwa nama pengguna atau nama komputer yang diberikan harus ada pada berkas /etc/passwd. Anda bisa melakukan hal ini dengan perintah adduser. Perhatikan ketika menggunakan perintah adduser untuk menambahkan nama komputer, seseorang harus menambahkan tanda dollar (“$”) pada nama komputer. Hal ini tidak however, dilakukan dengan smbpasswd. smbpasswd menambahkan tanda dollar dengan sendirinya. Kegagalan untuk memberikan nama komputer dengan adduser akan berakibat pada kesalahan ketika menambahkan nama komputer pada samba.

# adduser machine$ 

Network File System (NFS)

NFS (atau Network File System) pada awalnya dibuat oleh Sun untuk implementasi Solaris pada Unix. Meskipun lebih mudah untuk dikonfigurasi dibandingkan dengan SMB, namun jauh lebih tidak aman. Ketidak-amanan utama pada NFS adalah kemudahan untuk membuat tipuan ID pengguna dan grup dari satu komputer ke komputer lain. NFS adalah protokol yang tidak terauthentikasi. Versi masa depan dari protokol NFS sedang dibuat dan meningkatkan keamanan, tetapi tidaklah umum dipakai pada saat penulisan ini.

Konfigurasi NFS dikendalikan oleh berkas /etc/exports. Ketika Anda memuat berkas default /etc/exports pada sebuah editor, Anda akan melihat baris kosong dengan dua baris komentar pada bagian atas. Kita harus menambahkan sebuah baris pada berkas exports untuk setiap direktori yang hendak kita ekspor, dengan daftar workstation klien yang diijinkan untuk mengakses berkas. Sebagai contoh, jika kita ingin mengekspor direktori /home/foo pada workstation Bar, we kita cukup menambahkan baris:

/home/foo Bar(rw)

pada /etc/exports. Dibawah, Anda akan menemukan contoh dari halaman manual untuk berkas exports:

# sample /etc/exports file
/ master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
/pub (ro,insecure,all_squash)

Seperti yang Anda lihat, terdapat beberapa opsi yang berbeda, tetapi sebagian cukup jelas dari contoh ini.

NFS bekerja pada asumsi bahwa pengguna yang diberikan pada satu komputer pada sebuah jaringan memiliki ID pengguna yang sama pada semua komputer pada jaringan. Ketika sebuah percobaan untuk membaca atau menulis dilakukan dari klien NFS pada server NFS, sebuah UID dikirimkan sebagai bagian dari permintaan baca/tulis. UID ini dianggap sama jika permintaan baca/tulis dilakukan pada komputer lokal. Seperti yang Anda lihat, jika seseorang dapat menentukan UID ketika mengakses sumber daya pada sistem remote, Hal Buruk dapat dan akan terjadi. Sebagai solusi untuk mengatasi ini, setiap direktori di-mount dengan opsi root_squash. Opsi ini memetakan UID untuk setiap pengguna yang mengklaim sebagai root pada UID yang berbeda, sehingga mencegah akses root pada berkas atau folder pada direktori yang diekspor. root_squash tampaknya diaktifkan sebagai default sebagai usaha keamanan, tetapi penulis menyarankan untuk menyebutkannya pada berkas /etc/exports Anda.

Anda juga bisa mengekspor direktori secara langsung dari perintah baris pada server dengan menggunakan perintah exportfs seperti berikut:

# exportfs -o rw,no_root_squash Bar:/home/foo 

Baris ini mengekspor direktori /home/foo pada komputer “Bar” dan mengijinkan akses baca/tulis. Sebagai tambahan, server NFS tidak akan memanggil root_squash, yang berarti sembarang pengguna pada Bar dengan sebuah UID dari “0” (UID root) akan memiliki hak yang setara dengan root pada server. Sintaks tampaknya aneh (biasanya ketika sebuah direktori ditentukan pada sintaks computer:/direktori/berkas, Anda mengacu pada sebuah berkas pada direktori pada komputer yang diberikan).

Anda akan menemukan informasi lebih banyak pada halaman manual dari berkas exports.

Konfigurasi X

Sejak Slackware-10.0, Lingkungan X Window pada Slackware disediakan oleh Xorg. X bertanggung jawab untuk menyediakan antarmuka grafis. Aplikasi ini tidak tergantung dari sistem operasi, tidak seperti Windows atau MacOS.

Sistem X Window diimplementasikan melalui banyak program yang berjalan pada sisi pengguna. Dua komponen utama adalah server dan window manager. Server menyediakan fungsi tingkat rendah untuk berinterasi dengan perangkat keras video Anda, sehingga spesifik terhadap sistem tertentu. Window manager terletak diatas server dan menyediakan antarmuka. Keunggulannya adalah Anda bisa memiliki banyak antarmuka grafis dengan mengganti window manager yang Anda gunakan.

Mengkonfigurasi X bisa jadi tugas yang kompleks. Alasannya adalah banyaknya kartu grafis yang tersedia untuk arsitektur PC, yang sebagian besar menggunakan pemrograman antarmuka yang berbeda. Untungnya, sebagian besar kartu grafis sekarang ini mendukung standar video dasar yang dikenal dengan nama VESA, dan jika kartu Anda termasuk didalamnya, Anda bisa langsung menjalankan X menggunakan perintah startx.

Jika hal ini tidak bekerja untuk kartu Anda, atau jika Anda hendak mengambil keuntungan dari fitur performa tinggi dari kartu grafis Anda seperti akselerasi perangkat keras atau rendering perangkat keras secara 3D, maka Anda harus mengkonfigurasi X.

Untuk mengkonfigurasi X, Anda harus membuat berkas /etc/X11/xorg.conf. Berkas ini berisi banyak detail tentang perangkat keras video, mouse, dan monitor Anda. Berkas ini sangatlah kompleks, tetapi terdapat beberapa program untuk membantu Anda membuatnya. Kami akan menyebutkan sebagian dari program itu disini.

xorgconfig

Ini adalah antarmuka berbasis menu sederhana yang serupa dengan installer Slackware. Aplikasi ini akan meminta X server melihat kartu grafis, dan menentukan berkas konfigurasi awal yang paling bagus yang dapat dibuat berdasarkan informasi yang didapat. Berkas /etc/X11/xorg.conf yang dihasilkan merupakan langkah awal yang cukup bagus untuk sebagian besar sistem (dan seharusnya bekerja tanpa modifikasi apapun).

Ini adalah program konfigurasi X berbasis teks yang didesain untuk administator sistem yang lebih handal. Berikut adalah contoh langkah-langkah menggunakan xorgconfig. Pertama, jalankan program:

# xorgconfig 

Ini akan menampilkan layar yang penuh dengan informais tentang xorgconfig. Untuk melanjutkan, tekan ENTER. xorgconfig akan menanyakan apakah Anda telah menentukan PATH Anda dengan benar. Seharusnya sudah baik, jadi lanjutkan dan tekan ENTER.

Gambar xorgconfig Konfigurasi Mouse

xorgconfig

Pilih mouse Anda dari menu yang ditampilkan. Jika Anda tidak melihat mouse serial Anda pada daftar, pilihlah protokol Microsoft -- adalah yang paling sering dan mungkin akan jalan. Berikutnya xorgconfig akan bertanya tengan penggunaan ChordMiddle dan Emulate3Buttons. Anda akan menentukan opsi ini seperti yang dijelaskan pada layar. Gunakan jika tombol tengah pada mouse Anda tidak bekerja pada X, atau jika mouse Anda hanya memiliki dua tombol. Emulate3Buttons mengijinkan Anda mensimulasikan tombol tengah dengan menekan kedua tombol secara bersamaan. Lalu, masukkan nama perangkat mouse Anda. Pilihan default, /dev/mouse, seharusnya bekerja karena link dikonfigurasikan selama setup Slackware. Jika Anda menjalankan GPM (server mouse Linux) pada mode repeater, Anda bisa menentukan jenis mouse Anda pada /dev/gpmdata agar X mendapatkan informasi mouse melalui gpm. Pada beberapa kasus (dengan busmice terutama) hal ini bisa bekerja dengan lebih baik, tetapi sebagian besar pengguna tidak perlu melakukan hal ini.

xorgconfig akan menanyakan apakah Anda hendak mengaktifkan binding kunci khusus. Jika Anda memerlukan, jawab “y”. Sebagian besar pengguna bisa menjawab “n” -- masukkan ini jika Anda tidak yakin.

Gambar xorgconfig Horizontal Sync

xorgconfig

Pada bagian berikutnya Anda masukkan jangkauan sync untuk monitor Anda. Untuk memulai mengkonfigurasi monitor Anda, tekan ENTER. Anda akan melihat sebuah daftar jenis monitor -- pilih salah satu. Berhati-hatilah untuk tidak melebihi spesifikasi dari monitor Anda. Melakukan hal tersebut bisa merusak perangkat keras Anda.

Gambar xorgconfig Vertical Sync

xorgconfig

Menentukan jangkauan sync vertikal untuk monitor Anda (Anda seharusnya menemukan ini pada manual monitor). xorgconfig akan menanyakan Anda untuk memasukkan string untuk mengidentifikasi jenis monitor pada berkas xorg.conf. Masukkan apapun yang Anda inginkan pada 3 baris ini (termasuk kosong).

Gambar xorgconfig Kartu Grafis

xorgconfig

Sekarang Anda telah memiliki kesempatan untuk melihat basis data dari jenis kartu grafis. Anda mungkin perlu melakukan hal ini, jadi jawab “y”, dan pilih sebuah kartu dari daftar yang ditampilkan. Jika Anda tidak melihat kartu Anda, cobalah memilih yang menggunakan chipset yang sama dan mungkin akan berjalan dengan baik.

Berikutnya, beritahu xorgconfig seberapa banyak RAM yang Anda miliki pada kartu grafis Anda. xorgconfig meminta Anda untuk memasukkan lebih banyak teks deskripsi tentang kartu grafis Anda. Jika Anda ingin, Anda bisa memasukkan deskripsi pada tigas baris ini.

Anda akan ditanya resolusi tampilan apa yang hendak Anda gunakan. Lagi-lagi, menggunakan default yang disediakan sudahlah cukup untuk memulai. Selanjutnya, Anda bisa mengedit berkas /etc/X11/xorg.conf dan mengatur ulang mode sehingga 1024x768 (atau mode apapun yang Anda inginkan) adalah defaultnya.

Pada titik ini, program xorgconfig akan bertanya apakah Anda hendak menyimpan berkas konfigurasi aktual. Jawab ya (yes) dan berkas konfigurasi X akan disimpan, menyelesaikan proses setup. Anda bisa memulau X dengan perintah startx.

xorgsetup

Cara kedua untuk mengkonfigurasi X adalah dengan menggunakan xorgsetup, sebuah program konfigurasi otomatis yang datang pada Slackware.

Untuk menjalankan xorgsetup, login sebagai root dan ketikkan:

# xorgsetup 

Jika Anda telah memiliki sebuah berkas /etc/X11/xorg.conf (karena Anda telah pernah mengkonfigurasi X), Anda akan diminta konfirmasi apakah Anda hendak membuat cadangan berkas konfigurasi sebelum melanjutkan. Berkas asli akan diberi nama /etc/X11/xorg.conf.backup.

xinitrc

xinit(1) adalah program yang menjalankan x; program ini dipanggil oleh startx(1), sehingga Anda mungkin tidak menyadarinya (dan mungkin tidak perlu untuk menyadarinya). Berkas konfigurasinya menentukan program apa (termasuk dan terutama window manager) yang dijalankan ketika X dijalankan. xinit pertama-tama menguji direktori home Anda untuk sebuah berkas .xinitrc. Jika berkas ditemukan, maka akan dijalankan; jika tidak, /var/X11R6/lib/xinit/xinitrc (default sistem) akan digunakan. Berikut adalah contoh dari berkas xinitrc:

#!/bin/sh
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi

if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi

if [ -f $userresources ]; then
xrdb -merge $userresources
fi

if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi

# start some nice programs

twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

Semua blok “if” disebutkan disana untuk digabung pada beberapa setting konfigurasi dari berkas-berkas lain. Bagian yang menarik dari berkas tersebut adalah bagian akhir dari file, dimana beberapa program dijalankan. Sesi X akan dimulai dengan twm(1) window manager, sebuah jam, dan tiga terminal. Perhatikan bahwa exec sebelum xterm terakhir. Apa yang dilakukannya adalah mengganti shell yang saat ini dijalankan (yang menjalankan script xinitrc) dengan perintah xterm(1). Ketika pengguna keluar dari xterm, Sesi X akan berakhir.

Untuk mengkustomisasi X Anda, salin berkas default /var/X11R6/lib/xinit/xinitrc ke ~/.xinitrc dan editlah, mengganti program tersebut dengan apa yang Anda inginkan. Akhir dari milik saya seperti ini:

# Start the window manager:
exec startkde

Perhatikan bahwa terdapat beberapa berkas xinitrc.* pada /var/X11R6/lib/xinit yang berkoresponden pada berbagai window manager dan GUI. Anda bisa menggunakan sembarang, jika Anda suka.

xwmconfig

Selama bertahun-tahun, Unix digunakan secara eksklusif sebagai sistem operasi untuk server, dengan pengecualian untuk workstation yang bertenaga. Hanya beberapa orang teknis yang mau menggunakan sistem operasi berbasis-Unix, dan antarmukanya merefleksikan fakta ini. GUI tampak lebih kosong, didesain untuk menjalankan beberapa aplikasi grafis yang diperlukan seperti program CAD dan pemodelan gambar. Sebagian besar berkas dan manajemen sistem dilakukan pada perintah baris. Berbagai vendor (Sun Microsystems, Silicon Graphics, dll) menjual workstation dengan sebuah usaha untuk menyediakan “tampilan” yang menawan, tetap berbagai alat GUI yang digunakan oleh para pengembang mengakibatkan pada masalah keseragaman desktop. Sebuah scrollbar mungkin tidak tampak sama pada dua aplikasi yang berbeda. Menu mungkin tampak berbeda pada tempat yang berbeda. Program-program memiliki tombol dan checkbox yang berbeda. Jangkauan warna yang berbeda dan biasanya ditulis secara hard-code pada setiap alat pemrograman. Selama para pengguna adalah para teknisi profesional, ini bukanlah masalah.

Dengan keberadaan sistem operasi berbasis-Unix yang gratis dan sejumlah aplikasi grafis, X telah mendapatkan sebuah basis pengguna desktop yang cukup besar. Sebagian besar pengguna, tentu saja, terbiasa dengan tampilan yang konsisten yang disediakan oleh Microsoft Windows atau MacOS dari Apple; kurangnya konsistensi pada aplikasi berbasis X menjadi sebuah halangan untuk penerimaan pengguna yang lebih besar. Sebagai tanggapan akan hal tersebut, dua proyek open source telah melakukannya. K Desktop Environment, atau KDE, dan GNU Network Object Model Environment, yang dikenal dengan GNOME. Setiap proyek memiliki variasi aplikasi yang luas, mulai dari taskbars dan manajer berkas hingga permainan dan perangkat perkantoran, ditulis dengan toolkit GUI yang sama dan terintegrasi secara penuh untuk menyediakan sebuah desktop yang konsisten dan seragam.

Perbedaan antara KDE dan GNOME secara umum sangatlah mendasar. Keduanya tampak berbeda, karena setiap proyek menggunakan toolkit GUI yang berbeda. KDE berbasis pada pustaka Qt dari Troll Tech AS, sementara GNOME menggunakan GTK, sebuah toolkit yang dibuat untuk program GNU Image Manipulation Program (GIMP). Sebagai proyek yang terpisah, KDE dan GNOME memiliki pemrogram dan desainernya masing-masing, dengan gaya pengembangan dan filosofi yang berbeda. Hasilnya, secara mendasar adalah sama: sebuah lingkungan desktop dan koleksi aplikasi yang terintegrasi dan konsisten. Fungsionalitas, usabilitas, dan kecantikan dari KDE dan GNOME bersaing dengan apapun yang ada pada sistem operasi lain.

Bagian terbagus adalah kedua desktop canggih ini gratis. Ini berarti Anda bisa mendapatkan salah satunya atau keduanya (ya, pada waktu yang bersamaan). Pilihan ada ditangan Anda.

Sebagai tambahan dari desktop GNOME dan KDE, Slackware menyertakan banyak koleksi window manager. Beberapa didesain untuk mensimulasikan sistem operasi lain, sebagain untuk kustomisasi, dan sisanya untuk kecepatan. Terdapat beberapa variasi. Tentu saja Anda bisa menginstall sebanyak yang Anda inginkan, bermain dengan mereka semua, dan menentukan mana yang menjadi pilihan Anda.

Untuk mempermudah pemilihan desktop, Slackware juga menyertakan sebuah program yang disebut xwmconfig yang dapat digunakan untuk memilih sebuah desktop atau window manager. Ia dijalankan seperti berikut:

% xwmconfig 

Gambar Konfigurasi desktop dengan xorgconfig

xwmconfig

Anda akan diberikan sebuah daftar semua desktop dan window manager yang terinstall. Cukup pilih yang Anda inginkan dari daftar tersebut. Setiap pengguna pada sistem Anda harus menjalankan program ini, karena pengguna yang berbeda dapat menggunakan desktop yang berbeda, dan tidak semua pengguna menginginkan pilihan yang Anda pilih saat installasi.

Lalu cukup jalankan X, dan Anda sudah siap.

xdm

Semenjak Linux menjadi sistem operasi desktop yang lebih berguna, banyak pengguna memilih agar mesin langsung boot ke lingkungan grafis. Untuk hal ini Anda harus memberitahukan kepada Slackware untuk boot secara langsung ke X, dan memanggil login manager grafis. Slackware hadir dengan tiga alat login grafis, xdm(1), kdm, dan gdm(1).

xdm adalah login manager grafis yang hadir dengan sistem X.org. Paket ini cukup lengkap, tetapi tidak secanggih alternatifnya. kdm adalah login manager grafis yang hadir dengan KDE, K Desktop Environment. Akhirnya, gdm adalah login manager yang hadir dengan GNOME. Sembarang pilihan memungkinkan Anda untuk login sebagai sembarang pengguna, dan memilih desktop apa yang hendak Anda gunakan.

Sayangnya, Slackware tidak menyertakan program seperti xwmconfig untuk memilih login manager yang hendak digunakan, sehingga jika ketiganya diinstall Anda harus melakukan sedikit pengeditan untuk memilih pilihan Anda. Tetapi sebelumnya, kita akan membahas bagaimana melakukan boot ke lingkungan grafis.

Agar dapat menjalankan X saat boot, Anda harus melakukan boot pada run-level 4. Run-level adalah cara untuk memberitahukan init(8) untuk melakukan sesuatu yang berbeda saat ia menjalankan sistem operasi. Kita melakukan hal ini dengan mengedit berkas konfigurasi untuk init, /etc/inittab.

# These are the default runlevels in Slackware:
# 0 = halt
# 1 = single user mode
# 2 = unused (but configured the same as runlevel 3)
# 3 = multiuser mode (default Slackware runlevel)
# 4 = X11 with KDM/GDM/XDM (session managers)
# 5 = unused (but configured the same as runlevel 3)
# 6 = reboot

# Default runlevel. (Do not set to 0 or 6)
id:3:initdefault:

Untuk membuat Slackware boot ke lingkungan grafis, kita cukup mengganti 3 menjadi 4.

  # Default runlevel. (Do not set to 0 or 6)
id:4:initdefault:

Sekarang Slackware akan boot pada runlevel 4 dan menjalankan /etc/rc.d/rc.4. Berkas ini menjalankan X dan memanggil login manager yang Anda pilih. Lalu, bagaimana kita memilih login manager? Terdapat beberapa cara untuk melakukannya, dan saya akan menjelaskannya setelah kita melihat rc.4.

  # Try to use GNOME's gdm session manager:
if [ -x /usr/bin/gdm ]; then
exec /usr/bin/gdm -nodaemon
fi

# Not there? OK, try to use KDE's kdm session manager:
if [ -x /opt/kde/bin/kdm ]; then
exec /opt/kde/bin/kdm -nodaemon
fi

# If all you have is XDM, I guess it will have to do:
if [ -x /usr/X11R6/bin/xdm ]; then
exec /usr/X11R6/bin/xdm -nodaemon
fi

Seperti yang Anda lihat disini, rc.4 pertama-tama menguji apakah gdm dapat dieksekusi, dan jika iya, dia akan menjalankannya. Pilihan kedua adalah kdm, dan akhirnya xdm. Satu cara untuk memilih login manager adalah dengan menghapus yang tidak hendak Anda gunakan menggunakan removepkg. Anda bisa mencari lebih banyak tentang removepkg pada Bab 18.

Cara lain, Anda bisa menghapus hak akses eksekusi pada berkas yang tidak Anda gunakan. Kita membahas chmod pada Bab 9.

# chmod -x /usr/bin/gdm 

Akhirnya, Anda juga bisa memberi komentar pada login manager yang tidak akan Anda gunakan.

  # Try to use GNOME's gdm session manager:
# if [ -x /usr/bin/gdm ]; then
# exec /usr/bin/gdm -nodaemon
# fi

# Not there? OK, try to use KDE's kdm session manager:
if [ -x /opt/kde/bin/kdm ]; then
exec /opt/kde/bin/kdm -nodaemon
fi

# If all you have is XDM, I guess it will have to do:
if [ -x /usr/X11R6/bin/xdm ]; then
exec /usr/X11R6/bin/xdm -nodaemon
fi

Sembarang baris yang diawali dengan tanda kres (#) dianggap sebuah komentar dan shell akan melewatinya. Sehingga, meskipun gdm sudah terinstall dan dapat dieksekusi, shell (dalam hal ini bash) tidak akan mengujinya.

Boot

Proses boot sistem Linux Anda seringkali mudah dan terkadang sulit. Banyak pengguna menginstall Slackware pada komputernya dan hanya itu. Mereka hanya menghidupkannya dan siap untuk digunakan. Pada waktu lain, hanya mem-boot mesin bisa menjadi pilihan. Untuk sebagian besar pengguna, LILO adalah yang terbaik. Slackware menyertakan LILO dan Loadlin untuk boot Slackware Linux. LILO akan bekerja dari partisi hard drive, boot record hard drive, atau disket, sehingga menjadikannya alat yang sangat serbaguna. Loadlin bekerja dari perintah baris DOS, mematikan DOS dan menjalankan Linux.

Utilitas lain yang populer untuk melakukan boot Linux adalah GRUB. GRUB tidak disertakan atau didukung secara penuh oleh Slackware. Slackware bertahan pada standar “mencoba dan benar” untuk apa yang disertakan pada distribusi. Meskipun GRUB bekerja dengan baik dan menyertakan beberapa fitur yang tidak ada pada LILO, LILO menangani semua tugas-tugas boot loader dengan lebih handal dan juga catatan sejarah yang lebih baik. Menjadi aplikasi yang lebih muda, GRUB belum hidup terlalu lama. Karena tidak disertakan pada Slackware, kami tidak mendiskusikannya disini. Jika Anda hendak menggunakan GRUB (mungkin ia hadir pada SO Linux lain dan jika Anda hendak menggunakannya untuk dual-boot) lihatlah dokumentasi GRUB.

Bagian ini membahas LILO dan Loadlin, dua aplikasi boot yang disertakan pada Slackware. Bagian ini juga membahas beberapa skenario dual boot dan bagaimana Anda melakukannya.

LILO

Linux Loader, atau LILO, adalah aplikasi boot yang paling populer pada sistem Linux. Aplikasi ini memiliki banyak konfigurasi dan bisa digunakan dengan mudah untuk boot sistem operasi lain.

Slackware Linux hadir dengan utilitas konfigurasi berbasis menu yang disebut liloconfig. Program ini dijalankan pertama kali selama proses setup, tetapi Anda bisa memanggilnya kemudian dengan mengetikkan liloconfig pada prompt.

LILO membaca settingnya dari berkas /etc/lilo.conf(5). Berkas ini tidak dibaca setiap kali Anda melakukan boot, tetapi setiap kali Anda menginstall LILO. LILO harus diinstall ulang pada boot sector setiap kali Anda melakukan perubahan konfigurasi. Banyak kesalahan LILO muncul dari modifikasi berkas lilo.conf, tetapi lupa untuk menjalankan ulang lilo untuk menginstall ulang perubahan ini. liloconfig akan membantu Anda membangun berkas konfigurasi sehingga Anda bisa menginstall LILO untuk sistem Anda. Jika Anda memilih untuk mengedit berkas /etc/lilo.conf, maka menginstall LILO cukup dengan mengetikkan /sbin/lilo (sebagai root) pada prompt.

Ketika pertama kali Anda menjalankan liloconfig, maka akan tampak seperti berikut:

Gambar liloconfig

lilo

Jika ini adalah kali pertama Anda melakukan setting LILO, Anda harus memilih simple. Jika tidak, Anda mungkin menemukan bahwa expert lebih cepat jika Anda terbiasa dengan LILO dan Linux. Memilih simple akan memulai konfigurasi LILO.

Jika dukungan kernel frame buffer dikompilasi pada kernel Anda, liloconfig akan bertanya tentang resolusi video yang hendak Anda gunakan. Ini adalah resolusi yang digunakan oleh server XFree86 frame buffer. Jika Anda tidak ingin konsol dijalankan pada mode video khusus, memilih normal akan memilih pilihan 80x25.

Bagian berikutnya dari konfigurasi LILO adalah memilih dimana Anda hendak menginstallnya. Ini mungkin adalah langkah yang paling penting. Daftar berikut menjelaskan letak installasi:

Root

Opsi ini akan menginstall LILO pada awal partisi root Linux Anda. Ini adalah opsi teraman jika Anda memiliki sistem operasi lain pada komputer Anda. Opsi ini memastikan bahwa aplikasi boot lain tidak tertimpa ulang. Kerugiannya adalah LILO hanya akan dimuat dari sini jika drive Linux Anda adalah drive pertama pada sistem Anda. Hal ini mengapa banyak orang memilih untuk membuat sebuah partisi /boot sebagai drive pertama pada sistem mereka. Hal ini mengijinkan kernel dan LILO diinstall pada awal drive dimana LILO bisa menemukannya. Versi awal LILO berisi sebuah cacat yang dikenal dengan “1024 cylinder limit”. LILO tidak dapat melakukan boot kernel pada partisi yang melewati silinder ke-1024. Versi terbaru LILO sudah menghapus masalah ini.

Floppy

Metode ini bahkan lebih aman dari opsi sebelumnya. Opsi ini membuat disket yang dapat Anda gunakan untuk boot sistem Linux Anda. Opsi ini tidak menggunakan aplikasi boot apapun pada hard disk, sehingga Anda hanya cukup mem-boot disket ini jika Anda hendak menggunakan Slackware. Kecacatan dari metode ini sangatlah jelas. Disket sangatlah rentan terhadap kegagalan. Kedua, boot loader tidak berada pada komputer, jika Anda kehilangan disket, Anda harus membuat yang lain agar dapat boot sistem Anda.

MBR

Anda mungkin akan menggunakan metode ini jika Slackware adalah satu-satunya sistem operasi pada komputer Anda, atau jika Anda hendak menggunakan LILO untuk memilih diantara beberapa sistem operasi pada komputer Anda. Ini adalah metode yang paling disarankan untuk menginstall LILO dan akan bekerja pada sembarang sistem komputer.

Warning

Opsi ini akan menimpa aplikasi boot lain yang Anda miliki pada MBR.

Setelah memili lokasi installasi, liloconfig akan menulis berkas konfigurasi dan menginstall LILO. Sudah selesai. Jika Anda memilih mode expert Anda akan mendapatkan menu khusus. Menu ini mengijinkan Anda untuk memodifikasi berkas /etc/lilo.conf, dan menambahkan sistem operasi lain pada menu boot Anda, dan menentukan LILO untuk mengirimkan parameter kernel khusus saat boot. Menu expert tampak seperti berikut:

Gambar Menu Expert liloconfig

Lilo Expert

Apapun konfigurasi sistem Anda, melakukan setting boot loader yang sudah berfungsi sangatlah mudah. liloconfig membuatnya mudah.

LOADLIN

Opsi boot lain yang hadir dengan Slackware Linux adalah LOADLIN. LOADLIN adalah sebuah program DOS yang dapat digunakan untuk menjalankan Linux dari sistem DOS yang sedang berjalan. Aplikasi ini membutuhkan kernel Linux pada partisi DOS sehingga LOADLIN bisa memuatnya dan melakukan boot sistem dengan benar.

Selama proses installasi, LOADLIN akan disalin pada direktori home pengguna root sebagai berkas .ZIP. Tidak terdapat proses setup otomatis untuk LOADLIN. Anda harus menyalin kernel Linux (biasanya /boot/vmlinuz) dan juga berkas LOADLIN dari direktori home pengguna root pada partisi DOS.

LOADLIN sangatlah berguna jika Anda hendak membuat menu boot pada partisi DOS Anda. Sebuah menu bisa ditambahkan pada berkas AUTOEXEC.BAT yang mengijinkan Anda untuk memilih antara Linux atau DOS. Pilihan Linux akan menjalankan LOADLIN, sehingga memboot sistem Slackware Anda. Berkas AUTOEXEC.BAT ini pada Windows 95 akan menyediakan menu boot yang cukup:

   @ECHO OFF
SET PROMPT=$P$G
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\
CLS
ECHO Harap Memilih Sistem Operasi Anda:
ECHO.
ECHO [1] Slackware Linux
ECHO [2] Windows 95
ECHO.
CHOICE /C:12 "Selection? -> "
IF ERRORLEVEL 2 GOTO WIN
IF ERRORLEVEL 1 GOTO LINUX
:WIN
CLS
ECHO Menjalankan Windows 95...
WIN
GOTO END
:LINUX
ECHO Menjalankan Slackware Linux...
CD \LINUX
LOADLIN C:\LINUX\VMLINUZ ROOT= RO
GOTO END
:END

Anda mungkin hendak menentukan partisi root Anda sebagai nama perangkat Linux, seperti /dev/hda2 atau yang lain. Anda bisa menggunakan LOADLIN pada perintah baris. Anda cukup menggunakannya sama seperti pada contoh diatas. Dokumentasi LOADLIN hadir dengan banyak contoh tentang cara penggunaannya.

Dual Boot

Banyak pengguna melakukan setting komputer mereka untuk boot Slackware Linux dan sistem operasi lain. Kami telah menjelaskan beberapa skenario dual boot, jika Anda mengalami kesulitan melakukan setting pada sistem Anda.

Windows

Melakukan setting sebuah komputer antara MS Windows dan Linux mungkin skenario dual boot yang paling umum. Terdapat berbagai cara Anda bisa melakukan setup, tetapi bagian ini hanya membahas dua diantaranya.

Seringkali ketika melakukan setting sistem dual boot, seseorang akan merencanakan rencana yang sempurna untuk segalanya, tetapi melupakan urutan installasi. Sangatlah penting untuk memahami bahwa sistem operasi harus diinstall pada urutan tertentu agar dual boot dapat bekerja. Linux selalu menawarkan kontrol terhadap hal itu, jika sesuatu dituliskan pada Master Boot Record. Untuk itu, sangatlah disarankan untuk menginstall Linux di akhir. Windows harus terinstall terlebih dahulu, karena ia selalu menuliskan aplikasi bootnya pada Master Boot Record, menimpa semua yang mungkin ditulis disana.

Using LILO

Sebagian besar orang akan menggunakan LILO untuk memilih antara Linux dan Windows. Seperti yang dikatakan diatas, Anda harus menginstall Windows terlebih dahulu, baru dilanjutkan dengan Linux.

Misalkan Anda memiliki hard disk IDE 40GB sebagai satu-satunya disk pada sistem Anda. Mari kita misalkan Anda hendak memberikan setengah dari kapasitas tersebut pada Windows dan sisanya pada Linux. Hal ini akan menimbulkan sebuah masalah ketika mencoba boot Linux.

   20GB   Windows boot (C:)
1GB Linux root (/)
19GB Linux /usr (/usr)

Anda mungkin harus mengalokasikan sejumlah ruang untuk partisi swap Linux Anda. Aturan tidak tertulis adalah untuk menggunakan dua kali jumlah RAM yang Anda miliki. Sebuah sistem dengan 64MB RAM akan memiliki 128 MB swap, dan seterusnya. Ruang kosong untuk swap adalah diskusi dari banyak flame pada IRC dan Usenet. Tidak ada cara yang “benar” untuk melakukannya, tetapi bertahan dengan aturan diatas sudahlah mencukupi.

Dengan partisi Anda sudah tertata, Anda seharusnya memulai menginstall Windows. Setelah berjalan dengan baik, Anda bisa memulai menginstall Linux. Installasi LILO memerlukan perhatian khusus. Anda mungkin akan memilih mode expert untuk menginstall LILO.

Mulailah sebuah konfigurasi LILO baru. Anda mungkin hendak menginstallnya pada Master Boot Record sehingga bisa digunakan untuk memilih diantara dua sistem operasi. Dari menu, tambahkan partisi Linux Anda dan Windows (atau DOS) Anda. Setelah selesai, Anda bisa menginstall LILO.

Reboot komputer. LILO akan dimuat dan menampilkan sebuah menu yang mengijinkan Anda memilih diantara sistem operasi yang telah terinstall. Pilih nama dari SO yang hendak Anda muat (nama ini dipilih ketika Anda melakukan setup LILO).

LILO adalah boot loader yang dapat dikonfigurasi. Aplikasi ini tidak hanya terbatas untuk boot Linux atau DOS. Ia dapat boot apa saja. Halaman manual untuk lilo(8) dan lilo.conf(5) menyediakan informasi lebih detail.

Bagaimana jika LILO tidak bekerja? Terdapat beberapa kasus dimana LILO tidak bekerja pada mesin tertentu. Untungnya terdapat cara lain untuk dual boot Linux dan Windows.

Menggunakan LOADLIN

Metode ini bisa digunakan jika LILO tidak bekerja pada sistem Anda, atau jika Anda tidak ingin melakukan setting LILO. Metode ini juga ideal untuk pengguna yang sering menginstall ulang Windows. Setiap kali Anda menginstall ulang Windows, ia akan menimpa Master Boot Record, sehingga menghancurkan installasi LILO. Dengan LOADLIN, Anda tidak terpengaruh dengan masalah tersebut. Kerugian terbesar adalah Anda hanya dapat menggunakan LOADLIN untuk melakukan boot ke Linux.

Dengan LOADLIN, Anda bisa menginstall sistem operasi pada sembarang urutan. Hati-hati dengan menginstall pada Master Boot Record, Anda tidak ingin melakukannya. LOADLIN bergantung pada partisi Windows yang dapat diboot. Sehingga pada saat installasi Slackware, pastikan Anda melewatkan setup LILO.

Setelah menginstall sistem operasi, salin loadlinX.zip (dimana X adalah nomor versi, seperti 16a) dari direktori home root pada partisi Windows Anda. Juga salin citra kernel pada partisi Windows. Anda harus berada pada Linux agar bisa berhasil. Contoh berikut menunjukan bagaimana melakukan hal ini:

# mkdir /win
# mount -t vfat /dev/hda1 /win
# mkdir /win/linux
# cd /root
# cp loadlin* /win/linux
# cp /boot/vmlinuz /win/linux
# cd /win/linuz
# unzip loadlin16a.zip

Perintah diatas akan menghasilkan sebuah direktori C:\LINUX pada partisi Windows Anda (asumsi /dev/hda1) dan menyalin segala sesuatu yang diperlukan untuk LOADLIN. Setelah melakukan hal ini, Anda harus reboot dan masuk ke Windows untuk melakukan setup menu boot.

Setelah masuk di Windows, bukalah prompt DOS. Pertama, kita harus memastikan bahwa sistem dipilih untuk tidak boot ke antarmuka grafis.

C:\> cd \
C:\> attrib -r -a -s -h MSDOS.SYS
C:\> edit MSDOS.SYS

Tambahkan baris ini pada berkas:

BootGUI=0

Sekarang simpan berkas dan keluar dari editor. Sekarang edit C:\AUTOEXEC.BAT sehingga kita bisa menambahkan menu boot. Berikut ini adalah contoh pada AUTOEXEC.BAT:

cls
echo Menu Boot Sistem
echo.
echo 1 - Linux
echo 2 - Windows
echo.
choice /c:12 "Selection? -> "
if errorlevel 2 goto WIN
if errorlevel 1 goto LINUX
:LINUX
cls
echo "Menjalankan Linux..."
cd \linux
loadlin c:\linux\vmlinuz root=/dev/hda2 ro
goto END
:WIN
cls
echo "Menjalankan Windows..."
win
goto END
:END

Baris kunci adalah pada saat menjalankan LOADLIN. Kita memberitahukan kernel apa yang hendak dimuat, partisi root Linux dan kita hendak melakukan mount secara read-only pada awalnya.

Alat untuk kedua metode ini disediakan oleh Slackware Linux. Terdapat banyak aplikasi boot dipasaran, tetapi kedua aplikasi ini dapat berjalan untuk sebagian besar setup dual boot.

Hack Windows NT Kuno

Ini adalah situasi dual boot yang kurang populer. Pada jaman dahulu, dimana LILO tidak mampu boot Windows NT, memaksa pengguna Linux melakukan hack terhadap NTLDR, yang menimbulkan lebih banyak masalah daripada dual boot antara Windows 9x dan Linux. Harap dipahami bahwa instruksi dibawah ini sudah kuno. LILO telah mampu boot ke Windows NT/2000/XP/2003 untuk beberapa tahun sekarang ini. Jika Anda menggunakan mesin kuno, Anda harus menggunakan hack seperti ini.

  1. Install Windows NT

  2. Install Linux, pastikan LILO terinstall pada superblock pada partisi Linux

  3. Dapatkan 512 byte pertama dari partisi root Linux dan simpan pada partisi Windows NT

  4. Edit C:\BOOT.INI pada Windows NT untuk menambahkan opsi Linux

Menginstall Windows NT cukup jelas, dan juga menginstall Linux. Dari situ, akan menjadi lebih rumit. Mendapatkan 512 byte pertama dari partisi Linux lebih mudah dari kata-kata. Anda harus berada pada Linux untuk menyelesaikan ini. Diasumsikan partisi Linux Anda adalah /dev/hda2, jalankan perintah ini:

# dd if=/dev/hda2 of=/tmp/bootsect.lnx bs=1 count=512 

Selesai. Sekarang Anda harus menyalin bootsect.lnx pada partisi Windows NT. Disini adalah dimana kita mendapatkan masalah lain. Linux tidak memiliki dukungan penulisan pada sistem berkas NTFS. Jika Anda menginstall Windows NT dan memformat drive Anda sebagai NTFS, Anda perlu menyalin berkas ini pada disket FAT dan membacanya dari Windows NT. Jika Anda memformat Windows NT sebagai FAT, Anda bisa memountnya dari Linux dan menyalin berkasnya secara langsung. Dari kedua cara tersebut, Anda harus meletakkan /tmp/bootsect.lnx dari drive Linux pada C:\BOOTSECT.LNX pada drive Windows NT.

Langkah terakhir adalah menambahkan opsi menu pada menu boot Windows NT. Pada Windows NT, bukalah sebuah prompt.

C:\WINNT> cd \
C:\> attrib -r -a -s -h boot.ini
C:\> edit boot.ini

Tambahkan baris ini pada akhir berkas:

C:\bootsect.lnx="Slackware Linux"

Simpan perubahan dan keluar dari editor. Ketika Anda reboot Windows NT, Anda akan mendapatkan opsi Linux pada menu. Memilihnya akan melakukan boot ke Linux.

Linux

Ya, orang-orang melakukan hal ini. Ini adalah skenario dual boot termudah. Anda bisa menggunakan LILO dan menambahkan lebih banyak pada berkas /etc/lilo.conf. Itulah semua yang harus dilakukan.

Shell

Dalam lingkungan grafis, antarmuka disediakan oleh sebuah program yang membuat jendela, scrollbar, menu, dll. Pada lingkungan teks, antarmuka disediakan oleh sebuah shell, yang bertugas untuk menginterpretasi perintah-perintah dan secara umum membuat segala sesuatu menjadi berguna. Segera setelah melakukan proses login (yang dibahas pada bab ini), pengguna ditempatkan pada sebuah shell dan diijinkan untuk menjalankan bisnisnya. Bab ini membahas tentang pengenalan pada shell, dan juga pada shell yang paling umum bagi pengguna Linux-- Bourne Again Shell (bash). Untuk informasi lebih detail tentang apapun pada bab ini, lihat halaman manual bash(1).

Pengguna

Login

Setelah Anda melakukan boot, dan Anda melihat sesuatu yang seperti ini:

Welcome to Linux 2.4.18
Last login: Wed Jan 1 15:59:14 -0500 2005 on tty6.
darkstar login:

Hmm.. tidak ada yang mengatakan tentang sebuah login. Dan apa itu darkstar? Jangan khawatir; Anda mungkin secara tidak sengaja menjalankan jalur komunikasi luar angkasa pada bulan artificial Kerajaan. (Saya takut protokol komunikasi luar angkasa tidak didukung pada kernel Linux. Mungkin versi 2.8 akan menyediakan dukungan ini). Tidak, darkstar hanyalah nama dari salah satu komputer kita, dan namanya dituliskan sebagai default. Jika Anda menyebutkan sebuah nama untuk komputer Anda selama proses setup, Anda akan melihatnya dan bukan darkstar.

Untuk login... Jika ini adalah yang pertama kalinya bagi Anda, Anda akan login sebagai root. Anda akan diminta sebuah kata sandi (password); Jika Anda menentukan sebuah password pada saat proses setup, itulah yang Anda cari. Jika tidak, cukup tekan enter. Hanya itu, Anda sudah masuk!

Perintah Baris

Menjalankan Program

Sangatlah susah untuk mendapatkan sesuatu tanpa menjalankan sebuah program; Anda mungkin dapat memperoleh sesuatu dengan komputer Anda atau menahan sebuah pintu yang terbuka, dan beberapa akan membuat suara ketika berlari, tetapi hanya itu. Dan saya berpendapat bahwa kita semua setuju bahwa penggunaannya sebagai penahan pintu tidak akan membawa popularitas komputer pribadi seperti yang sekarang kita alami sekarang.

Jadi, ingat bagaimana semua pada Linux adalah sebuah berkas? Hal tersebut berlaku juga untuk program. Setiap perintah yang Anda jalankan (yang tidak dibangun pada shell) tersimpan sebagai file pada suatu tempat. Anda menjalankan program cukup dengan menentukan path lengkapnya.

Sebagai contoh, ingat perintah su dari bab terakhir? Sebetulnya ia terletak pada direktori /bin: /bin/su akan menjalankannya dengan baik.

Lalu kenapa, hanya dengan mengetikkan su akan bekerja? Lagipula, Anda tidak mengatakan bahwa ia terletak pada /bin. Ia juga bisa terletak pada /usr/local/share, bukan? Bagaimana ia mengetahuinya? Jawabannya terletak pada PATH variabel lingkungan; sebagian besar shell memilikinya entah PATH atau sesuatu yang hampir sama dengan PATH. Secara umum hanya berisi daftar direktori yang harus dicari untuk menjalankan program Anda coba jalankan. Jadi ketika Anda menjalankan su, shell Anda mencari melalui daftar direktori tersebut, memeriksa setiap berkas yang dapat dieksekusi yang disebut su yang dapat dijalankan; yang pertama yang muncul, akan dijalankan. Hal ini terjadi ketika Anda menjalankan sebuah program tanpa menentukan path secara lengkap; jika Anda mendapatkan sebuah kesalahan ““Command not found””, itu hanya berarti bahwa program yang hendak Anda jalankan tidak berada pada PATH. (tentu saja, ini hanya akan benar jika program benar-benar tidak ada...) Kita akan membahas variabel lingkungan lebih dalam pada Bagian 8.3.1.

Ingat juga bahwa “.” adalah kependekan dari direktori aktual, sehingga jika Anda berada pada /bin, ./su akan bekerja sebagai path lengkap eksplisit.

Pencocokan Pola

Hampir semua shell mengenali beberapa karakter sebagai penggati atau abbreviasi yang berarti segalanya disini. Beberapa karakter disebut dengan wildcard; yang paling umum adalah * dan ?. Secara konvensi, ? biasanya sesuai dengan satu buah karakter. Sebagai contoh, misalnya Anda berada pada sebuah direktori dengan tiga buah berkas: ex1.txt, ex2.txt, dan ex3.txt. Anda hendak menyalin semua berkas tersebut (menggunakan perintah cp yang kita bahas pada Bagian 10.5.1) pada direktori lain, misalnya /tmp. Dengan mengetikkan cp ex1.txt ex2.txt ex3.txt /tmp maka cukup banyak pekerjaan yang harus dilakukan. Akan lebih mudah untuk mengetikkan cp ex?.txt /tmp; ? akan sesuai dengan setiap karakter “1”, “2”, dan “3”, dan setiap karakter akan disubstitusi.

Apa yang Anda katakan? Itu s masih terlalu banyak? Anda benar; kita memiliki hukum tenaga kerja untuk memproteksi kita dari hal-hal seperti itu. Untungnya, kita juga memiliki *. Seperti yang sudah disebutkan * akan sesuai dengan “sembarang karakter”, termasuk 0. Jadi jika ketiga berkas ini berada pada satu direktori, kita cukup menyebutkan cp * /tmp dan mendapatkannya semua dalam satu sapuan. Misalkan, jka terdapat sebuah berkas bernama ex.txt dan satu lagi bernama hejaz.txt. Kita ingin menyalin ex.txt tetapi tidak hejaz.txt; cp ex* /tmp akan melakukannya untuk kita.

cp ex?.txt /tmp, akan, tentu saja, hanya mengambil tiga berkas orisinal kita; tidak ada karakter pada ex.txt untuk disesuaikan dengan ?, sehingga akan ditinggalkan.

Wildcard umum lainnya adalah tanda kurung [ ]. Sembarang karakter yang ada didalam tanda tersebut akan digantikan pada [] untuk mencari sebuah kesesuaian. Membingungkan? Tidak separah itu. Misalkan, kita memiliki sebuah direktori yang berisi 8 berkas berikut: a1, a2, a3, a4, aA, aB, aC, dan aD . Kita hanya ingin mencari file yang diakhiri dengan angka; [ ] akan melakukannya untuk kita.

% ls a[1-4]
a1 a2 a3 a4

Tetapi apa yang benar-benar kita inginkan hanyalah a1, a2, dan a4? Pada contoh sebelumnya, kita menggunakan - untuk mengartikan semua nilai antara 1 dan 4. Kita juga bisa memisahkan daftar individu dengan koma.

% ls a[1,2,4]
a1 a2 a4

Saya tahu apa yang Anda pikirkan sekarang, “Bagaimana dengan huruf?” Linux bersifat case-sensitive, artinya a dan A adalah karakter yang berbeda dan hanya berhubungan pada pikiran Anda. Kapital selalu lebih awal dibandingkan huruf kecil, jadi A dan B lebih dahulu dibandingkan a dan b. Melanjutkan contoh kita sebelumnya, jika kita ingin berkas a1, dan A1, kita bisa menemukan dengan [ ].

% ls [A,a]1
A1 a1

Perhatikan, bahwa jika kita menyertakan sebuah tanda minus dan bukan koma, kita akan mendapatkan hasil yang tidak benar.

% ls [A-a]1
A1 B1 C1 D1 a1

Anda juga bisa mengkombinasikan antara minus dan koma.

% ls [A,a-d]
A1 a1 b1 c1 d1

Pengalihan Masukan/Keluaran dan Piping

(Ini adalah sesuatu yang menarik.)

% ps > blargh 

Anda tahu apa itu? Itu saya menjalankan ps untuk melihat proses apa saja yang sedang berjalan; ps dibahas pada Bagian 11.3. Itu bukan bagian yang menarik. Bagian menariknya adalah > blargh, yang berarti, secara kasar, ambil hasil keluaran dari ps dan tuliskan pada sebuah berkas bernama blargh. Tetapi tunggu, ini menjadi semakin menarik.

% ps | less 

Yang ini mengambil nilai keluaran dari ps dan mengirimkannya kepada less, sehingga saya bisa membacanya dengan santai.

% ps >> blargh 

Ini adalah pengalihan ketiga yang paling umum digunakan; ia melakukan hal yang sama dengan “>”, kecuali “>>” akan menambahkan hasil keluaran dari ps pada berkas blargh, jika berkas ada. Jika tidak, maka seperti “>”, berkas akan dibuat. (“>” akan menimpa isi dari blargh.)

Juga terdapat operator “<”, yang berarti ambil masukkan Anda dari berikut, tetapi jarang sekali digunakan.

% fromdos <> unixfile.txt 

Pengalihan menjadi menarik ketika Anda mulai menggabungkannya:

% ps | tac >> blargh 

Hal itu akan menjalankan ps, memutar baris dari hasil keluaran, dan menambahkannya pada berkas blargh. Anda bisa menumpuk sebanyak yang Anda inginkan; hanya berhati-hatilah untuk mengingat bahwa mereka akan diinterpretasi dari kiri ke kanan.

Lihat halaman manual bash(1) untuk informasi lebih detail tentang pengalihan.

Bourne Again Shell (bash)

Environment Variables

Sebuah sistem Linux adalah makluk yang sangat rumit, dan terdapat banyak catatan dari detail kecil yang turut berperan serta pada interaksi Anda dengan berbagai program (beberapa diantaranya mungkin tidak Anda sadari). Tidak ada orang yang ingin mengirimkan segudang opsi pada setiap komputer yang berjalan, memberitahukan terminal apa yang harus dikerjakan, nama host dari komputer, bagaimana tampilan sebuah prompt ...

Seperti mekanisme penyalinan, pengguna memiliki apa yang disebut sebuah lingkungan (environment). Lingkungan mendefinisikan kondisi dimana program berjalan, dan beberapa definisi ini adalah variabel; pengguna bisa mengubah dan bermain-main dengannya, sama seperti sistem Linux. Sebagian besar shell memiliki variabel lingkungan (jika tidak, mungkin itu bukan shell yang sangat berguna). Disini kita memberikan sebuah gambaran dari perintah yang disediakan oleh bash untuk memanipulasi variabel lingkungannya.

set dengan sendirinya akan menampilkan semua variabel lingkungan yang telah didefinisikan, beserta nilainya. Seperti perintah bash lainnya, perintah ini juga bisa melakukan hal-hal lain (dengan parameter); kita membiarkan halaman manual bash(1) untuk membahasnya. menunjukkan sebuah contoh dari sebuah perintah set yang dijalankan pada salah satu komputer penulis. Perhatikan pada contoh ini variabel PATH yang dibahas sebelumnya. Program-program pada sembarang direktori tersebut dapat dijalankan cukup dengan mengetikkan nama file dasarnya.

Contoh Daftar Variabel Lingkungan dengan set

% set
PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin
PIPESTATUS=([0]="0")
PPID=4978
PS1='\h:\w\$ '
PS2='> '
PS4='+ '
PWD=/home/logan
QTDIR=/usr/local/lib/qt
REMOTEHOST=ninja.tdn
SHELL=/bin/bash
% unset VARIABLE 

unset akan menghapus semua variabel yang Anda berikan, membuang baik variabel dan nilainya; bash akan melupakan variabel tersebut. (Jangan khawatir. Kecuali sesuatu yang Anda tentukan secara eksplisit pada sesi shell, mungkin variabel tersebut akan didefinisikan ulang pada sesi lain.)

% export VARIABLE=some_value 

Sekarang, export sangatlah berguna. Dengan menggunakannya, Anda memberikan variabel lingkungan VARIABLE nilai “sembarang_nilai”; Jika VARIABLE tidak ada, maka sekarang ada. Jika VARIABLE sudah ada nilainya, nilai itu akan hilang. Itu tidak baik, jika Anda hanya mencoba menambahkan sebuah direktori pada PATH. Pada kasus ini, Anda mungkin hendak mencoba sesuatu seperti ini:

% export PATH=$PATH:/some/new/directory 

Perhatikan penggunaan $PATH: ketika Anda ingin agar bash menginterpretasikan sebuah variabel (ganti dengan nilainya), gunakan $ diawal sebuah nama variabel. Sebagai contoh, echo $PATH akan menampilkan nilai dari PATH, pada kasus saya:

% echo $PATH
/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin

Pelengkap Tab

(Ini muncul lagi sesuatu yang menarik.)

  1. Sebuah antarmuka berbasis teks berarti banyak mengetik.

  2. Mengetik adalah pekerjaan.

  3. Tidak ada orang yang suka pekerjaan.

Dari 3 dan 2, kita bisa menentukan bahwa (4) tidak ada orang yang suka mengetik. Sayangnya, bash menyelamatkan kita dari (5) (tidak ada orang yang menyukai antarmuka berbasis teks).

Bagaimana bash menyediakan fitur menarik ini, tanya Anda? Selain penambahan wildcard yang sudah kita bahas sebelumnya, bash menyediakan fitur pelengkap tab.

Pelengkap tab bekerja sebagai berikut: Anda mengetikkan sebuah nama berkas. Mungkin berada dalam PATH Anda, mungkin Anda menuliskannya secara eksplisit. Yang perlu Anda lakukan hanyalah mengetikkan nama berkas untuk mengidentifikasinya secara unik. Lalu tekan tombol tab. bash akan mencoba apa yang Anda inginkan dan menyelesaikan penulisannya untuk Anda!

Waktunya untuk contoh. /usr/src berisi dua sub direktori: /usr/src/linux dan /usr/src/sendmail. Saya ingin melihat apa yang berada pada /usr/src/linux. Sehingga saya cukup mengetikkan ls /usr/src/l, tekan kunci TAB, dan bash memberikan ls /usr/src/linux.

Sekarang, anggap terdapat dua sub direktori /usr/src/linux dan /usr/src/linux-old; Jika saya mengetikkan /usr/src/l dan menekan TAB, bash akan menemukan sebanyak yang ia bisa dan saya akan mendapatkan /usr/src/linux. Saya bisa berhenti disini, atau saya bisa menekan TAB lagi, dan bash akan menampilkan daftar direktori yang sesuai dengan apa sudah saya ketik sejauh ini.

Sehingga, pengetikan berkurang (dan akhirnya, orang-orang bisa menyukai antarmuka berbasis teks). Saya memberitahu Anda bahwa ini menarik.

Virtual Terminals

Jadi Anda sedang mengerjakan sesuatu dan Anda memutuskan bahwa Anda harus mengerjakan hal lain. Anda bisa saja menutup apa yang sudah Anda kerjakan dan berpindah ke tugas lain, tetapi ini adalah sistem dengan banyak pengguna bukan? Anda bisa login sebanyak mungkin semau Anda bukan? Jadi kenapa harus melakukan satu hal pada sebuah waktu yang bersamaan?

Anda tidak bisa melakukannya. Kita tidak bisa memiliki banyak keyboard, mouse, dan monitor untuk satu mesin; kemungkinannya adalah sebagian besar dari kita tidak menginginkannya. Jelas, perangkat keras bukanlah solusi. Hal itu meninggalkan kita pada perangkat lunak, dan Linux hadir untuk ini, dengan menyediakan “terminal virtual”, atau “VTs”.

Dengan menekan kunci Alt dan fungsi, Anda bisa berpindah diantara terminal virtual; setiap kunci fungsi berkorespondensi dengan yang lain. Slackware memiliki login pada 6 VT secara default. Alt+F2 akan membawa Anda pada yang kedua, Alt+F3 pada yang ketiga, dll.

Sisa dari kunci fungsi disimpan untuk sesi X. Setiap sesi X menggunakan VTnya masing-masing, dimulai dari yang ketujuh (Alt+F7) dan seterusnya. Ketika berada pada X, kombinasi Alt+kunci Fungsi digantikan dengan Ctrl+Alt+Fungsi; jadi ketika Anda berada pada X dan hendak kembali pada login text (tanpa harus keluar dari sesi X), Ctrl+Alt+F3 akan membawa Anda kembali ke yang ketiga. (Alt+F7 akan membawa Anda kembali, dengan asumsi Anda menggunakan sesi X pertama.)

Screen

Tetapi bagaimana dengan situasi dimana tidak terdapat terminal virtual? Lalu bagaimana? Untungnya, Slackware menyertakan sebuah manajer screen yang disebut screen. screen adalah emulator terminal yang memiliki kemampuan seperti terminal virtual. Menjalankan Executing screen mengaktifkan perkenalan singkat, lalu kembali ke terminal. Tidak seperti terminal virtual standar, screen memiliki perintahnya sendiri. Semua perintah screen diawali dengan sebuah penekanan Crtl+A. Misalnya, Ctrl+A+C akan membuat sebuah sesi terminal baru. Ctrl+A+N akan berpindah ke terminal selanjutnya. Ctrl+A+P berpindah ke terminal sebelumnya.

screen juga mendukung pelepasan dan penggabungan pada sesi screen yang berguna untuk sesi remote melalui ssh dan telnet, (lebih banyak tentang ini di akhir). Ctrl+A+D akan melepaskan diri dari screen yang berjalan. Mengeksekusi screen -r akan menampilkan semua sesi screen yang berjalan yang dapat Anda gabungkan.

% screen -r
There are several suitable screens on:
1212.pts-1.redtail (Detached)
1195.pts-1.redtail (Detached)
1225.pts-1.redtail (Detached)
17146.pts-1.sanctuary (Dead ???)
Remove dead screens with 'screen -wipe'.
Type "screen [-d] -r [pid.]tty.host" to resume one of them.

Menjalankan screen -r 1212 akan menyatukan dengan screen pertama yang terdaftar. Saya menyebutkan betapa pentingnya hal ini untuk sesi remote. Jika saya login pada server remote Slackware melalui ssh, dan koneksi saya terganggu oleh beberapa hambatan, seperti listrik padam, apapun yang saya lakukan pada saat itu akan hilang, yang bisa jadi merupakan hal buruk bagi server Anda. Menggunakan screen mencegah hal ini dengan melepas sesi saya jika koneksi saya terputus. Setelah koneksi tersambung kembali, saya bisa menggabungkan ke sesi screen saya dan melanjutkan apa yang saya tinggalkan sebelumnya.


6 Langkah Pengamanan Dasar Jaringan:

  1. Ubahlah Sistem ID (Identitas). Biasanya suatu layanan nirkabel dilengkapi dengan suatu standart pengamanan identitas atau yang sering disebut SSID (Service Set Identifier) or ESSID (Extended Service Set Identifier). Sangat mudah bagi seorang hacker untuk mencari tahu identitas default dari suatu layanan atau jaringan, jadi sebaiknya Anda segera mengubahnya menjadi suatu identitas yang unik, yang tidak mudah ditebak orang lain.

  2. Mematikan identitas pemancar. Dengan mengumumkan kepada umum bahwa Anda memiliki suatu jaringan nirkabel akan membuat para hacker penasaran untuk membobol jaringan nirkabel Anda. Mempunyai suatu jaringan nirkabel bukan berarti harus memberitahukannya kepada semua orang. Periksalah secara manual perangkat keras yang Anda pakai untuk jaringan nirkabel tersebut, dan pelajarilah bagaimana cara mematikannya.

  3. Sediakanlah enkripsi. WEP (Wired Equivalent Privacy) and WPA (Wi-Fi Protected Access) dapat meng-enkripsi data Anda sehingga hanya penerima saja yang diharapkan dapat membaca data tersebut. WEP (Wired Equivalent Privacy) mempunyai banyak kelemahan yang membuatnya mudah disusupi. Kunci 128-bit hanya mempunyai tingkat pencapaian yang relatif rendah tanpa peningkatan keamanan yang signifikan, sedangkan untuk 40-bit atau 64-bit pada beberapa perlengkapan lainnya, mempunyai enkripsi yang sama baiknya. Dengan cara pengamanan yang standart saja pastilah tetap akan mudah bagi hacker untuk menyusup, namun dengan cara enkripsi ini pastilah akan membuat jaringan Anda lebih aman dari hacker. Jika memungkinkan, ada baiknya untuk menggunakan enkripsi WPA (peralatan yang lebih tua dapat diupgrade terlebih dahulu agar compatible dengan WPA). WPA dapat sangat menjanjikan dalam menjamin keamanan jaringan nirkabel Anda, namun masih tetap dapat dikalahkan oleh serangan DOS (denial of services).

  4. Membatasi dari penggunaan traffic yang tidak perlu. Banyak router jaringan kabel maupun nirkabel yang dilengkapi firewalls. Bukan bermaksud mengedepankan firewalls, namun firewalls telah membantu dalam pertahanan keamanan jaringan. Bacalah petunjuk manual dari perangkat keras Anda dan pelajarilah cara pengaturan konfigurasi router Anda, sehingga hanya traffic yang sudah seijin Anda saja yang dapat dijalankan.

  5. Ubahlah 'kata sandi' default Administrator milik Anda. Hal ini baik untuk semua penggunaan perangkat keras maupun perangkat lunak. Kata sandi default sangat mudah disalahgunakan, terutama oleh para hacker. Oleh karena itu sebaiknya ubahlah kata sandi Anda, hindari penggunaan kata dari hal-hal pribadi Anda yang mudah diketahui orang, seperti nama belakang, tanggal lahir, dan sebagainya.

  6. Kunci dan lindungilah komputer Anda, hal ini merupakan cara pengamanan terakhir untuk komputer Anda. Gunakanlah firewall, perangkat lunak Anti Virus, Zone Alarm, dan lain sebagainya. Setidaknya setiap satu minggu perbaharuilah Anti Virus yang Anda pakai.('dna)


Keamanan Jaringan

Keamanan: menjaga agar resource digunakan sebagaimana mestinya oleh pemakai yang berhak.

Pemakaian alat (termasuk program) dapat menyebabkan kerusakan baik disengaja atau tidak. Pembatasan pemakaian bukan untuk mempersulit tetapi supaya efisien dan tidak merusak.

Proteksi:

  • authentication: pemakai harus dapat membuktikan dirinya. Contoh: user dan password. Dalam jaringan UNPAR ditambahkan sumber akses (komputer yang digunakan) dengan asumsi bahwa pada satu saat satu orang hanya dapat/boleh bekerja dengan satu komputer yang sama.
  • gateway: gerbang masuk menuju sistem dengan firewall
  • attack: serangan terhadap sistem.
  • authorization: pemakai diperbolehkan menggunakan pelayanan dan resource sesuai dengan haknya.
  • monitoring: pengawasan terhadap jaringan
  • Komunikasi terenkripsi: menggunakan enkripsi agar data tak dapat diintip

Authentication. Database tentang user.

Informasi umum tentang pemakai disimpan di file /etc/passwd

Enter command # more /etc/passwd
root:*:0:0:Bozz:/root:/bin/sh
toor:*:0:0:Bourne-again Superuser:/root:
daemon:*:1:1:Owner of many system processes:/root:/sbin/nologin
--- dipotong ---
www:*:10000:65533:WebMaster:/nonexistent:/sbin/nologin
nobody:*:65534:65534:Unprivileged user:/nonexistent:/sbin/nologin
gatut:*:21001:21001:Gatut:/home2/gatut:/usr/local/bin/tcsh
wardojo:*:1004:20:Wardojo:/home2/wardojo:/usr/local/bin/tcsh
ari:*:1005:20:Ari Nurcahyo:/home1/ari:/usr/local/bin/tcsh
tres:*:1006:20:Theresia Maria Sri Prihatiningsih:/home2/tres:/usr/local/bin/tcsh
--- dipotong ---

utilitas UNIX: finger

Defaultnya, menampilkan daftar nama pemakai yang sedang aktif atau informasi lain tentang pemakai tertentu.

[gatut@bsd02 gatut]$ finger
[gatut@bsd02 gatut]$ finger gatut
Login Name TTY Idle Login Time Office Phone
gatut V Gatut Harijoso p0 Wed 00:13 PUSKOM

utilitas UNIX: w dan who

Mengetahui pemakai yang sedang aktif.

[gatut@bsd02 gatut]$ w
[gatut@bsd02 gatut]$ who

utilitas UNIX: last

Menampilkan daftar pemakai terakhir

[gatut@bsd02 gatut]$ last
pemake ttyp0 10.210.2.51 Tue Jun 29 23:50 - 00:02 (00:11)
yuser ttyp9 167.205.136.3 Tue Jun 29 23:37 - 23:39 (00:02)
7397023 ttyp1 10.210.2.48 Tue Jun 29 23:07 - 23:24 (00:16)
--- dst -- dipotong --

Pemakai hendaknya selalu memperhatikan pesan "last login from:" pada saat login agar dapat segera diketahui apabila terdapat pemakai lain yang menggunakan user-id tersebut.

Authentikasi melalui sistem (yaitu, password) yang sesungguhnya disimpan dalam bentuk ter-enkripsi dalam file yang tak dapat dilihat oleh pemakai biasa, biasanya /etc/master.passwd atau /etc/shadow.

Authentikasi dapat dilakukan secara terpusat, misalnya dengan Network Information Service (NIS) juga disebut sebagai Yellow Pages (YP), Kerberos (eBones), RADIUS.

Authorization

Pemakai yang sudah terbukti mendapatkan haknya untuk dilayani dan menggunakan resource. Karena pemakai memiliki hak penuh atas file yang dimilikinya, maka pemakai harus mengatur sendiri datanya.

Utilitas UNIX: chmod

Menentukan hak akses file dan directory.

[gatut@bsd02 gatut]$ chmod
[gatut@bsd02 /home]$ ls -l
total 4
drwxr-xr-x 26 gatut staff 2048 Jun 30 00:03 gatut
drwxr-xr-x 9 pemake user 1024 May 8 09:41 pemake
drwxr-xr-x 2 noone nobody 1024 Apr 16 11:53 noone
[gatut@bsd02 /home]$ chmod 0711 gatut
[gatut@bsd02 /home]$ ls -l
total 4
drwx--x--x 26 gatut staff 2048 Jun 30 00:03 gatut
drwxr-xr-x 9 pemake user 1024 May 8 09:41 pemake
drwxr-xr-x 2 noone nobody 1024 Apr 16 11:53 noone
[gatut@bsd02 /home]$

Ada banyak aplikasi yang bekerja di server bekerja atas nama super-user, misalnya agar dapat membaca file password atau menulis data ke dalam sistem (lihat kembali perintah "ps aux"). Semakin kompleks aplikasi, semakin besar kemungkinan terdapat kesalahan (bug). Program yang berjalan atas nama super-user dan salah bisa berakibat fatal. Oleh sebab itu, biasanya aplikasi client-server sebisa mungkin memisahkan akses yang menuntut hak super-user.

Gateway

Gateway yang menghubungkan sistem ke luar dapat menjadi gerbang ke dalam, sehingga ada resiko perusakan atau pencurian data oleh publik yang jauh lebih luas.

Firewall (dinding api) gateway yang menjaga keamanan sistem.

  • Penyaringan packet: hanya paket dari dan ke host, tcp, udp tertentu yang boleh berkomunikasi. Program melakukan pemeriksaan dan penyaringan sehingga hanya pelayanan yang diketahui dan benar yang boleh lewat.
  • Gateway aplikasi: pengiriman dan penerimaan mail gateway untuk mempermudah pemeriksaan dan mengurangi beban jaringan.

Attack

Password terbuka karena: pencurian, catatan yang tercecer, pengamatan (cara mengetik, mengintip paket)

Membelokkan akses: dengan mengganti ip, dns, atau route membelokkan akses ke server palsu untuk menjebak password.

Kesalahan program: tak ada gading yang tak retak Jangan menjalankan program yang tak diketahui. Penyebaran virus melalui email, java script, vb script. Membebani server dengan akses yang besar.

Batu loncatan: biasanya akses dari komputer yang terletak di intranet kurang dibatasi. Apabila akses ke komputer di intranet terbuka, maka pemakai internet dapat masuk ke dalam komputer di intranet, kemudian menggunakan komputer tersebut sebagai batu loncatan.

Monitoring

Mengetahui apa yang terjadi sebagai tindakan preventif dengan membaca catatan system.

UNIX: catatan biasanya disimpan dalam directory /var/log.

/var/log/messages Pesan-pesan dari sistem
/var/log/maillog Transaksi email (SMTP)

Komunikasi Terenkripsi

Komunikasi melalui jaringan publik memungkinkan adanya penyadap ikut mendengarkan percakapan.

Beberapa software:

  • Secure Shell: pengganti telnet dengan enkripsi
  • HTTPS: secure HTTP

Akibat enkripsi, data yang dipertukarkan lebih besar.