Tuesday, December 12, 2006

Linux and Windows

Ngomongin Linux vs Windows yuk. Karena gw bukan fans Linux, maka gw katakan saja bahwa kesimpulan akhirnya, Windows adalah pemenangnya. Gw lebih baik mengeluarkan $150 buat beli Windows original daripada kudu pake Mandriva atau UBuntu atau RedHat! There.... kalo lo adalah fans Linux sejati, lebih baik skip this blog!
Pengalaman gw dengan Linux sudah cukup lama. Sejak tahun 1995, sejak jamannya Windows 95, dan RedHat masih pake X-Window gak pake Gnome atau KDE. O, ya, karena gw gak ahli di Linux, sorry saja kalo ada salah-salah istilah.
Waktu gw install RedHat, gw puyeng juga, soalnya disitu ada Apache, PHP, MySQL, dan program-program buat developer, padahal pas 1995 gw masih bego . Terus pas booting ke RedHat, masuknya ke bash (command prompt) gak masuk ke GUI seperti Windows. Bayangin, gw yang baru pertama pake Linux masuk ke bash, kayak lo sekarang booting bukan masuk ke Windows tapi ke dos-prompt. Terus setelah baca sana sini, akhirnya gw bisa masuk juga ke X-Window (startx). Beberapa minggu kemudian, RedHat-nya gw buang karena gw butuh HDD buat Windows 95.
Terus pas jaman Windows 98, gw dapat distro Mandrake 7. Wah instalasi bagus banget, mengalahkan Windows XP sekalipun, sangat mudah, dan gak seperti RedHat, dia menanyakan keperluan gw, apakah sebagai desktop, developer atau server. Install yang mudah dan interface GUI yang keren dengan Gnome/KDE-nya. Gw cukup lama pake Mandrake 7, soalnya gw mulai membutuhkan Apache, PHP & MySQL. Tapi gak nyampe setahun gw balik lagi ke Windows, soalnya bisnis gw beralih .
Nah udah lama gw gak pake Linux, gw dapat UBuntu dari majalah Chip! Gw coba, dan enaknya Ubuntu adalah lo dapat coba Linux tanpa harus menginstal ke HDD, cukup lewat CD, Live CD gitu. Interfacenya juga bagus, mirip Mac OS. Tapi ini juga gak lama, soalnya gw harus ganti HDD gw.
RedHat? Mandrake? Mandriva? UBuntu?
Jangan dipusingkan dengan istilah RedHat Linux, Mandrake Linux, Ubuntu Linux, dsb. Linux itu sendiri adalah intinya, enginenya. Sementara RedHat cs adalah distributornya. Jadi RedHat Linux adalah Linux keluaran RedHat, Mandriva keluaran Mandriva, dsb. Apa bedanya? Enginenya sama, cuma setiap distributor memiliki cara distribusi, install, isi paket & cara pakai yang berbeda.
Misalnya Mandrake (sekarang Mandriva) lebih ditujukan pada newbie dengan segala kemudahan instal & pemakaian. Sementara RedHat lebih teknis, biasa dipakai buat server. Dan, yah, setiap distribusi memiliki tampilan GUI yang berbeda, GUI yang biasa dipake itu KDE & Gnome. KDE memiliki tampilan yang mirip Windows, sementara Gnome beda sendiri. Gw gak tau Ubuntu pake apa, tampilannya mirip Mac OS/X.
Jadi lo bayangin saja kalo Windows XP pakai sistem distributor. Maka Windows XP keluaran M$ punya tampilan A, sementara keluaran HP punya tampilan B, sementara keluaran IBM punya tampilan C. Masing-masing punya program yang berbeda, keluaran MS ada MS Office & MS Paint, keluaran HP punya StarOffice & Adobe Photoshop, keluaran IBM punya Corel Office & Paintshop Pro.
Susahnya....
Pengalaman gw pake Linux sejak tahun 1995-2006 (biarpun kalo ditotal cuma 1 tahunan), gw ngerasa satu hal yang pasti dari Linux. SUSAH! Instal memang gampang, tapi setiap kali instal selalu ada masalah. Di RedHat, printer, VGA & sound card gak bisa kedetek. Di Mandrake mendingan, cuma VGA gw yang gak bisa dipakai optimal (driver 3D gak jalan). Di Ubuntu, hampir semua hardware kedetek, kecuali software modem gw yang murah meriah. Instalasi driver secara manual di Linux itu cukup membingungkan, kalo jaman dos lo paling edit config.sys, kalo di Linux, harus edit bermacam-macam file, compile ulang, dsb. I gave up!
Kemudian gak ada interface standar. Hampir semua distro Linux yang besar menyertakan Gnome & KDE, sementara distro yang lebih kecil biasa pake X-Window atau K-Lite. Yang parah, Gnome yang dipakai RedHat bisa beda ama Gnome yang dipakai Mandriva. Jadi kalo lo beli buku Linux, harus liat dulu buat RedHat (versi berapa) atau buat Mandriva (juga liat versinya).
Program yang tersedia buat Linux memang cukup banyak, dan mayoritas gratis, tapi masalah instalasi.... bisa buat garuk-garuk kepala. Gak seperti Windows, lo cukup cari setup.exe dan Next-Next-Next, maka di Linux tergantung ama paketnya. Kalo lo dapat paket RPM, hampir semudah Windows tinggal klik, tapi kalo dapat paket binary, siap-siap mengetik 10 baris perintah yang gak boleh salah satu karakter pun! Itu juga kalo bisa langsung instal, dalam Linux ada yang namanya dependency, jadi satu program hanya bisa berjalan kalo ada program lainnya. Nah lo, silahkan cari program pendampingnya dan instal!
Malang tak dapat ditolak, untung tak dapat diraih. Kalo elo sudah berhasil menemukan program yang minati, dan berhasil menginstalnya, belum tentu bisa jalan (biarpun hardwarenya sudah cukup). Ternyata program Linux juga pilih-pilih GUI. Misalnya K-Office hanya bisa berjalan di KDE, sementara di Gnome dia bakal mengeluh. Sebaliknya AbiWord lebih suka jalan di Gnome daripada di KDE.
Terus kalo lo gamer, mending lupakan Linux, game bagus buat Linux bisa dihitung dengan jari. Mayoritas gamenya puzzle atau yang pake otak, macam Tic Tac Toe, Stratego, Chess, dengan tampilan yang sederhana. Lupakan Half Life 2 atau Need for Speed!
It's Not All Bad
Linux bukan o/s yang buruk. Setidaknya dia stabil, jarang bermasalah, dan ringan. Bahkan bisa jalan dengan disket di PC 386 (baca: PC 15 tahun lalu) tapi lupakan soal GUI!
Linux memang lebih cocok buat jadi server, daripada desktop. Bukannya gak mungkin jadi desktop, tapi gw rasa untuk memakai Linux lo kudu cukup mengerti komputer. Ngomong-ngomong, temen gw yang suka main RedHat, sempet kaget waktu gw bilang gw 'berhasil' membuat RedHat hang (padahal gw login sebagai user, bukan root). Soalnya Linux itu jarang banget amat sekali ngehang.
Harapan Kosong
Gw rasa masalah pada Linux bukan pada core-nya (kernel). Kernel Linux itu sendiri sudah bagus & stabil. Yang masalah adalah tidak adanya standarisasi yang baku. Liat saja setiap distro punya GUI, kelengkapan, dan aturan sendiri. Ini membingungkan user awam, "pilih mana, yah? RedHat, Caldera, Mandriva, Ubuntu?" Sudah memilih salah satu distro, mereka dibingungkan dengan buku yang harus dibeli, gak semua distro ada bukunya, di Gramedia saja cuma ada buku untuk RedHat & Mandriva. Berpindah dari satu distro ke distro lain memaksa lo untuk belajar lagi!
Coba bayangkan kalo Linux punya satu standar. GUI pake Gnome dengan theme ttt, aplikasi office bawaan OpenOffice, instalasi semua pake RPM, media player pake apagitu, dsb. Maka kita sudah gak usah bingung ambil distro yang mana, bahkan kalo perlu hanya ada 1 distro, misalnya RedHat. Yang membedakan cuma edisinya, jadi ada edisi Home, Proffesional, Developer & Server, seperti Windows lah. Sementara sisanya, seperti KDE, StarOffice, K-Office itu menjadi 3rd party, optional, downloadble.
Efeknya, user udah gak usah dibingungkan harus memilih distro mana. Gak usah bingung cari buku Linux. Gak bingung cara instal. Developer gak bingung, KDE atau Gnome yah. Dsb. Gw yakin kalo sudah ada standarisasi, Linux bakal berkembang lebih cepat, dan bakal bisa bersaing dengan Windows (desktop).
Tapi semua ini hanya harapan kosong, soalnya kalo sudah ada standarisasi baku, ini melanggar konsep open source yang mengijinkan semua orang membuat, mengubah & mendistribusikan Linux dengan caranya masing-masing. Dan gw ragu kalo Mandriva cs bakal menerima begitu saja (kalo RedHat jadi standar), walau gimana distro gede justru menangguk duit dari paket mereka.
Akhirnya, MS yang paling diuntungkan, dan kita masih bakal tergantung pada Windows sampai beberapa abad lagi (kecuali kalo PC gak butuh os, atau dunia kiamat).

Dokumentasi Linux

Linux mempunyai dokumentasi yang sangat komprehensif untuk mendukung setiap program yang diberikan. Hampir semua distribusi selalu menyediakan petunjuk bagaimana menginstal, cara kerja hingga mengoperasikannya. File bantu ini sering disebut sebagai HOW-TO. Misalnya Anda ingin mencari tahu bagaimana menggabungkan Linux dengan Windows NT dalam satu mesin, dapat Anda ketahui informasinya di Linux-WindowsNT-MINI-HOWTO, atau Linux-NTLoader-MINI-HOWTO. Jika Anda sudah menginstal Linux, biasanya dokumen ini terletak di direktori /usr/doc
Catatan :
Mini-HOWTO adalah dokumen sejenis HOWTO yang lebih singkat. Biasanya berisi petunjuk langsung untuk mengoperasikan sesuatu, tanpa bahasan yang detail. Baik HOWTO maupun Mini-HOWTO dapat Anda temukan di /usr/doc (yang secara default akan diinstal pada saat Anda menginstal Linux)
Seiring dengan pesatnya perkembangan Linux, dokumen-dokumen ini juga dirawat dengan baik oleh pihak-pihak non profit berdedikasi tinggi yang bekerja dengan nama The Linux Documentation Project (LDP). Perkembangan terakhir dari LDP ini dapat Anda lihat di http://www.linuxdoc.org. Untuk proyek penejemahan dokumentasi ke dalam bahasa Indonesia dapat Anda lihat di http://ldp.linux.or.id.

Setting Jaringan di Linux

Menyambung artikel tentang perintah dasar pada Linux, maka penulis akan menjelaskan lebih lanjut tentang setting jaringan di Linux yang mungkin berguna bagi mereka yang baru belajar tentang Linux.Linux mempunyai keunggulan di bidang jaringan, karena selain bisa menjadi client juga bisa menjadi server pada saat yang bersamaan. Hal ini sangat membantu, terutama bagi para programmer dan webmaster yang membutuhkan penggunaan server. Terutama bagi mereka yang menggunakan apache, cgi dan php.

Selain itu Linux juga memiliki kelebihan untuk bisa berhubungan dengan sistem operasi lainny, seperti: Windows 9.x, Windows ME, Windows 2000, Windows XP, Mac OS, Amiga, Atari, Sun, dan keluarga Unix lainnya.

Segala kelebihan tersebut di atas tentunya akan sia-sia jika kita tidak bisa menghubungkan komputer Linux kita dengan jaringan komputer lainnya. Untuk itu, penulis mencoba memberikan sedikit tips untuk menghubungkan komputer Linux kita dengan jaringan komputer lainnya.

Dalam artikel ini, penulis membahas setting jaringan dengan metoda konvensional, dengan alasan:

Setting jaringan pada setiap distribusi berbeda antara satu dan lainnya.
Agar kita tidak menjadi manja dan menjadi bodoh dengan setting konfigurasi yang serba otomatis, sebagaimana sistem operasi lain :).
Capek nulisnya :)).
Pada saat menulis artikel ini, penulis menggunakan SuSE Linux 7.0, jadi jika ternyata ada perbedaan nama directory mohon dimaklumi. Karena aku tidak bisa hidup tanpa SuSE :)).
Penulisan ini berdasarkan pengalaman penulis sendiri, dari mulai tidak bisa menjadi tidak tahu. Untuk itu bila ada kekurangan harap maklum, karena diperuntukkan bagi mereka yang masih pemula :).
Gambar 1. Jaringan Multiplatform

Setting Jaringan Dasar
Setting jaringan dasar merupakan langkah awal kita dalam rangka menghubungkan diri dengan komputer tetangga :). Adapun langkahnya adalah sebagai berikut:

Setting Kartu Jaringan
Pastikan komputer anda telah terpasang kartu jaringan, saat ini di pasaran telah beredar banyak sekali macam & jenis kartu jaringan. Untuk mudahnya, usahakan memilih kartu jaringan yang banyak dipakai, misalnya kompatibel ne2000 pci dengan kecepatan standard 10/100M.
Anda juga bisa menggunakan kartu jaringan lama, versiISA atau ISA Plug&Play, pastikan anda mengetahui alamat yang digunakan, bisa melalui disket bawaan, kemudian anda mencatatnya untuk diinstalasi di sistem Linux.
Pastikan kernel mengenali kartu jaringan anda, dengan mengetikkan perintah:4.
masaji@masaji.netThis email address is being protected from spam bots, you need Javascript enabled to view it:~ $> dmesg 5. --------- dipotong -----------6. Serial driver version 4.27 with HUB-6 MANY_PORTS MULTIPORT SHARE_IRQ enabled7. ttyS00 at 0x03f8 (irq = 4) is a 16550A8. ttyS01 at 0x02f8 (irq = 3) is a 16550A9. 3Com 3c90x Version 1.0.0 1999 <
linux_driver@3com.comThis email address is being protected from spam bots, you need Javascript enabled to view it> (20:28:04)10. enable_irq() unbalanced from c402451011. Installing knfsd (copyright (C) 1996
okir@monad.swbThis email address is being protected from spam bots, you need Javascript enabled to view it)12. nfsd_fh_init : initialized fhcache, entries=512
atau dengan cara ketikkan perintah:
root@masaji:/home/masaji $> ifconfigeth0 Link encap:Ethernet HWaddr 00:50:DA:C8:A6:5A inet addr:192.168.1.254 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:609275 errors:0 dropped:0 overruns:0 frame:0 TX packets:397967 errors:38 dropped:0 overruns:0 carrier:39 collisions:0 txqueuelen:100 Interrupt:11 Base address:0xd800 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:3924 Metric:1 RX packets:99 errors:0 dropped:0 overruns:0 frame:0 TX packets:99 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0
Pada dasarnya, hampir semua distro Linux sudah mengaktifkan modul kernel untuk pengenalan kartu jaringan.
Jika ternyata kernel belum mengenali kartu jaringan anda, yang ditunjukkan dengan menampilkan "lo" tanpa eth0. Anda bisa mengaktifkannya dengan membuka /etc/rc.d/rc.modules.
Jika anda tidak dapat menemukan /etc/rc.d/rc.modules., anda bisa mencarinya di /lib/modules/net atau di /etc/conf.modules untuk melihat konfigurasi modul-modul yang aktif. Sebagaimana modul kartu jaringan di /lib/modules/net berikut ini: 15. masaji@masaji:/lib/modules/2.2.18/net $> ls16. 3c501.o comx-proto-lapb.o hp100.o sb1000.o17. 3c503.o comx-proto-ppp.o ibmtr.o sbni.o18. 3c505.o comx.o ipddp.o scc.o19. 3c507.o cops.o ircomm.o sdla.o20. 3c509.o cosa.o irda.o sdladrv.o21. 3c515.o cs89x0.o irda_deflate.o sealevel.o22. 3c59x.o de4x5.o irlan.o shaper.o23. 3c90x.o de600.o lance.o sis900.o24. 6pack.o de620.o lanstreamer.o sk98lin.o25. 8139too.o depca.o lapbether.o skfp.o26. 82596.o dgrs.o lne390.o sktr.o27. 8390.o dlci.o ltpc.o slhc.o28. ac3200.o dmascc.o mkiss.o slip.o29. acenic.o dmfe.o n2.o smc-ultra.o30. arc-rimi.o dummy.o ne.o smc-ultra32.o31. arcnet.o e100.o ne2k-pci.o smc9194.o32. arlan-proc.o e1000.o ne3210.o soundmodem.o33. arlan.o e2100.o ni5010.o starfire.o34. at1700.o eepro.o ni52.o strip.o35. baycom_epp.o eepro100.o ni65.o syncppp.o36. baycom_par.o eexpress.o old_tulip.o tlan.o37. baycom_ser_fdx.o epic100.o olympic.o tulip.o38. baycom_ser_hdx.o eql.o pc300.o via-rhine.o39. bonding.o es3210.o pci-scan.o wanpipe.o40. bpqether.o eth16i.o pcnet32.o wanxl.o41. bsd_comp.o ethertap.o plip.o wavelan.o42. c101.o ewrk3.o ppp.o wd.o43. com20020.o fmv18x.o ppp_deflate.o x25_asy.o44. com90io.o hamachi.o ppp_mppe.o yam.o45. com90xx.o hdlc.o pppox.o yellowfin.o46. comx-hw-comx.o hdlcdrv.o rcpci.o z85230.o47. comx-hw-locomx.o hostess_sv11.o rl100a.o48. comx-hw-mixcom.o hp-plus.o rrunner.o49. comx-proto-fr.o hp.o rtl8139.o
Kemudian untuk mengaktifkannya, anda bisa mengetikkan perintah:root@masaji:~ $> modprobe ne2k-pci
Untuk menyertakannya ke dalam modul, sehingga setiap saat bisa dijalankan secara otomatis pada saat start komputer, sertakan ke dalam file conf.modules. Misalnya sebagaimana contoh di bawah ini:52. masaji@masaji:/etc $> more conf.modules53. #54. # Copyright (c) 1996-2000 SuSE GmbH Nuernberg, Germany. All rights reserved.55. #56. # Author: Hubert Mantel <
mantel@suse.deThis email address is being protected from spam bots, you need Javascript enabled to view it>, 1996-200057. #58. # Configuration file for loadable modules; used by modprobe and kerneld#59. # Aliases - specify your hardware60. alias eth1 off61. alias tr0 off62. alias scsi_hostadapter off63. alias fb0 off64. # only used for Mylex or Compaq Raid as module65. alias block-major-48 off66. alias block-major-49 off67. alias block-major-72 off68. alias block-major-73 off69. # only needed for fifth and sixth IDE adaptor70. alias block-major-56 off71. alias block-major-57 off72. # mouse (for older busmice)73. alias char-major-10 off74. alias parport_lowlevel parport_pc75. options parport_pc io=0x378 irq=none,none76. ;77. ------------dipotong---------------78. ;79. # post-install paride insmod frpw80. # YaST2: Network card81. alias eth0 ne2k-pci
Mengaktifkan Alamat IP Ethernet
Langkah selanjutnya, adalah mengaktifkan alamat IP ethernet, sehingga komputer kita bisa dikenal oleh server & komputer lain pada jaringan. Untuk mengaktifkan alamat IP ethernet, anda bisa mengetikkan perintah di bawah ini:

root@masaji:~ $> ifconfig eth0 192.168.1.1 broadcast 192.168.1.255 netmask 255.255.255.0

Untuk mengaktifkan konfigurasi alamat IP eth baru kita, jalankan script /etc/rc.d/init.d/network dengan option 'restart', seperti di bawah ini:

root@masaji:~ $> /etc/rc.d/init.d/network restart

Agar alamat ip komputer kita bisa berjalan secara otomatis, maka perintah ifconfig tsb. di atas perlu dimasukkan kedalam skrip khusus. Untuk beberapa distribusi bisa dimasukkan kedalam rc.local. Sedangkan distro SuSE terdapat dalam file /etc/rc.config. Adapun contohnya adalah seperti berikut ini:
## IP Adresses#IPADDR_0="192.168.1.1"IPADDR_1=""IPADDR_2=""IPADDR_3="" ## network device names (e.g. "eth0")#NETDEV_0="eth0"NETDEV_1=""NETDEV_2=""NETDEV_3="" ## parameteres for ifconfig, simply enter "bootp" or "dhcpclient" to use the# respective service for configuration# sample entry for ethernet:# IFCONFIG_0="192.168.81.38 broadcast 192.168.81.63 netmask 255.255.255.224"#IFCONFIG_0="192.168.1.1 broadcast 192.168.1.255 netmask 255.255.255.0"IFCONFIG_1=""IFCONFIG_2=""IFCONFIG_3=""
Sampai di sini selesailah sudah setting jaringan Linux tahap awal, jika anda menghendaki mempunyai virtual domain sendiri yang dikenal oleh komputer tetangga sebelah (pak RT), silakan masuk ke tahap server DNS.

Setting Server DNS
DNS merupakan singkatan dari Domain Name Server, merupakan sebuah database yang berisi daftar seluruh nama komputer yang terhubung ke jaringan lokal (intranet).

Gambarannya, jika anda mempunyai jaringan komputer yang berisi 5 pc yang terhubung ke komputer server, dan anda ingin menghubungi server melalui browser secara intranet (lokal) ke alamat http://server.net, pc anda akan mencarinya dulu di /etc/resolc.conf untuk mencari nama komputer server. Setelah terhubung, name server akan meneruskan ke database root, jika ketemu maka server akan merespon balik, dengan memberikan informasi mesin yang menggunakan nama server.net ke pc anda

Untuk membuat sebuah server DNS, pertama kali anda harus menginstalasi bind versi 8.2.x, dengan perintah:

rpm -ivh bind8-8.2.3-36.rpm

Setelah terinstalasi, sekarang silakan anda mengedit file /etc/resolv.conf, isinya seperti berikut ini:
search .domain nama.isp.andadomain server.netnameserver 202.x.x.xnameserver 192.168.1.1
Kemudian silakan edit file /etc/named.conf, isinya seperti berikut ini:
/* sample configuration file for BIND 8.1 or later * should be installed as /etc/named.conf * * Author: Florian La Roche */ ## overall options of the server#options { directory "/var/named"; # the default is to fail, if the master file is not correct check-names master warn; pid-file "/var/run/named.pid"; datasize default; stacksize default; coresize default; files unlimited; recursion yes; multiple-cnames no; // if yes, then a name my have more // than one CNAME RR. This use // is non-standard and is not // recommended, but it is available // because previous releases supported // it and it was used by large sites // for load balancing. # the default is to ask the forwarders and if they fail # try to find the answer yourself, this will only ask the forwarders #forward only; # list of DNS servers to ask #forwarders { # 192.168.1.1; # 192.168.1.2; # 192.168.1.3; #}; # the default is to listen on port 53 on all available interfaces # you can also give a detailed list: #listen-on { 5.6.7.8; }; #listen-on port 1234 { !1.2.3.4; 1.2/16; };}; ## do not be verbose about these problems...##logging {# category lame-servers { null; };# category cname { null; };#}; ## predefined access control lists (acl):# "any" allows all hosts# "none" denies all hosts# "localhost" allows the IP adresses of all interfaces of the system# "localnets" allows any host on a network of the local interfaces## defining an additional ACL:#acl can_download { 192.168.0.17; 192.168.0.18; }; ## The server statement defines the characteristics to be associated with# a remote name server.## Marking a server as bogus will prevent queries to that server.#server 192.168.0.128 { bogus yes; }# If the other name server has also BIND 8.1 or newer installed, you# can allow compacter zone transfers with this statement.#server 192.168.0.128 { transfer-format many-answers; } zone "." IN { type hint; file "root.hint";}; zone "localhost" IN { type master; file "localhost.zone"; check-names fail; allow-update { none; };}; zone "0.0.127.in-addr.arpa" IN { type master; file "127.0.0.zone"; check-names fail; allow-update { none; };}; ## a master zone##zone "isc.org" IN {# type master;# file "isc.org";# # by default, any host can receive zone transfers# #allow-transfer { any; };# notify yes;#}; ## a slave zone##zone "isc.org" IN {# type slave;# file "slave/db.isc.org";# masters { 192.168.0.128; };#};

Kemudian, sisipkan perintah berikut ini:forwarders { x.x.x.x; y.y.y.y; };,

Dimana:x: merupakan server utama, dany: merupakan server kedua

Pada contoh di atas, kalimat forwarders, sudah tersedia. Anda tinggal menghilangkan tanda # dan mengubah nomor ip sesuai dengan komputer anda.

Untuk memastikan server DNS berjalan pada saat komputer dinyalakan, ketikkan perintah berikut:

root@masaji:~ $> chkconfig named on

Kemudian jalankan server DNS, dengan mengetikkan perintah:

/etc/rc.d/init.d/named start

Agar komputer anda dikenal nama doamin-nya oleh server dan sebaliknya isikan nama domain komputer anda pada server atau nama domain server pada komputer anda ke dalam file /etc/hosts, seperti tampak pada contoh di bawah ini:
## hosts This file describes a number of hostname-to-address# mappings for the TCP/IP subsystem. It is mostly# used at boot time, when no name servers are running.# On small systems, this file can be used instead of a# "named" name server.# Syntax:## IP-Address Full-Qualified-Hostname Short-Hostname## special IPv6 addresses 127.0.0.1 localhost192.168.1.2 masaji.net masaji192.168.1.1 server.net server::1 localhost ipv6-localhost ipv6-loopbackfe00::0 ipv6-localnet ff00::0 ipv6-mcastprefixff02::1 ipv6-allnodesff02::2 ipv6-allroutersff02::3 ipv6-allhosts
Sampai di sini pc anda sudah bisa berhubungan ke server dan sebaliknya. Namun, jika anda ingin mempunyai server web, server ftp dan server mail sendiri, ikuti langkah selanjutnya.

Teknik Hubungan Dial-up ke Internet
Persiapan Interface & DNS untuk sambungan ke Internet
Pada bagian ini akan dijelaskan beberapa perangkat yang dapat membantu server anda untuk men-dial ISP. Juga akan diterangkan cara untuk menjaga agar kerahasiaan account yang anda miliki agar tidak dipergunakan oleh pihak lain yang tidak bertanggung jawab. Namun sebelum anda melakukan koneksi sebaiknya anda cek terlebih dahulu setting DNS (Doman Name Server). Biasanya setting tersebut ada di file /etc/resolve.conf agar di set supaya name server (NS) ISP menjadi salah satu acuan pada saat proses resolve nama. Di samping itu, anda juga bisa memberikan alternatif NS server yang lain yang dapat disertakan dalam file tersebut. Contoh isi dari file /etc/resolve.conf sbb:
search .domain isp1.net.id isp2.net.iddomain isp1.net.id isp2.net.idnameserver 202.xxx.xxx.xxxnameserver 202.yyy.yyy.yyynameserver 202.zzz.zzz.zzz
Untuk melakukan pengecekkan apakah anda atau komputer server anda yang menggunakan SO Linux sudah terhubung dengan ISP atau belum, anda bisa menggunakan perintah ifconfig yang akan menampilkan setting interface ke jaringan. Yang perlu kita cari adalah setting interface ppp0 yang merupakan interface modem serial yang menghubungkan server Linux ke ISP secara Point-to-Point. Dari informasi tersebut kita nantinya dapat memastikan bahwa memang server anda akan dapat melakukan routing klien ke internet, anda bisa menggunakan perintah route untuk mengecek routing dari server anda menuju ke ISP tujuan. Untuk tampilan yang akan anda peroleh kurang lebih sebagai berikut :
[masaji@server /root]# ifconfig lo Link encap Local Loopbackinet addr 127.0.0.1 Bcast 127.255.255.255 Mask 255.0.0.0UP LOOPBACK RUNNING MTU 2000 Metric 1RX packets 0 errors 0 dropped 0 overrun 0TX packets 0 errors 0 dropped 0 overrun 0 eth0 Link encap:Ethernet HWaddr 00:E0:18:C1:CD:A5 inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:410903 errors:0 dropped:0 overruns:0 frame:5162TX packets:403208 errors:0 dropped:0 overruns:0 carrier:2839collisions:31500 txqueuelen:100 Interrupt:10 Base address:0x1800 ppp0 Link encap Point-to-Point Protocolinet addr 202.152.1.129 P-t-P 202.152.1.44 Mask 255.255.255.255UP POINTOPOINT RUNNING MTU 576 Metric 1RX packets 33 errors 0 dropped 0 overrun 0TX packets 42 errors 0 dropped 0 overrun 0 [root@server /root]# routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.0.1 * 255.255.255.255 UH 0 0 0 eth0202.152.1.129 * 255.255.255.255 UH 0 0 0 ppp0192.168.0.0 * 255.255.255.0 U 0 0 0 eth0127.0.0.0 * 255.0.0.0 U 0 0 0 lodefault 202.159.1.44 0.0.0.0 UG 0 0 0 eth0
Perhatikan pada tampilan perintah route ada paling tidak tiga (3) interface (Iface) yaitu eth0, ppp0 & lo. Eth0 adalah interface ethernet ke LAN yang mempunyai alamat IP 192.168.1.1, ppp0 adalah interface ke ISP yang memperoleh IP dari ISP secara dinamik dalam hal ini yang di peroleh adalah 202.152.1.129, sedang interface lo adalah untuk local loopback dengan IP yang standar 127.0.0.1.

Langkah selanjutnya adalah menghubungkan server anda ke Internet. Salah satu cara yang relatif paling mudah yang bisa dilakukan adalah dengan menggunakan saluran telepon dial-up ke Internet. Pada server yang sederhana dengan jumlah klien yang terbatas dan dengan dana yang terbatas, dapat menggunakan koneksi dial-up yang memiliki biaya lebih murah dibandingkan dengan dedicated line. Jenis koneksi dial-up ke ISP pun sebenarnya berbagai macam antara lain SLIP, CSLIP ataupun PPP, tergantung mode yang di support oleh ISP anda. Kebanyakan ISP di Indonesia mendukung koneksi model PPP.

Untuk hubungan dial-up point-to-point antara Server Linux dengan ISP, sebenarnya kita dapat menggunakan beberapa alternatif pilihan:

kita bisa menggunakan script ppp sederhana (slackware)
bisa menggunakan perangkat lunak dip yang ada di paket instalasi Linux (RedHat),
minicom yang juga sudah terdapat dalam paket Linux (RedHat)
wvdial yang bisa anda download atau anda dapatkan secara gratis di internet, pada distribusi SuSE secara default menggunakan jenis ini.

Dengan pertimbangan kemudahan dan efektifitas penggunaan, maka penulis mengajak anda untuk membahas mengenai penggunaan program aplikasi wvdial.

Koneksi dengan menggunakan wvdial
Cara lain yang lebih mudah untuk menyambungkan diri ke internet, adalah dengan menggunakan program program bantu seperti Kppp, EzPPP, kinternet, atau wvdial, kami hanya akan menjelaskan cara yang terakhir yaitu dengan menggunakan wvdial, karena cara ini tergolong sangat mudah dan terbukti cukup efektif, Wvdial mampu mengantisipasi berbagai bentuk login prompt dan dapat secara otomatis mendeteksi apakah ISP anda menggunakan chap, pap atau tidak dan memberikan option pppd yang paling pas untuk koneksi anda.

Selain itu wvdial mudah dalam penggunaan, pengkonfigurasian untuk melakukan dial ke ISP yang bersangkutan, juga program ini akan secara otomatis mendeteksi bila terjadi kesalahan atau kegagalan pada waktu melakukan dial ke ISP. Bila ada kegagalan atau kesalahan yang menyebabkan koneksi ke ISP terputus, maka program ini tidak akan terhenti akan tetapi akan terus melakukan dial ke ISP secara otomatis hingga program ini benar-benar dihentikan. Bila karena suatu kesalahan di konsol Linux kita melakukan penghentian terhadap program pppd, dan bila program wvdial ini masih berjalan maka secara otomatis program wvdial ini akan terus melakukan dial dan menghidupkan kembali pppd. Bagi anda peminat X-Window, ada juga program seperti ini yang berjalan pada lingkungan KDE yaitu kwvdial.

Program ini dapat anda download dan dapatkan dengan gratis source code-nya, juga informasi mengenai program ini secara lengkap di internet pada situs :http://www.worldvisions.ca/wvdial/

atau site site linux terkemuka seperti www.linuxberg.com, www.freshmeat.com, ataupun www.linux.com. Setelah anda mendownload wvdial, anda akan memperoleh file bernama (kira-kira / atau versi yang lebih baru): wvdial-1.20.tar.gz

silakan anda login sbg root dan kemudian un-compress dan extract file tersebut ke direktori source anda (misalnya di /usr/local/src) dengan cara:
# gunzip wvdial-1.20.tar.gz# tar -xvf wvdial-1.20.tar
nanti anda akan menemukan direktori baru bernama: wvdial-1.20silakan anda masuk ke direktori tersebut :cd wvdial-1.20

di dalam direktori tersebut terdapat beberapa file:
[root@localhost wvdial-1.20]# lsANNOUNCE Makefile configfile/ rules.mk wvdial/ wvver.hCHANGES README debian/ streams/ wvdial.1COPYING.LIB TODO@ ppp.provider utils/ wvdialconf.1
karena wvdial di distribusikan dalam source code, maka anda harus melakukan kompilasi terlebih dahulu agar bisa digunakan. Sebelum anda melakukan kompilasi terhadap wvdial, pastikan terlebih dahulu bahwa anda telah memasang beberapa paket berikut ini:

pppd 2.2.0f , 2.3.5 atau yang lebih baru
gcc 2.7.2 atau lebih baru, dgn g++
GNU make; mungkin anda membutuhkan versi 3.75 atau lebih baru.
Kebanyakan distribusi Linux sekarang SUDAH menyertakan prasyarat tersebut! atau bahkan mungkin sudah menyertakan wvdial kedalam paketnya (Redhat sejak versi 6.1). Nah anda sudah siap untuk mengkompilasi wvdial. Untuk mengkompilasi aplikasi ini dapat anda ikut langkah-langkah berikut :

Buka file hasil download anda yang biasanya dalam bentuk file terkompres.[root@server /root]# tar zxvf wvdial-1.40.tar.gz
Masuk ke dalam direktori tempat kode sumber wvdial tersebut dan lakukan langkah-langkah kompilasi hingga instalasi: 3. [root@server /root]# cd wvdial-1.404. [root@server wvdial-1.40]# make [root@server wvdial-1.40]# make install

Untuk membersihkan sampah dari hasil kompilasi setelah anda selesai menginstalasi program ini dan untuk menghemat tempat penyimpanan anda, anda bisa memberikan perintah :[root@server wvdial-1.40]# make clean
Untuk meng-uninstall program yang telah anda instalasi, anda dapat memberikan perintah :[root@server wvdial-1.40]# make uninstall
secara defaultnya wvdial akan menginstall wvdial dan wvdialconf pada direktori /usr/local/bin dan manual pagenya di /usr/local/man/man1

jika anda menggunakan redhat silakan pindahkan manualnya ke direktori /usr/man/man1 dgn perintah :
mv /usr/man/man1/wvdial* /usr/man/man1
Untuk membuat konfigurasi program wvdial ini, anda dapat membuat file wvdial.conf secara manual yaitu dengan menggunakan editor yang anda senangi pada lingkungan Linux dan anda bisa mencontoh konfigurasi yang ada berikut ini. File ini biasanya disimpan di dalam direktori /etc.
[Dialer Defaults]Modem = /dev/ttyS1 à port tempat modem beradaBaud = 115200Init1 = ATZInit2 = ATQ0 V1 E1 S0=0 &C1 &D2 S11=55 +FCLASS=0Init3 = ATM1Dial Command = ATDT #Stupid Mode = 1 à akan mengeksekusi pppd tanpa menunggu loginNew PPPD = 1Phone = 080989999Username = telkomnet@instanPassword = telkom [Dialer ISP1]Phone = 564645Username = userkuPassword = passku [Dialer ISP2]Phone = 564647Username = usernyaPassword = passnya
Selain itu, anda juga dapat membuat file konfigurasi tersebut dengan menggunakan program yang memang sudah disediakan untuk membuat konfigurasi secara otomatis dengan sekalian mendeteksi keberadaan modem yang ada pada komputer anda beserta dengan konfigurasi dari modem tersebut. Anda bisa menggunakan program wvdialconf.
[root@masaji /root]# wvdialconf /etc/wvdial.conf
Perintah tersebut akan membuat file wvdial.conf baru dalam direktori /etc dengan konfigurasi modem yang berhasil dideteksi oleh program tersebut. Meskipun demikian anda tetap perlu mengedit untuk memasukkan beberapa informasi untuk melakukan dial ke ISP anda.

Untuk menjaga keamanan dari user anda dan password anda agar tidak digunakan oleh orang lain, anda dapat melindungi file wvdial tersebut dengan mengubah hak akses dan kepemilikannya sehingga hanya anda sebagai super user (root) yang bisa membaca dan menulis ke dalam file konfigurasi tersebut.

Dalam file konfigurasi tersebut terdapat beberapa macam dialer yang bisa kita gunakan dengan konfigurasi yang berbeda. Ini dimaksudkan agak anda dapat memasukkan informasi mengenani beberapa ISP yang berbeda. Untuk penamaan dialer terserah dari keinginan anda namun satu hal yang perlu diperhatikan bahwa pada setiap konfigurasi terdapat satu dialer default dengan nama Default dimana bila kita mengeksekusi program ini jika tidak ada nama unik yang menandakan dialer mana atau ISP mana yang kita dial maka secara otomatis program akan mengambil informasi yang terdapat dalam konifgurasi dalam tag ini.


Sumber: http://noc.unila.ac.id/index.php?option=com_content&task=view&id=87&Itemid=68

Isu-isu Hukum Seputar GNU/LINUX

UU Haki dan Open SourceDiposting pada Senin, 16 Juni @ 14:26:13 JAVT Berikut artikel tentang Undang-Undang HAKI yang akan efektif berlaku mulai Tgl 29 Juli 2003. Arikel ini ditulis oleh Bpk Aulia Adnan.Isu-isu Hukum Seputar GNU/LINUX Muhammad Aulia Adnan# Kecenderungan yang terdapat pada saat ini adalah makin banyaknya perusahan atau perorangan yang menggunakan Gnu/Linux sebagai platform dalam menjalankan bisnisnya merupakan sebuah trend yang mempunyai kecenderungan terus yang meningkat dikemudian hari. Hal ini dapat kita lihat dari makin banyaknya vendor-vendor mem-bundle Gnu/Linux dalam perangkat hardwarenya misalnya, HP/Compaq, Dell, IBM. Namun, kecenderungan ini juga menimbulkan sebuah keragu-raguan mengenai implikasi hukum dari penggunaan program komputer berbasis Gnu/Linux atau free software. Keragu-raguan ini terutama karena kurangnya pengetahuan mengenai istilah "free software" ataupun “copyleft”. Istilah-istilah ini tampaknya kurang dapat dimengerti dengan mudah oleh berbagai kalangan. Hal ini salah satunya disebabkan karena kita selama ini telah membiasakan diri dengan hanya mengenal istilah "copyright" /hak cipta dan lisensi terbatas atas penggunaan suatu karya cipta (“EULA”/End User License Agreement) dan masih janggal dengan program komputer bebas ("free software"). Ketidakmengertian akan konsep dari free software ini menimbulkan keresahan misalnya mengenai apakah dengan menggunakan sebuah perangkat lunak yang termasuk dalam kategori free software maka telah terjadi pelanggaran hak cipta, atau apakah seorang pengembang yang mengembangkan suatu program komputer dapat melisensikan karya ciptanya baik dengan menggunakan GPL dan juga dengan menggunakan lisensi proprietary. Ketidakpastian ataupun kebimbangan dari segi hukum ini telah merupakan suatu hal yang menyebabkan perusahaan bimbang dalam menggunakan program komputer berbasis free software pada umumnya atau Gnu/linux pada khususnya. Kepastian dalam bidang hukum terutama dalam bidang hak cipta berkaitan dengan aspek penggunaan dan juga pengembangan free software dapat menjadi suatu insentif dalam perkembangan Gnu/linux di Indonesia. Pada saat ini Indonesia telah memiliki sebuah perangkat perundang-undangan baru yang berkaitan dengan hak cipta yaitu Undang-undang Nomor 19 tahun 2002 tentang Hak Cipta. Peraturan perundang-undangan ini memiliki beberapa pengaturan baru yang dimaksudkan untuk mengantisipasi perkembangan teknologi pada saat ini. Beberapa hal baru yang diatur dalam perangkat perundang-undangan ini antara lain; diberikan perlindungannya kepada program komputer secara menyeluruh baik ia dalam bentuk Source Code atau Object Code, Anti Circumvention, Digital Rights Management dan lain sebagainya. Undang-undang hak cipta inilah yang menjadi dasar perlindungan hukum dari perlindungan hukum bagi program komputer secara umum dan Gnu/Linux secara khusus. 1.Pendahuluan Program komputer secara umum dapat kita kategorikan sebagai sebuah karya cipta dan oleh karenanya mendapat perlindungan hak cipta. Hal ini seperti yang diatur dalam Pasal 12(1) undang-undang No. 19 tahun 2002 tentang Hak cipta. Lebih lanjut Undang-undang Hak Cipta No. 19 tahun 2002 memberikan perlindungan hukum terhadap program komputer baik pada program komputer yang berbentuk Kode Sumber (“Source Code”) maupun program aplikasinya (sic!) seperti yang diatur dalam pasal 72(3). Pengaturan yang dilakukan oleh Undang-undang No. 19 tahun 2002 berarti Undang-undang tersebut telah mengakomodir sifat dualisme dari program Komputer yaitu ia dapat berbentuk kode sumber ataupun kode objek seperti yang diatur dalam WCT (WIPO Copyright Treaty). Pasal 72(3)Yang dimaksud dengan memperbanyak penggunaan adalah menggandakan atau menyalin program Komputer dalam bentuk kode sumber (source code) atay program aplikasinya. Yang dimaksud kode sumber adalah sebuah instruksi (file) program yang berisi pernyataan-pernyataan (statements) pemrograman, kode-kode instruksi/perintah, fungsi, prosedur dan objek yang dibuat oleh seorang pemrogram (programmer) Terdapat sedikit kekurangan disini, berdasarkan sifat alamiah dari sebuah program komputer, maka sebenarnya secara umum program Komputer berdasarkan bentuknya terbagi menjadi 2 buah bentuk yaitu dalam bentuk Source Code (Kode Sumber) maupun dalam bentuk Kode Objek (Object Code). Kode Sumber merupakan ekspresi dari si pencipta, dimana pencipta menuliskan kode-kode (codes) atau merancang kode tersebut sehingga memungkinkan sebuah program Komputer melakukan suatu perintah tertentu. Kode Sumber ini dapat dimengerti dengan mudah oleh seorang manusia yang mempunyai keahlian tertentu, namun tidak mungkin dimengerti oleh program komputer yang akan menjalankan program komputer tersebut. Oleh karena itu, program Komputer yang masih berbentuk Kode Sumber tersebut haruslah di-compile sehingga ia dapat dimengerti oleh Komputer yang akan menjalankan progam tersebut. Kode Sumber yang telah di-compile tersebut dinamakan sebagai Kode Objek (“Object Code”). Object Code ini oleh Undang-undang No. 19 tahun 2002 disebut sebagai program aplikasi, suatu istilah yang kurang tepat sebagai padanan dari Object Code. Berdasarkan hal ini maka perlidungan hukum yang diberikan kepada sebuah program komputer telah diberikan secara menyeluruh sesuai dengan sifat dasar dari program komputer itu sendiri. Pencipta sebagai pemilik hak cipta atas program komputer yang dibuatnya dapat memberikan hak kepada pihak lain untuk menggunakan/menyebarluaskan/memodifikasi program komputer buatannya dengan menggunakan mekanisme lisensi (pasal 45(1) dan pasal 2(1) Undang-undang No. 19 tahun 2002). Lisensi merupakan perangkat hukum yang berbeda dibandingkan dengan pengalihan hak cipta. Pihak yang mendapatkan lisensi program komputer (licensee) bukan merupakan pemilik dari program komputer. Lisensi hanyalah merupakan sebuah izin yang diberikan oleh pemilik hak cipta kepada pihak lain untuk menggunakan beberapa hak yang dimiliki oleh pencipta dan sama sekali bukan merupakan pengalihan pemilikan atas hak cipta. Pencipta tetap pemilik hak cipta sepanjang hak cipta tersebut belum dialihkan. Pencipta, kecuali diatur sebaliknya, tetap dapat menjalankan berbagai hak-hak yang dimilikinya. Hak ini misalnya dalam hal terjadinya pelanggaran atas hak cipta, maka pihak yang berhak melakukan penuntutan adalah pihak pencipta dan bukan pihak penerima lisensi. Gnu/Linux secara umum (kebanyakan) menggunakan GPL (Gnu General Public License) yang dibuat oleh Free Software Foundation sebagai mekanisme pemberian lisensi atas sebuah program komputer. Penggunaan GPL (mekanisme lisensi) ini menyiratkan bahwa pendapat bahwa Gnu/Linux bertentangan dengan hak cipta adalah tidak benar. Gnu/linux tetap menggunakan mekanisme perlindungan hukum yang berupa hak cipta dan juga menggunakan mekanisme lisensi dalam menyebarluaskan program komputer. Selain dengan menggunakan GPL, terdapat beberapa macam lisensi yang dipergunakan oleh Program Komputer Bebas, misalnya lisensi BSD atau Mozilla. 2.Free SoftwareGPL memberikan kebebasan (freedom) bagi pihak penerima lisensi. Kebebasan yang diberikan adalah kebebasan untuk mengubah, mendistribusikan dan mengembangkan program komputer. Dengan GPL, penerima lisensi diberikan kebebasan dalam mendapatkan Kode Sumber. Disinilah salah satu letak perbedaan antara Program Komputer Bebas (“Free Software”) dengan Program Komputer tidak Bebas (“Proprietary Software”), dimana Program Komputer tidak Bebas biasanya membatasi hak-hak yang diberikan kepada penerima lisensi seperti tidak diberikannya hak atas akses terhadap Kode Sumber, tidak diperkenankannya mengembangkan program dan tidak diperkenankannya mendistribusikan ulang program. Pemberian berbagai hak yang biasanya tidak diberikan oleh Program Komputer tidak Bebas menyebabkan adanya anggapan bahwa Program Komputer Bebas melanggar hak cipta atau setidak-tidaknya menentang adanya hak cipta atas program komputer. Pemberian berbagai hak yang dimiliki oleh pencipta dalam lisensi Program Komputer Bebas tidak menyebabkan pencipta kehilangan haknya terhadap ciptaannya. Pencipta merupakan pihak yang berhak atas ciptaan dan juga berhak untuk melakukan gugatan apabila terdapat pihak yang melanggar hak ciptanya. GPL menggunakan perangkat hak cipta dalam menyebarluaskan Program Komputer Bebas. Adanya pernyataan kepemilikan hak cipta (copyright notice) pada setiap program komputer yang mempergunakan GPL menunjukan bahwa program ini mendapatkan perlindungan hak cipta seperti program komputer yang biasa kita kenal. Indikasi penggunaan hak cipta juga dapat dilihat pada klausula yang mengatur mengharuskan penggunaan lisensi GPL terhadap pengembangan atau program komputer turunan. Keharusan penggunaan GPL akan menambah banyak program komputer yang menggunakan GPL tertutup kemungkinan adanya pihak yang menggunakan dan menyebarluaskan Program Komputer Bebas tanpa menggunakan GPL. Pelanggaran terhadap klausula ini merupakan pelanggaran hak cipta. Konsep 'kebebasan' ini sering menimbulkan kebimbangan dan ketidakpastian bagi segelintir orang, sehingga seringkali terdapat pandangan bahwa program komputer berbasis free software melanggar hak cipta atau tidak mengormati hak cipta orang lain atau berusaha untuk mengurangi perlidungan yang diberikan oleh hak cipta. Terdapat pula anggapan bahwa interaksi antara program komputer tidak bebas dengan Program Komputer Bebas, misalnya Linux, akan menyebabkan program proprietary tersebut harus dibuka Kode Sumbernya. Pendapat-pendapat ini tidak benar. Pendapat ini mungkin berawal dari ketidakmengertian mengenai lisensi yang digunakan dalam program komputer berbasis Linux ketidakmengertian ini ditambah lagi oleh banyak jenis lisensi yang termasuk dalam kategori Program Komputer Bebas. Perlindungan hukum bagi program komputer yang dilisensikan dengan menggunakan GPL adalah sama seperti halnya program komputer lain yang biasa kita kenal yaitu hak cipta. Pembuat program Komputer dari Program Komputer Bebas mempunyai berbagai hak seperti yang diatur dalam perangkat perundangundangan hak cipta. Perbedaan utama antara Program Komputer Bebas dengan Program Komputer tidak Bebas terletak pada lisensi atas kedua jenis program komputer tersebut. Pencipta Program Komputer Bebas memberikan hak kepada pihak lain untuk menyalin, merubah dan mendistribusikan kembali program tersebut dengan menggunakan lisensi. Lisensi dari Program Komputer tidak Bebas cenderung untuk memberikan berbagai batasan-batasan atau memberikan sedikit hak kepada penerima lisensi. Penerima lisensi biasanya hanya berhak atas penggunaan binary code dari program Komputer tanpa mempunyai hak untuk mendapatkan Kode Sumber. Hambatan lain misalnya lisensi penggunaan program komputer tersebut terbatas pada sebuah komputer saja (lisensi per processor). Pengkategorian Program Komputer Bebas sebagai anti atas hak atas kekayaan intelektual (HAKI) atau lebih khususnya hak cipta, merupakan suatu hal yang kurang tepat. Bahkan terdapat juga anggapan, Program Komputer Bebas disalahartikan sebagai sebuah konsep yang tidak mengakui hak cipta atau tidak menghormati hak cipta. Hak cipta oleh Program Komputer Bebas digunakan untuk melindungi dan juga menyebarluaskan Program Komputer Bebas (dengan menggunakan klausula Copyleft). Adanya anggapan-anggapan yang tidak benar ini mengakibatkan timbulnya asumsi dari beberapa kalangan bahwa Program Komputer Bebas adalah bertentangan atau melanggar hukum. GNU Project tidak menentang terhadap adanya hak cipta terhadap program Komputer namun lebih kearah penentangan terhadap adanya Program Komputer tidak Bebas (proprietary), yang mempunyai kecenderungan untuk merahasiakan Kode Sumber. Publik seharusnya mempunyai hak untuk menyalin program komputer secara bebas, dan juga mempunyai hak untuk mengakses Kode Sumber, sehingga publik dapat membaca Kode Sumber, memperbaiki, mengadaptasi dan juga memperbaikinya tidak hanya mempergunakan program komputer saja. Keharusan menyertakan Kode Sumber dalam memberikan kebebasan terhadap publik merupakan persyaratan yang disertakan dalam GPL. Kerahasiaan dari Kode Sumber dengan hanya mendistribusikan Binary Code pada dasarnya merupakan diluar ruang lingkup hak cipta; ketiadaan Kode Sumber pada Program Komputer tidak Bebas bukan dikarenakan adanya hak cipta, namun karena dirahasiakan. Hak cipta atas program komputer bukan merupakan suatu hal yang ditentang oleh Program Komputer Bebas. Hal ini dapat dilihat bahwa Program Komputer Bebas dilindungi dengan menggunakan hak cipta. Apabila lebih lanjut diamati apabila hak cipta dianggap sebagai sesuatu yang buruk bagi Program Komputer Bebas maka seharusnya Program Komputer Bebas tidak mempergunakan perangkat hukum hak cipta sebagai perlindungannya. Penggunaan hak cipta sebagai perlindungan hukum sementara disisi lain menggunakan hak cipta sebagai perangkat untuk melawan prinsip hak cipta menciptakan sebuah kontradiksi yang secara logika tidak dapat diterima. Berdasarkan hal tersebut dapatlah diambil kesimpulan bahwa Program Komputer Bebas tidak menentang adanya hak cipta atas program komputer. Ancaman terhadap kebebasan (freedom) adalah berasal dari kerahasiaan seperti yang diterapkan oleh Program Komputer tidak Bebas dan bukan bersumber dari hak cipta. Ketiadaan hak cipta atas program komputer (misalnya karena tidak diperkenankan oleh aturan perundang-undangan) tidak menyebabkan menyebabkan terciptanya kebebasan bagi program komputer. Para pihak dengan ketiadaan perlindungan hak cipta dapat dengan segera mengganti perlindungan yang ada dengan menggunakan perjanjian. Perjanjian ini didasarkan oleh hukum perdata yang biasa kita kenal. Jadi, bahkan ketiadaan perlindungan hak cipta pun tidak menyelesaikan masalah. Permasalahan utama adalah adanya kerahasiaan terhadap Kode Sumber. Penggunaan lisensi ini juga merupakan pembeda antara Program Komputer Bebas dengan program komputer public domain. Lisensi memungkinkan pencipta dapat mengkontrol bagaimana program komputer ciptaannya dipergunakan, diubah, disebarluaskan dengan menggunakan lisensi, sedangkan apabila pencipta tersebut menjadikan program komputer sebagai public domain , maka terdapat kesulitan dalam mengkontrol program komputer tersebut. Lisensi program komputer yang akan digunakan akan menentukan hak dan kewajiban antara pemberi lisensi dan penerima lisensi. Penggunaan GPL tidak memugkinkan adanya pihak antara (middleman ) mengubah atau menyebarluaskan Program tidak menggunakan GPL atau mengurangi kebebasan yang diberikan oleh pencipta. Sedangkan program komputer yang termasuk dalam kriterian Public Domain tidak memungkinkan adanya hal ini. Terdapat kemungkinan Public Domain tesebut diaku sebagai milik pihak lain dan pihak tersebut melisensikan program dengan berbagai restriksi. Seandainya hal ini terjadi, maka sulit apabila akan dikategorikan sebagai terdapat pelanggaran hak cipta, karena program tersebut merupakan milik umum. Hal ini telah menyebabkan terjadinya pengurangan atau menyebabkan hilangnya kebebasan yang dimiliki oleh masyarakat. Lisensi Program Komputer Bebas (misalnya GPL) memungkinkan pencipta untuk mengontrol penggandaan atau pendistribusian program komputer, misalnya mengharuskan setiap program komputer turunan (derivative) menggunakan lisensi Program Komputer Bebas. Konsep yang dianut oleh GPL tidak memungkinkan adanya pihak ketiga yang mengambil kebebasan dengan melisensikan program yang sebelumnya Program Komputer Bebas dengan menggunakan lisensi selain GPL. Program Komputer Bebas merupakan sebuah program komputer yang memungkinkan setiap orang untuk menggunakan, menyalin dan juga mendistribusikan program komputer tersebut baik dalam bentuk verbatim atau dengan melakukan modikasi, baik secara gratis maupun dengan membayar sejumlah uang. Secara umum, program komputer tersebut harus menyertakan Kode Sumber. Program Komputer Bebas mengacu pada kebebasan dari para pengguna untuk menjalankan, menyalin, mendistribusikan, mempelajari, merubah dan memperbaiki program komputer. Terdapat empat macam kebebasan bagi para pengguna program komputer: 1.Bebas untuk menjalankan (run) program komputer, untuk berbagai tujuan (kebebasan 0); 2.Bebas untuk mempelajari bagaimana program bekerja, dan mengadaptasi program komputer sesuai dengan kebutuhan masing-masing (kebebasan 1). Akses terhadap Kode Sumber merupakan hal yang dipersyaratkan (preconditon ). 3.Bebas untuk mendistribusikan salinan sehingga kita dapat membantu masyarakat (kebebasan 2);dan 4.Kebebasan untuk memperbaiki dan mengeluarkan perbaikan tersebut kepada umum, sehingga mendatangkankeuntungan bagi masyarakat secara keselurahan (kebebasan 3). Akses terhadap Kode Sumber merupakan hal yang dipersyaratkan (preconditon ). Setiap hak yang didapatkan dari lisensi GPL harus kembali diberikan kepada pihak lain dalam meredistribusikan Program Komputer Bebas tersebut. Tidak diperkenankan adanya penambahan batasanbatasan atau restriksi tambahan dalam mendristribusikan ulang program komputer tersebut. Apabila dalam mendistribusikan ulang program komputer terdapat kesulitan dalam mendistribusikan ulang Kode Sumber, maka tidak menyertakan Kode Sumber tersebut didalam setiap salinan. Kode Sumber dari program komputer harus tetap tersedia dan harus disertakan petunjuk bagaimana cara mendapatkannya. Diperkenankan memungut biaya atas biaya penyalinan program komputer, karena bebas disini adalah mengacu pada kebebasan dan bukan pada biaya. Pengutipan biaya atas Program Komputer Bebas diperkenankan misalnya untuk menutup biaya yang dikeluarkan dalam rangka penyalinan dan garansi. Ruang lingkup dari GPL hanyalah terbatas pada penyalinan, pendistribusian dan perbaikan program komputer. GPL tidak mengatur berbagai hal lain selain apa yang terdapat didalam lisensi tersebut. 3.TCPA/Palladium Salah satu hal baru yang terdapat dalam Undang-undang No. 19 tahun 2002 yaitu adanya pengaturan mengenai informasi manajemen hak pencipta (Digital Rights Management) dan juga sarana kontrol teknologi. Adanya aturan baru berkaitan dengan kedua hal tersebut merupakan sebuah langkah maju dalam usaha untuk memberikan perlindungan yang lebih luas kepada suatu karya cipta, mengingat pada saat ini di Indonesia khususnya pembajakan karya cipta dapat kita temui secara meluas. Perkembangan dari teknologi digitalisasi dan juga teknologi internet telah menimbulkan sebuah tantang baru bagi pemberian perlindungan hukum bagi sebuah karya cipta. Maraknya penyalinan dan penyebarluasan secara tidak sah terhadap suatu karya cipta telah menimbulkan tantangan tidak hanya terhadap perlindungan hukum apa yang diberikan atas suatu karya cipta, namun juga bagaimana “mengeksekusi” perlindungan hukum yang diberikan tersebut. Salah satu wujud dari mengeksekusi dari perlindungan hukum bagi suatu karya cipta adalah dengan menggunakan perangkat teknologi baik yang berupa piranti keras (hardware) maupun piranti lunak (software) dalam memberikan perlindungan hukum terhadap suatu karya cipta. Contoh dari penggunaan hardware adalah dengan menggunakan dongles sedangkan contoh dari perlindungan yang menggunakan software cactus. Dengan menggunakan perangkat inilah hak-hak dari pencipta dapat ditegakkan, perangkat ini merupakan upaya preventif dalam menghambat terjadinya penyalinan secara tidak sah. Jadi dengan menggunakan instrumen hukum ini perlindungan hak cipta tidak hanya diberikan pada Karya Cipta saja namun juga memberikan perlindungan hukum bagi perangkat pelindung karya cipta. Article 11 Wipo Copyright Treaty (“WCT”) “Contracting Parties shall provide adequate legal protection and effective legal remedies against circumvention of effective technological measures that are used by authors in connection with the exercise of their rights under this Treaty or the Berne Conevention and that restricts acts, in respect of their works, which are not authorized by the authors or permitted by law.” Pasal 27 Undang-undang No. 19 tahun 2002“Kecuali atas izin Pencipta, sarana kontrol teknologi sebagai pengaman hak Pencipta tidak diperbolehkan dirusak, ditiadakan atau dibuat tidak berfungsi.” Article 12 WCT“(1) Contracting Parties shall provide adequate and effective legal remedies against any person knowingly performing any of the following acts knowing, or with respect to civil remedies having reasonable grounds to know, that it will induce, enable, facilitate or conceal an infringement of any right covered by this Treaty or the Berne Convention: (i)to remove or alter any electronic rights management information without authority; (ii)to distribute, import for distribution, broadcast or communicate to the public without authority, works or copies of works knowing that electronic rights management information has been removed or altered without authority.” Pasal 25 Undang-undang No. 19 tahun 2002 “(1) Informasi elektronik tentang informasi manajemen hak Pencipta tidak boleh ditiadakan atau diubah.” Dari sudut pandangan hukum (perlindungan atas karya cipta) perlindungan yang dibutuhkan oleh suatu karya cipta adalah sebagai berikut: -Terdapat otentifikasi atas pencipta dari sebuah karya cipta (tujuan 1), -Dapat memberikan jaminan terhadap integritas dari sebuah karya cipta (tujuan 2), -Penyalinan secara sah, penyebarluasan atau mengkomunikasikan lebih lanjut kepada publik adalah tidak diperkenakan apabila pencipta tidak menghendaki hal tersebut. (tujuan 3). Selain dari sudut pandang tersebut diatas, dalam memberikan perlindungan terhadap karya cipta, seorang pencipta juga mempunyai kepentingan untuk mengkomersialisasikan karya ciptanya secara elektronis. Hal ini tentu saja merupakan hal yang terutama dalam memanfaatkan teknologi digital pada umumnya dan teknologi internet pada khususnya dalam bisnis, misalnya dengan melakukan jual beli buku, program Komputer, musik secara online. Berdasarkan hal tersebut, dalam menjalankan bisnis tersebut diperlukan perlindungan tambahan disamping ketiga perlindungan diatas, yaitu: -Akses terhadap suatu Karya Cipta dapat diberikan secara terbatas kepada pihak-pihak tertentu yang berwenang (tujuan 4), -Segala macam aturan dalam sebuah kontrak, misalnya berupa lisensi dapat disimpan (tujuan 5), -Karya Cipta dapat dengan aman ditransmisikan (tujuan 6), -Pencipta mempunyai kepastian akan adanya pembayaran yang sepadan atas Karya Ciptanya (tujuan 7). Penerapan atau implementasi dari informasi manajemen hak cipta ini seringkali menimbulkan permasalahan terutama berkaitan dengan hak public akan akses terhadap informasi. Implementasi dari DRM dapat menimbulkan ketidakseimbangan dengan membatasi penggunaan oleh masyarakat dengan lebih berpihak kepada pemilik hak cipta sehingga mengakibatkan kerugian bagi publik. Beberapa hal yang patut untuk dipertimbangkan dalam implementasi dari DRM ini antara lain harus mempertimbangkan hak-hak perorangan untuk mendapatkan keuntungan dari teknologi digital. Hal tersebut antara lain, mengubah format dari sebuah karya cipta (misal mengubah format CD menjadi MP3), hak untuk menikmati ditempat yang berbeda (misalnya membuat salinan atas sebuah CD untuk dinikmati di mobil maupun dirumah), dan juga kemampuan untuk mengubah isi dari karya cipta untuk menciptakan karya cipta yang baru. Penerapan penggunaan DRM selain untuk mencegah penggunaan secara tidak sah karya cipta digital dapat juga mencegah penggunaan karya cipta tersebut secara sah. Misalnya CD yang sudah diproteksi dan dibeli secara sah tidak dapat dijalankan pada beberapa perangkat yang dibuat sebelum CD tersebut dikeluarkan. DVD yang sudah dienkripsi tidak dapat dijalankan pada perangkat komputer yang menggunakan Gnu/Linux. Pembuatan progam komputer yang dapat menjalankan DVD yang sudah dienkripsi pada Gnu/Linux dapat menimbulkan sanksi secara hukum, karena dianggap telah menghilangkan sarana control teknologi yang terdapat didalam enkripsi DVD tersebut. Kasus ini dapat kita temui dalam kasus John Johansen yang membuat program Komputer yang dapat menjalankan DVD pada Gnu/Linux. Salah satu bentuk implementasi lain dari DRM ini antara lain yang dikenal sebagai TCPA (Trusted Computing Alliance) dan juga Palladium. TCPA mempunyai tujuan untuk membuat platform komputer masa depan yang akan meningkatkan tingkat kepercayaan (trust) pada sebuat PC. Sedangkan Palladium merupakan program Komputer yang dibuat oleh Microsoft yang merupakan bagian dari Windows dimasa yang akan datang. Program Komputer ini akan menggunakan hardware yang menggunakan TCPA. Secara singkat TCPA merupakan sebuat platform komputer dimana seseorang tidak dapat mengubah atau merusak sebuah program komputer, dan juga program komputer ini dapat berkomunikasi dengan produsen. Hal ini merupakan implementasi dari informasi manajemen hak cipta. Hal ini memungkinkan produsen mencegah lagu yang dibeli untuk dipertukarkan dengan pihak lain, menjalankan DVD pada platform Paladium namun tidak DVD tersebut disalin atau berbagai kemungkinan lain yang berkaitan dengan pembatasan penggunaan karya cipta. TCPA/Palladium juga akan mempersulit penggunaan program Komputer yang tidak sah. Program komputer yang tidak sah dapat dengan mudah dideteksi dan dihapus dari jarak jauh. TCPA dapat menimbulkan kesulitan-kesulitan bagi perkembangan program komputer bebas dikemudian hari. Program Komputer bebas berlandaskan pada asas kegotongroyongan dalam mengembangkan sebuah program Komputer. Apabila program computer bebas hendak ikut serta dalam program TCPA, maka ia harus mensertifikasi program computer tersebut. Sedangkan untuk mendapatkan sertifikasi TCPA, sebuah program Komputer haruslah terlebih dahulu melalui proses sertifikasi, yang harus mengeluarkan biaya yang tidak sedikit. Perlunya biaya yang tidak sedikit dalam mendapatkan sertifikasi ini dapat menyurutkan minat masyarakat dalam mengembangkan program Komputer ini. Apabila tidak terdapat minat atau kemampuan dari masyarakat untuk mendapatkan sertifikasi TCPA, maka program Komputer tersebut tidak dapat secara maksimal suatu hardware yang menggunakan TCPA. Hal lain yang merupakan implikasi dari TCPA adalah sebuah perangkat yang telah mendapat sertifikasi TCPA dapat dengan mudah disetel untuk tidak dapat berhubungan perangkat yang belum/tidak mendapat sertifikasi TCPA. Inkompabilitas ini dapat menyulitkan bagi konsumen dalam memilih perangkat yang akan digunakannya sehingga ia akan terdorong hanya akan menggunakan perangkat yang sudah tersertifikasi. Program Komputer yang berbasis GPL yang notabene dikembangkan secara bersama oleh masyarakat besar kemungkinan tidak mempunyai kemampuan untuk mendapatkan sertifikasi TCPA karena persoalan biaya. Apabila hal ini menjadi kenyataan maka lambat laun program Komputer bebas akan ditinggalkan oleh masyarakat karena program Komputer tersebut tidak kompatibel dengan program Komputer/perangkat lainnya.

Instalasi MySQL pada server Linux

Oleh : Kevin Yank
Dalam uraian berikut ini dijelaskan langkah langkah instalasi perangkat lunak MySQL didalam server bersistem operasi Linux,khususnya Linux RedHat. Setelah download file tar. Anda juga akan diperkenalkan dengan perintah-perintah tar xfz, cd mysql-version, ./configure, make, make install, mysql_install_db, groupadd mysqlgrp, useradd -g mysqlgrp mysqlusr, chown –Rm, editing script msql.server, dan perintah untuk melihat kinerja server MySQL bagus atau jelak berupa perintah mysqladmin -u root status. Tulisan ini gratis dan dapat dicopy atau dibaca oleh anda dimana saja.
MySQL adalah perangkat lunak database gratis yang cocok untuk sistem operasi unix seperti Linux dan FreeBSD. Untuk file distribusi yang cocok dengan Linux bisa diambil dari http://www.mysql.com/ (atau dari salah satu situs mirornya di http://www.mysql.com/downloads/mirrors.html). Download-lah versi stabilnya (ditandai dengan kata "recommended" pada halaman download). Anda bisa mengambil versi "tarball source download", dengan nama file mysql-version.tar.gz.
Selama download, anda perlu memastikan apakah anda login pada root server anda atau hanya ke direktori home anda, agar anda tidak salah memilih direktori untuk instalasi MySQL didalam serve anda. Kecuali anda hanya ingin menginstalasi MySQL dalam direktori home anda sendiri.
Instalasi dimulai dengan membuka file tar yang telah anda download dan memindahkannya ke direktori yang telah dibuat untuk MySQL. Untuk ini ikutilah langkah berikut :
% tar xfz mysql-version.tar.gz perintah ini untuk membuka file tar yang telah anda download.
% cd mysql-version perintah ini dimaksudkan agar anda bisa masuk ke direktori mysql-version yang telah dibuat otomatis ketika membuka file tar.
Setelah anda berada di direktori mysql-version, lakukanlah konfirgurasi perangkat lunak MySQL..Apabila anda belum pernah melakukan instalasi seperti itu. Ikuti langkah berikut ini agar MySQL bisa terinstalasi di direktori /usr/local/mysql:
% ./configure --prefix=/usr/local/mysql Setelah menunggu beberapa saat anda akan melihat command promt. Anda siap melakukan kompilasi perangkat lunak MySQL dengan melakukan perintah :
% make Setelah melalui beberapa tampilan kompilasi otomatis, anda kembali akan melihat promt. Lakukan perintah berikut agar MySQL terinstalasi dalam server anda :
% make install MySQL sekarang sudah terinstalasi, tetapi sebelum melakukan apapun, databasenya perlu diinstalasi juga. Masih dalam direktori yang sama, lakukan perintah berikut ini:
% scripts/mysql_install_db Dengan cara ini, anda telah menghapus direktori dimana anda tadi bekerja, yang hanya berisi file file source dan file temporer saja. Kalaulah anda ingin melakukan langkah reinstall, anda masih bisa melakukannya melalui ekstraksi ulang file mysql-version.tar.gz.
Setelah anda melakukan perintah diatas, MySQL telah terinstalasi dan siap menyimpan informasi anda. Untuk selanjutnya anda perlu membuat user spesial melalui promt root dengan melakukan perintah berikut ini:
% /usr/sbin/groupadd mysqlgrp% /usr/sbin/useradd -g mysqlgrp mysqlusr Secara default, MySQL menyimpan semua informasi database didalam sub direktori var dari direktori MySQL. Kita akan membuat sedemikian rupa sehingga tak ada seorangpun yang bisa mengakses direktori kecuali sudah didaftar sebagai user MySQL terlebih dahulu. Dengan mengikuti langkah berikut tujuan itu bisa dibuat (dengan asumsi anda telah menginstalasi MySQL ke direktori /usr/local/mysql):
% cd /usr/local/mysql% chown -R mysqlusr.mysqlgrp var% chmod -R go-rwx var Sekarang segala sesuaunya sudah terinstalasi dengan baik dan anda siap mengonlinekan server MySQL anda. Agar server itu bisa aktif, dari direktori MySQL, ketikan perintah berikut:
% bin/safe_mysqld --user=mysqlusr & Server MySQL sekarang sudah beroperasi oleh user dan tetap akan beroperasi seperti umumnya server Web atau server FTP sampai komputer anda shut down. Untuk menguji apakah server anda telah beroperasi dengan baik, ketikan perintah berikut:
% bin/mysqladmin -u root status Anda akan melihat tampilan beberapa statistik MySQL server anda. Jika anda melihat ada pesan error, artinya ada sesuatu yang salah. Jika anda melihat kembali langkah instalasi anda, maka anda akan bisa melihat dimana kesalahan anda dan segera diperbaiki.
Jika anda ingin melakukan setup server MySQL secara otomatis, anda harus melakukan setup script mysql.server. Di dalam sub direktori share/mysql dari direktori MySQL, anda akan menemukan sebuah script yang disebut mysql.server yang dapat ditambahkan ke dalam rutin sistem startup anda agar setup otomatis dilakukan.
Misalkan anda sudah melakukan setup user special MySQL untuk menjalankan server MySQL, anda harus melakukan edit script file mysql.server sebelum anda memakainya. Bukalah file itu melalui tex editor anda dan ubahlah seting script mysql_daemon_user dan disesuaikan dengan user yang sudah anda buat tadi: mysql_daemon_user=mysqlusr
Melakukan seting terhadap script tersebut akan memungkinkan anda bisa mengoperasikan MySQl server anda pada saat startup komputer anda. Jika anda tidak memakai Linux RedHat dan anda tidak pasti tahu bagaimana melakukannya, sebaiknya anda bertanya kepada seseorang yang berpengalaman. Dalam Linux RedHat, perintah berikut (mulai dalam direktori MySQL) akan melakukan trik untuk tujuan diatas:
% cp share/mysql/mysql.server /etc/rc.d/init.d/% cd /etc/rc.d/init.d% chmod 500 mysql.server% cd /etc/rc.d/rc3.d% ln -s ../init.d/mysql.server S99mysql% cd /etc/rc.d/rc5.d% ln -s ../init.d/mysql.server S99mysql Sampai sini cukup, dan anda siap melakukan reboot komputer server anda dan menerima status kinerja server seperti yang anda dapatkan diatas untuk melihat apakah server bekerja bagus atau tidak.Selamat mencoba.

Reff : http://www.mysql.com
Translated by : JPN. Sumarno

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.

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 http://mercury.chem.pitt.edu/~angel/LinuxFocus/English/November1997/article7.html. Ditulis untuk versi internasional PGP, tetapi dapat diterapkan secara mudah ke versi AS. Anda mungkin butuh patch bagi versi terbaru Linux, yang tersedia di ftp://sunsite.unc.edu/pub/Linux/apps/crypto.
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.

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.
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.
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)
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.

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.

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

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:
Menggunakan enkripsi non DES untuk password anda. (Membuatnya sulit untuk didekodekan secara brute force)
Menset batasan sumber daya pada seluruh pemakai anda sehingga mereka tidak dapat melakukan serangan Denial of Service (jumlah proses, jumlah memori, dsb)
Memungkinkan shadow password secara on the fly
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

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.

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.)

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.

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.

CFS- Cryptographic File System dan TCFS - Transparent Cryptographic 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/

X11, SVGA dan keamanan tampilan
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.
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.
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/

Modul Kernel Linux

Pengertian Modul Kernel Linux
Modul kernel Linux adalah bagian dari kernel Linux yang dapat dikompilasi, dipanggil dan dihapus secara terpisah dari bagian kernel lainnya saat dibutuhkan. Modul kernel dapat menambah fungsionalitas kernel tanpa perlu me-reboot sistem. Secara teori tidak ada yang dapat membatasi apa yang dapat dilakukan oleh modul kernel. Kernel modul dapat mengimplementasikan antara lain device driver, sistem berkas, protokol jaringan.
Modul kernel Linux memudahkan pihak lain untuk meningkatkan fungsionalitas kernel tanpa harus membuat sebuah kernel monolitik dan menambahkan fungsi yang mereka butuhkan langsung ke dalam image dari kernel. Selain hal tersebut akan membuat ukuran kernel menjadi lebih besar, kekurangan lainnya adalah mereka harus membangun dan me-reboot kernel setiap saat hendak menambah fungsi baru. Dengan adanya modul maka setiap pihak dapat dengan mudah menulis fungsi-fungsi baru dan bahkan mendistribusikannya sendiri, di luar GPL.
Kernel modul juga memberikan keuntungan lain yaitu membuat sistem Linux dapat dinyalakan dengan kernel standar yang minimal, tanpa tambahan device driver yang ikut dipanggil. Device driver yang dibutuhkan dapat dipanggil kemudian secara eksplisit maupun secara otomatis saat dibutuhkan.
Terdapat tiga komponen untuk menunjang modul kernel Linux. Ketiga komponen tersebut adalah manajemen modul, registrasi driver, dan mekanisme penyelesaian konflik. Berikut akan dibahas ketiga komponen pendukung tersebut.
Manajemen Modul Kernel Linux
Manajemen modul akan mengatur pemanggilan modul ke dalam memori dan berkomunikasi dengan bagian lainnya dari kernel. Memanggil sebuah modul tidak hanya memasukkan isi binarinya ke dalam memori kernel, namun juga harus dipastikan bahwa setiap rujukan yang dibuat oleh modul ke simbol kernel atau pun titik masukan diperbaharui untuk menunjuk ke lokasi yang benar di alamat kernel. Linux membuat tabel simbol internal di kernel. Tabel ini tidak memuat semua simbol yang didefinisikan di kernel saat kompilasi, namun simbol-simbol tersebut harus diekspor secara eksplisit oleh kernel. Semua hal ini diperlukan untuk penanganan rujukan yang dilakukan oleh modul terhadap simbol-simbol.
Pemanggilan modul dilakukan dalam dua tahap. Pertama, utilitas pemanggil modul akan meminta kernel untuk mereservasi tempat di memori virtual kernel untuk modul tersebut. Kernel akan memberikan alamat memori yang dialokasikan dan utilitas tersebut dapat menggunakannya untuk memasukkan kode mesin dari modul tersebut ke alamat pemanggilan yang tepat. Berikutnya system calls akan membawa modul, berikut setiap tabel simbol yang hendak diekspor, ke kernel. Dengan demikian modul tersebut akan berada di alamat yang telah dialokasikan dan tabel simbol milik kernel akan diperbaharui.
Komponen manajemen modul yang lain adalah peminta modul. Kernel mendefinisikan antarmuka komunikasi yang dapat dihubungi oleh program manajemen modul. Saat hubungan tercipta, kernel akan menginformasikan proses manajemen kapan pun sebuah proses meminta device driver, sistem berkas, atau layanan jaringan yang belum terpanggil dan memberikan manajer kesempatan untuk memanggil layanan tersebut. Permintaan layanan akan selesai saat modul telah terpanggil. Manajer proses akan memeriksa secara berkala apakah modul tersebut masih digunakan, dan akan menghapusnya saat tidak diperlukan lagi.
Registrasi Driver
Untuk membuat modul kernel yang baru dipanggil berfungsi, bagian dari kernel yang lain harus mengetahui keberadaan dan fungsi baru tersebut. Kernel membuat tabel dinamis yang berisi semua driver yang telah diketahuinya dan menyediakan serangkaian routines untuk menambah dan menghapus driver dari tabel tersebut. Routines ini yang bertanggung-jawab untuk mendaftarkan fungsi modul baru tersebut.
Hal-hal yang masuk dalam tabel registrasi adalah:
device driver
sistem berkas
protokol jaringan
format binari
Resolusi Konflik
Keanekaragaman konfigurasi perangkat keras komputer serta driver yang mungkin terdapat pada sebuah komputer pribadi telah menjadi suatu masalah tersendiri. Masalah pengaturan konfigurasi perangkat keras tersebut menjadi semakin kompleks akibat dukungan terhadap device driver yang modular, karena device yang aktif pada suatu saat bervariasi.
Linux menyediakan sebuah mekanisme penyelesaian masalah untuk membantu arbitrasi akses terhadap perangkat keras tertentu. Tujuan mekanisme tersebut adalah untuk mencegah modul berebut akses terhadap suatu perangkat keras, mencegah autoprobes mengusik keberadaan driver yang telah ada, menyelesaikan konflik di antara sejumlah driver yang berusaha mengakses perangkat keras yang sama.
Kernel membuat daftar alokasi sumber daya perangkat keras. Ketika suatu driver hendak mengakses sumber daya melalui M/K port, jalur interrupt, atau pun kanal DMA, maka driver tersebut diharapkan mereservasi sumber daya tersebut pada basis data kernel terlebih dahulu. Jika reservasinya ditolak akibat ketidaktersediaan sumber daya yang diminta, maka modul harus memutuskan apa yang hendak dilakukan selanjutnya. Jika tidak dapat melanjutkan, maka modul tersebut dapat dihapus.

Lisensi Linux

Kernel Linux terdistribusi di bawah Lisensi Publik Umum GNU (GPL), dimana peraturannya disusun oleh Free Software Foundation. Linux bukanlah perangkat lunak domain publik: Public Domain berarti bahwa pengarang telah memberikan copyright terhadap perangkat lunak mereka, tetapi copyright terhadap kode Linux masih dipegang oleh pengarang-pengarang kode tersebut. Linux adalah perangkat lunak bebas, namun: bebas dalam arti bahwa siapa saja dapat mengkopi, modifikasi, memakainya dengan cara apa pun, dan memberikan kopi mereka kepada siapa pun tanpa larangan atau halangan.

Implikasi utama peraturan lisensi Linux adalah bahwa siapa saja yang menggunakan Linux, atau membuat modifikasi dari Linux, tidak boleh membuatnya menjadi hak milik sendiri. Jika sebuah perangkat lunak dirilis berdasarkan lisensi GPL, produk tersebut tidak boleh didistribusi hanya sebagai produk biner (binary-only). Perangkat lunak yang dirilis atau akan dirilis tersebut harus disediakan sumber kodenya bersamaan dengan distribusi binernya.

Sistem dan Distribusi GNU/Linux

Dalam banyak hal, kernel Linux merupakan inti dari proyek Linux, tetapi komponen lainlah yang membentuk secara lengkap sistem operasi Linux. Dimana kernel Linux terdiri dari kode-kode yang dibuat khusus untuk proyek Linux, kebanyakan perangkat lunak pendukungnya tidak eksklusif terhadap Linux, melainkan biasa dipakai dalam beberapa sistem operasi yang mirip UNIX. Contohnya, sistem operasi BSD dari Berkeley, X Window System dari MIT, dan proyek GNU dari Free Software Foundation.
Pembagian (sharing) alat-alat telah bekerja dalam dua arah. Sistem pustaka utama Linux awalnya dimulai oleh proyek GNU, tetapi perkembangan pustakanya diperbaiki melalui kerjasama dari komunitas Linux terutama pada pengalamatan, ketidak- efisienan, dan bugs. Komponen lain seperti GNU C Compiler, gcc, kualitasnya sudah cukup tinggi untuk dipakai langsung dalam Linux. Alat-alat administrasi network di bawah Linux berasal dari kode yang dikembangkan untuk 4.3 BSD, tetapi BSD yang lebih baru, salah satunya FreeBSD, sebaliknya meminjam kode dari Linux, contohnya adalah pustaka matematika Intel floating-point-emulation.
Sistem Linux secara keseluruhan diawasi oleh network tidak ketat yang terdiri dari para pengembang melalui internet, dengan grup kecil atau individu yang memiliki tanggung-jawab untuk menjaga integritas dari komponen-komponen khusus. Dokumen 'File System Hierarchy Standard' juga dijaga oleh komunitas Linux untuk memelihara kompatibilitas ke seluruh komponen sistem yang berbeda-beda. Aturan ini menentukan rancangan keseluruhan dari sistem berkas Linux yang standar.
Siapa pun dapat menginstall sistem Linux, ia hanya perlu mengambil revisi terakhir dari komponen sistem yang diperlukan melalui situs ftp lalu dikompilasi. Pada awal keberadaan Linux, operasi seperti di atas persis seperti yang dilaksanakan oleh pengguna Linux. Namun, dengan semakin berkembangnya Linux, berbagai individu dan kelompok berusaha membuat pekerjaan tersebut lebih mudah dengan cara menyediakan sebuah set bingkisan yang standar dan sudah dikompilasi terlebih dahulu supaya dapat diinstall secara mudah.
Koleksi atau distribusi ini, tidak hanya terdiri dari sistem Linux dasar tetapi juga mengandung instalasi sistem ekstra dan utilitas manajemen, bahkan paket yang sudah dikompilasi dan siap diinstall dari banyak alat UNIX yang biasa, seperti news servers, web browsers, text-processing dan alat mengedit, termasuk juga games.
Distribusi pertama mengatur paket-paket ini secara sederhana, menyediakan sebuah sarana untuk memindahkan seluruh file ke tempat yang sesuai. Salah satu kontribusi yang penting dari distribusi modern adalah manajemen/pengaturan paket-paket yang lebih baik. Distribusi Linux pada saat ini melibatkan database packet tracking yang memperbolehkan suatu paket agar dapat diinstall, di-upgrade, atau dihilangkan tanpa susah payah.
Distribusi SLS (Soft Landing System) adalah koleksi pertama dari bingkisan Linux yang dikenal sebagai distribusi komplit. Walaupun SLS dapat diinstall sebagai entitas tersendiri, dia tidak memiliki alat-alat manajemen bingkisan yang sekarang diharapkan dari distribusi Linux. Distribusi Slackware adalah peningkatan yang besar dalam kualitas keseluruhan (walaupun masih memiliki manajemen bingkisan yang buruk); Slackware masih merupakan salah satu distribusi yang paling sering diinstall dalam komunitas Linux.
Sejak dirilisnya Slackware, sejumlah besar distribusi komersial dan non-komersial Linux telah tersedia. Red Hat dan Debian adalah distribusi yang terkenal dari perusahaan pendukung Linux komersial dan perangkat lunak bebas komunitas Linux. Pendukung Linux komersial lainnya termasuk distribusi dari Caldera, Craftworks, dan Work-Group Solutions. Contoh distribusi lain adalah SuSE dan Unifix yang berasal dari Jerman.

Artikel-artikel Linux, Jaringan dan Internet

Sumber : hendra.soewarno@gmail.com
Linux telah berkembang menjadi salah satu sistem operasi yang cukup populer dan tidak dapat diabaikan. Linux dikembangkan secara Open Source dan Gratis, sehingga dapat diperoleh dan terbuka kepada siapapun. Walaupun dikatakan bahwa sistem operasi Linux adalah lebih cepat dan stabil. Tetapi hal itu bisa terwujud jika berada di tangan orang yang telah berpengalaman dan senantiasa mengikuti perkembangan dari Linux itu sendiri. Karena harus disadari bahwa keamanan komputer tidak hanya bergantung kepada sistem operasi yang digunakan, tetapi juga dipengaruhi oleh service-service dan aplikasi yang dijalankan didalamnya serta kebijaksanaan yang diterapkan.
Kalau berbicara tentang keamanan komputer orang senantiasa berbicara tentang hal-hal yang teknis, seperti firewall, packet filtering, proxy, password, enkripsi, dan senantiasa mengabaikan kecenderungan prilaku pemakai yang memungkinan mereka diserang secara sosial engineering. Hal ini dapat dilihat dari hebohnya kasus Internet Banking BCA, yang terkenal dengan www.klikbca.com, secara secara mudah dapat dipermalukan oleh seorang pemuda, dengan membuat situs plesetan dari nama-nama domain yang mungkin, misalnya www.kilkbca.com, www.clickbca.com, dan ternyata banyak yang tidak menyadarinya dan memasukkan id serta password mereka. Apakah hal ini bisa diselesaikan dengan firewall, packet filtering, proxy, password, dan enkripsi ?
Mempelajari Linux relatif lebih sulit dibandingkan dengan sistem operasi Windows karena kebanyakan pemakai komputer di Indonesia dibangun dari dasar DOS dan Windows. Berikut beberapa artikel yang dapat membantu anda untuk memahami Linux dan membuat komputer serta jaringan anda menjadi lebih aman.