Kamis, 22 Desember 2011

0 Pentingnya Keamanan Jaringan

Pentingnya Keamanan Komputer dan Jaringan
Ada beberapa alasan:
• Untuk melindungi asset perusahaan
Tidak hanya melindungi perangkatkeras dan lunak milik perusahaan saja tetapi yang
terpenting adalah melindungi informasi yang dimiliki oleh perusahaan tersebut.
Karena informasi adalah asset terpenting yang dimiliki oleh setiap perusahaan.
• Meningkatkan keuntungan kompetitif
Mengembangkan dan memelihara keamanan jaringan pada suatu perusahaan
membantu perusahaan tersebut dalam menjaga dan meningkatkan reputasi
perusahaan tersebut dalam persaingan yang semakin ketat. Keamanan jaringan
menjadi sangat penting dalam layanan finansial lewat internet maupun eCommerce.
Dengan semakin amannya perlindungan terhadap layanan jaringan akan
meningkatkan kepercayaan konsumen pada perusahaan tersebut. Contoh: apa jadinya
bila nasabah bank mengetahui betapa buruknya tingkat keamanan dari layanan
ebanking bank tersebut. Nasabah akan pindah ke bank lain yang tingkat keamanan
ebanking-nya lebih baik dari bank tersebut. Contoh nyata bank BHS.
• Untuk mendukung kinerja perusahaan dalam melayani nasabah.
Apa jadinya bila layanan jaringan tiba-tiba macet. Kinerja karyawan menjadi
terganggu dalam melayani nasabah. Nasabah menjadi gelisah karena betapa lamanya
layanan yang bisa diberikan oleh perusahaan tersebut.
• Melindungi pekerjaan kita.
Bila layanan baik, nasabah puas, kinerja perusahaan akan berfungsi baik dan jumlah
nasabah meningkat. Tetapi sebaliknya bila kinerja buruk, nasabah akan lari dan
pindah ke perusahaan lain. Perusahaan akan semakin merugi dan akhirnya PHK akan
dilakukan perusahaan tersebut pada karyawannya.
Sejarah
• Sebelum tahun 1980
Komputer yang ada adalah jenis mainframe semua administrasi terpusat. User
terkoneksi dengan mainframe melalui dumb terminal yang kemampuannya terbatas.
Koneksi terminal dengan mainframe pada waktu itu melalui dedicated port koneksi
serial lewat protocol RS-232. Satu port satu terminal.
• Tahun 1980an
Perkembangan komputer jenis PC dan standarisasi protocol jaringan menyebabkan
lahirnya LAN dan WAN. Komputer yang satu terhubung dengan komputer yang lain
lewat jaringan. Tingkat keamanan masih baik karena jumlah pengguna komputer
maupun yang terkoneksi jaringan jumlahnya masih sangat sedikit.
Penggunaan WAN masih relatif aman karena pengawasannya masih terpusat walau
jaraknya sudah semakin bertambah antara komouter yang satu dengan komputer
lainnya. Dengan dikembangkannya packet-switched protocol seperti X-25 dan
TCP/IP (Transmission Control Protocol/Internet Protocol) menurunkan biaya
pengembangan WAN dan membuat menarik penerapannya karena protocol ini
memperbolehkan berbagai sistem berbagi informasi. Berbagai kalangan dan
organisasi dapat berbagi informasi melalui jaringan. Jaringan terbesar dan terluas
kini dikenal sebagai internet. Internet memanfaatkan TCP/IP untuk menghubungkan
satu komputer dengan lainnya dengan berbagai sistem operasi yang dapat saling
berinteraksi satu dedngan lainnya. The Security Trinity
Tiga kaki dari the security trinity adalah: prevention (perlindungan), detection (deteksi),
dan response (tanggapan). Ketiga hal ini adalah dasar dari keamanan jaringan.
Prevention (Perlindungan)
Dasar dari the Security Trinity adalah prevention (perlindungan). Untuk dapat
mengukur tingkat keamanan dibutuhkan cara mengukur perlindungan terhadap
eksploitasi celah keamanan (vulnerability) yang berhasil ditemukan melalui detection
dan response.
Detection (Deteksi)
Untuk menerapkan perlindungan yang akan dilakukan dibutuhkan prosedur cara
mendeteksi adanya permasalahan yang potensial pada sisi keamanan. Semakin cepat
suatu masalah bisa dideteksi maka akan semakin cepat pula cara memperbaiki dan
membersihkan permasalahan yang berhasil ditemukan.
Response (Tanggapan)
Setiap organisasi/perusahaan membutuhkan suatu rencana pengembangan terhadap
sistem keamanan seperti apa yang harus dilakukan bila timbul suatu masalah, siapa
yang harus bertanggungjawab bila masalah itu timbul.
Keamanan Informasi (Information Security)
Yang terpenting dari keamanan jaringan adalah melindungi asset perusahaan berupa
informasi. Dengan kata lain,
information security = confidentiality + integrity + availability + authentication
confidentiality  jangan sampai pihak yang tidak berhak bisa melakukan intercept,
copy atau menduplikasi informasi.
Integrity  melindungi informasi agar tetap akurat
Availability  informasi tetap tersedia ketika diperlukan untuk pengolahan data
Authentication  informasi bisa dibuktikan memang berasal dari user yang sah.
Information security juga membahas masalah prosedur dan policies (aturan) untuk
melindungi informasi dari insiden, incompetence, dan bencana lainnya. Beberapa
prosedur dan aturan yang dilakukan seperti:
• backup, configuration controls, dan media controls
• disaster recovery dan contingency planning
• data integrity
Keamanan jaringan dilakukan untuk menyeimbangkan atas beberapa hal:
- sebanding tidak antara biaya perlindungan dengan nilai dari asset yang harus
dilindungi tersebut.
- Keseimbangan antara Kemungkinan ada dan tidak terjadinya gangguan atas asset
tersebut
- Keseimbangan antara kebutuhan bisnis dan kebutuhan pengamananDari pertimbangan di atas bisa diperoleh suatu kesimpulan bahwa tidak selalu
perusahaan harus melindungi semua assetnya secara membabi buta tetapi perusahaan
harus bijaksana dalam memutuskan sesuatu sebelum melakukan suatu tindakan yang
bisa saja merugikan perusahaan tersebut.
Risk Assesment (Menilai Resiko)
Langkah dasar untuk melakukan Penilaian Resiko:
1. Melakukan identifikasi dan skala prioritas asset-asset yang dimiliki.
2. Melakukan identifikasi kelemahan.
3. Melakukan identifikasi penyusup dan kemungkinan akibat dari penyusupan.
4. Melakukan identifikasi tindakan balasan.
5. Mengembangkan analisis biaya keuntungan.
6. Mengembangkan kebijakan aturan pengamanan.
Agar dapat melaksanakan langkah-langkah diatas perlu memperhatikan pertanyaan ini:
• Apa yang anda ingin lakukan untuk melakukan usaha perlindungan.
• Mengapa anda harus melakukan perlindungan atas asset tersebut.
• Berapa nilai dari asset yang harus anda lindungi tersebut.
• Bentuk ancamannya kira-kira seperti apa.
• Seperti apa resiko yang akan dihadapi.
• Konsekuensi apa saja yang akan dihadapi bila asset tersebut hilang.
• Skenario apa saja yang telah disiapkan bila menghadapi masalah tersebut.
• Bila informasi tersebut hilang seberapa besar nilainya.
Dengan melakukan skala prioritas, maka apa saja yang harus dilakukan pertama kali
dapat segera disusun dan dilakukan tindakan seperlunya sesuai skala prioritas yang
dibuat.
Security Models (Model-Model Keamanan)
Ada tiga pendekatan dasar yang digunakan dalam pengembangan model keamanan
jaringan. Umumnya perusahaan melakukan kombinasi dari ketiga model dasar
keamanan jaringan untuk mengamankan perusahaannya. Ketiga pendekatan dasar itu
adalah: security by obscurity (keamanan berdasar ketidakjelasan), the perimeter defense
model (model garis pertahanan), dan the defense in depth model (model kedalaman
pertahanan).
• Security by Obscurity (keamanan berdasar ketidakjelasan)
Keamanan yang mengandalkan pada perlindungan yang tersembunyi. Konsep dari
keamanan ini adalah dengan menyembunyikan sistem atau jaringan tersebut
sedemikian rupa sehingga tidak seorangpun yang tahu sehingga luput dari serangan.
Harapannya adalah dengan menyembunyikan jaringan ini sedemikian rupa sehingga
aman dari serangan. Kelemahan dari pendekatan keamanan model ini adalah, tidak
bisa bertahan lama. Karena begitu ketahuan maka jaringan ini menjadi terbuka dan
mudah diserang.
• The Perimeter Defense Model (Model Garis Pertahanan)
Model ini dapat disamakan seperti sebuah benteng yang dikeliling oleh parit sebagai
perlindungan. Dengan menggunakan model ini, jaringan dilindungi oleh sebuah
pembatas yang membatasi daerah aman dengan daerah tidak aman. Yaitu dengan
memasang firewall agar penyusup tidak dapat masuk. Kelemahan dari model ini
yang pertama adalah model ini tidak dapat melindungi sistem bila serangan justru
datang dari dalam. Seperti kita ketahui serangan yang terjadi pada jaringan milik suatu perusahaan justru datangnya dari seseorang yang bekerja didalam perusahaan
tersebut. Yang kedua, pertahanan model ini kadang mengalami kegagalan dalam
melakukan perlindungan. Akibatnya begitu gagal maka sistem jadi mudah diserang.
• The defense in Depth Model (Model Kedalaman Pertahanan)
Pendekatan yang paling handal adalah dengan menggunakan model ini. Model ini
melakukan pemeriksaan/monitoring sistem secara terus menerus. Setiap sistem
melakukan pertahanan sendiri-sendiri. Monitoring dilakukan baik dibagian internal
sistem maupun didaerah garis pertahanan. Model perlindungan seperti ini melibatkan
admin jaringan. Bila terjadi masalah pada sistem maka admin jaringan adalah yang
paling bertanggung jawab.
Basic Terminology (Terminologi Dasar)
• Threat (Ancaman)
Threat (Ancaman) adalah segala sesuatu yang dapat mengacaukan operasi, fungsi,
integritas, ketersediaan sistem jaringan. Ada beberapa kategori ancaman antara lain
banjir, gempabumi, badai. Bisa juga ancaman karena kelalaian manusia yang
menimbulkan insiden gangguan pada jaringan. Setiap ancaman dapat menimbulkan
gangguan pada jaringan.
• Vulnerabilities (Rawan Terhadap Serangan)
Vulnerabilities adalah sifat bawaan yang terjadi pada saat desain, konfigurasi,
ataupun implementasi jaringan atau sistem sehingga mudah terkena serangan.
Kebanyakan lobang-lobang keamanan dapat dilacak berasal pada satu dari 3 sumber:
1. Rancangan yang buruk (poor design): sistem perangkat keras dan lunak
yang mengandung cacat desain yang dapat dieksploitasi. Pada intinya sistem
yang dibuat memiliki lobang keamanan. Sebagai contoh vulnerablity adalah
yang terjadi pada UNIX versi lama memiliki kelemahan pada “sendmail” yang
dapat disalah gunakan oleh penyusup untuk mengambil alih fungsi istimewa
dari “root” untuk mengakses sistem UNIX. Kejadian ini membuat sistem ini
menjadi sangat tidak aman.
2. Implementasi yang buruk (poor implementation): sistem yang di
konfigurasi/ disusun dengan tidak benar akan menyebabkan timbulnya lobang
keamanan yang mudah diserang. Kelemahan ini bisa terjadi akibat kurang
pengalaman, pelatihan yang kurang memadai, ataupun karena kinerja yang
buruk. Contoh vulnerability jenis ini adalah sistem yang tidak dilengkapi
dengan pembatasan akses file-file executable tertentu sehingga pengguna yang
tidak berhak dapat mengakses file-file ini.
3. Manajemen yang buruk (poor manajemen): kurangnya pengetahuan
tentang prosedur dan tidak cukup lengkap pemeriksaan kelengkapan
keamanan. Pemeriksaan keamanan yang tidak menyeluruh. Tidak
digunakannya prosedur dokumentasi dan monitoring. Diabaikannya prosedur
backup sistem. Dalam kasus ini perusahaan sudah berusaha mematuhi semua
aturan tetapi petugas yang diserahi tugas ini tidak menjalankan tugas dengan
benar karena tidak adanya pengawasan dari pihak perusahaan.
Physical Vulnerabilities (Rawan Secara Fisik)
Apakah perangkat keras, sistem komunikasi, ruangan kerja termasuk ruangan tempat
menyimpan semua peralatan tersebut benar-benar aman baik dari bencana gempa,
kebanjiran, maupun huru-hara?Hardware dan Software
Apakah perangkat keras yang digunakan selalu diperiksa kinerjanya dan juga selalu
dirawat? Apakah perangkat lunak yang digunakan selalu diperiksa kinerjanya? Benar-
benar amankah tempat penyimpanannya?
Media Vulnerabilities
Flash disk, External Harddisk, maupun media bergerak lainnya seperti CD/DVD, dapat
dicuri, hilang ataupun rusak sehingga informasi yang disimpan didalamnya akan ikut
hilang atau malahan di copy oleh pihak lainnya tanpa sepengetahuan perusahaan. Itulah
sebabnya pihak perusahaan harus ketat dalam pengaman setiap informasi yang
dimilikinya.
Human Vulnerabilities
Akibat kesalahan petugas karena ketidak hati-hatian, kebodohan, kemalasan dapat
menghilangkan informasi yang berharga milik perusahaan. Kecerobohan manusia /
petugas justru yang paling sulit untuk ditangani oleh perusahaan.
Port dan Protocol
Protocol adalah suatu standarisasi pada komputer untuk proses pertukaran informasi (a
standardized way for computers to exchange information).
Ports adalah saluran akses (access channel).
Ports memiliki nomor dari 1 sampai dengan 65535, antara lain:
- Ports Umum (Well Known) mulai nomor 1 sampai dengan 1023
- Ports Terdaftar (registered) mulai nomor 1024 sampai dengan 49151
- Ports Dinamis dan atau Pribadi (Private) mulai nomor 49152 sampai dengan
65535
port adalah sebuah lubang yang memungkinkan suatu (data) untuk memasukinya.
Komputer bisa dikatakan memiliki 2 macam port, yaitu port fisik dan port perangkat
lunak. Port fisik adalah slot yang ada pada bagian belakang CPU, sedangkan port
perangkat lunak adalah port yg dipakai oleh software saat melakukan koneksi dengan
komputer lain.
Nah yg berhubungan secara langsung dengan kegiatan kita saat bermain dgn internet
adalah port perangkat lunak. Port perangkat lunak ini dapat kita bedakan menjadi 3,
yaitu:
a)well known port
Port jenis ini memiliki range dari 0-1023,semula sih hanya memiliki range dari 0-255
tapi oleh IANA(Internet Assigned Number Authority) dilebarkan menjadi range tadi yg
disebutkan diawal. Pada kebanyakan sistem port pada range ini hanya dapat dipakai
oleh root, atau oleh program yang dijalankan oleh user. Karena range-nya dari 0-1023
maka port2 terkenal seperti ftp(21), ssh(22), telnet(23), http(80) termasuk dalam jenis
ini.
b)Registered Ports
Memiliki range dari 1024-49151, port jenis ini tidak ditujukan untuk service tertentu
dari suatu server. Lalu apa gunanya dong?? hehehe, port pada range ini biasanya
digunakan oleh Networking utilites seperti Browser, Email Client, FTP software untuk
berkomunikasi dengan remote server. Biasanya Networking utilites akan membuka
secara acak port pada range ini untuk terhubung dgn remote server. Port number pada
range inilah yang membuat kita dapat melakukan surfing di internet,melakukan pengecekan e-mail, dll. Jadi sangat berguna kan? hehehe Port ini akan membuka
sementara ketika kita sedang menjalankan sebuah aplikasi sehingga apabila kita
menutup aplikasi tersebut maka secara otomatis port ini pun akan tertutup dgn
sendirinya(ingat Networking utilites membukanya secara acak)
c)The Dynamic/Private Ports
Memiliki range dari 49152-65535, biasanya sih digunakan oleh sebagian besar
trojan(waaaaaaaa..), tapi ada juga sih program yang memakai port ini terutama program
yang memerlukan range port number yang besar, seperti pada Sun yang menjalankan
RPC pada port 32768.
Untuk lebih jelasnya mari kita lihat :
C:\windows>netstat -a
Active Connections
Proto Local Address Foreign Address State
TCP juve:1031 juve.box.sk:ftp ESTABLISHED
TCP juve:1036 juve.box.sk:ftp-data TIME_WAIT
TCP juve:1043 banners.egroups.com:80 FIN_WAIT_2
TCP juve:1045 mail.kalteng.net.in:pop3 TIME_WAIT
TCP juve:1052 banners.boxnetwork.net:80 ESTABLISHED
TCP juve:1053 mail.kalteng.net.in:pop3 TIME_WAIT
UDP juve:1025 *:*
UDP juve:nbdatagram *:*
Mari kita ambil satu baris dari contoh diatas :

Proto Local Address Foreign Address State
TCP juve:1031 juve.box.sk:ftp ESTABLISHED
data diatas menunjukan pada kita bahwa:
*Protocol: TCP (ini adalah Transmission Control Protocol atau TCP, User Datagram
Protocol atau UDP, IP atau Internet Protocol)
*Nama lokal sistem: juve (ini adalah nama dari lokal sistem yang kita setting pada
windows setup)
*Lokal port yang terbuka dan digunakan pada saat melakukan koneksi ini adalah: 1031
*Remote Sistem: juve.box.sk (ini adalah non-numerical form dari sistem dimana kita
terkoneksi)
*Remote Port: ftp (ini adalah port number dari remote sistem kalteng.box.sk dimana
kita terkoneksi)
*Keterangan koneksi: ESTABLISHED
Pemahaman istilah Bindings pada jaringan:
Sering disebutkan pada sistem operasi berbasis Windows bahwa “a network adapter is
bound to TCP/IP” atau “NETBEUI is bound to File and Printer sharing”.
Untuk memperjelas hubungan relasi (relationships) pada istilah binding, kita kenali
dahulu berbagai komponen jaringan yang terdapat pada 3 (tiga) lapisan:
The Network Services Layer
contains client and server
services which are used by
the local machine's software:

Client for
Microsoft
Networks
File and Printer
Sharing for
Microsoft Netwk
Microsoft
Family
LogonThe Transport Protocol Layer
contains protocol drivers that
implement various network
communication protocols:
TCP/IP NetBEUI IPX/SPX
The Hardware Adapter Layer
contains the actual peripheral
adapters which connect the
system to the external world:

Dial-Up
Adapter
Cable/DSL
Interface
Local Network
Interface
Setelah proses binding maka hasilnya seperti dibawah ini:
Satu contoh lain:
Dari dua contoh di atas dapat diketahui bahwa proses binding adalah membuat ikatan
komunikasi antara satu komponen dengan komponen lain yang berbeda lapisan (layer).
TCP/IP (Transmission Control Protocol/Internet Protocol) secara sederhana dapat juga
berfungsi sebagai identitas diri seseorang agar dapat dikenali oleh orang lain. TCP/IP
inilah yang berhubungan langsung dengan internet.
NetBEUI (NetBIOS Extended User Interface) adalah protocol yang dirancang untuk
digunakan pada Windows for Workgroups yang dapat digunakan pada jaringan dengan
beban 20 hingga 200 workstation). NetBEUI digunakan untuk grouping pada jaringan
lokal.
IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) adalah protocol
jaringan untuk ethernet card yang dikembangkan oleh Novell untuk memperlancar
komunikasi antar komputer dengan sistem operasi lain selain Windows. Para pecandu
game lewat internet pasti memerlukan IPX/SPX karena protocol ini digunakan untuk
membantu NetBEUI pada penggunaan inter-game communication.
MENGENAL FIREWALL DAN PERANNYA
Kata Firewall berasal dari firewall yang digunakan sebuah pasukan (bomba) untuk
menghalangi kobaran api. Di dunia sekuritas komputer, firewall adalah peralatan
keamanan yang berada di antara internet dan komputer anda. Peralatan ini bisa berupa
software untuk melindungi sebuah pc saja, atau dalam bentuk hardware untuk
melindungi seluruh jaringan komputer (LAN).Firewall fungsinya menilai setiap paket data di antara komputer dengan internet, dan
membuat keputusan berdasarkan arahan yang telah dibekalkan yakni menghalangi,
membiarkan atau melepaskan (permit, block, ignore). Selain itu, firewall juga
menyimpan log atau catatan aktivitas komputer untuk admin, yang digunakan untuk
melihat apa yang telah dilakukan terhadap komputer.
Firewall bisa dibagi-bagi dalam beberapa jenis.
Secure Design (http://www.sdesign.com/securitytest/firewalls.html) membagi firewall
dalam 3 jenis, diantaranya:
- personal firewall, software untuk komputer pribadi
- software untuk server
- hardware firewall
Tentu, masing-masing jenis firewall memiliki kelebihan dan kekurangan tersendiri.
Personal firewall yang biasanya murah harganya atau malah gratis, tapi hanya cocok
untuk melindungi sebuah komputer saja.
Sedang, hardware firewall lebih cocok untuk jaringan komputer yang besar (multi-user
network), sayangnya harganya lebih mahal dan memerlukan tenaga terlatih untuk
mengendalikannya karena lebih sulit pengoperasiannya.
Pentingnya Firewall
Untuk menghalangi ‘orang luar’ mencoba-coba masuk kedalam pc anda dan menapis
‘orang dalam’ yang ingin membuat hubungan ke internet. Orang luar ini bisa saja
berupa port scanner, trojan, cracker, hacker, atau bisa juga Code Red.
Sementara, orang dalam bisa juga berupa trojan server yang berada dalam pc anda,
spyware, atau software mencoba melakukan koneksi ke internet. Sebagai contoh,
setelah memasang firewall, mungkin saja anda mendapati word.exe yang mencoba
membuat hubungan ke internet. Tentu, anda akan memblokir karena tidak semestinya
word mengakses internet.
Perlukah pasang firewall? Coba saja anda mengunjungi site
http://www.hackerwatch.org/probe/
Lalu ke http://www.pcflank.com/test.htm
dan terakhir ke http://grc.com/default.htm (dan cari ShieldsUP!)
Halaman-halaman tersebut bakal membuat scanning dan men-telnet pc anda. Nah, jika
pc anda tidak dilindungi oleh firewall, maka site-site ini akan memberitahu bahwa pc
anda sedang dalam kondisi yang membahayakan.
VIRUS KOMPUTER
Apa itu Virus Komputer ?
Virus Komputer adalah program-program yang masuk tanpa diundang kedalam
komputer kita dan kemudian mengganggu kerja komputer, bahkan menyebabkan
rusaknya file-file yang berada di dalam komputer kita.
Virus dibuat oleh programmer-programmer amatir yang bertujuan untuk
menunjukkan kemampuan mereka pada masyarakat luas akan kelebihan-kelebihan yang
mereka miliki.
Virus memiliki kemampuan untuk mengcopy/ menyalin/ menularkan dirinya
sendiri kedalam file-file yang tersimpan dalam harddisk ataupun disket dan kemudian
menyebar ke komputer lain ketika disket yang tertular virus digunakan di komputer lain.
Pada masa sekarang, virus juga menyerang melalui Microsoft Word Macro dengan
menggunakan Word Basic lalu menempel/ menularkan dirinya melalui dokumen Word.
Virus makro menyebar ketika seseorang mengirimkan dokumen Word yang telah
terinfeksi kepada orang lain melalui disket, e-mail, atau internet.Virus komputer tidak lahir seperti halnya virus biologi misal Flu, HIV, SARS
tetapi dibuat oleh orang-orang tertentu dengan tujuan untuk mengacau demi kesenangan
pribadi.
Pada awalnya, virus dibuat untuk mengingatkan orang lain agar tidak membajak
perangkat lunak milik seseorang. Kemudian virus berkembang untuk memperkenalkan
diri atau sekedar numpang nampang. Virus jenis ini adalah virus boot sector dan tidak
begitu berbahaya karena tidak merusak file-file yang kita miliki dan hanya menyerang
disket. Contoh virus jenis ini yang pernah terkenal di Indonesia pada tahun 1988 adalah
DENZUKO.
Virus dibuat/ ditulis dengan bahasa mesin, assembler, perintah-perintah DOS /
DOS Script, Advanced BASIC, C atau C++, JAVA dan bahasa pemrograman lain
menurut selera si pembuat virus.
Kerusakan yang ditimbulkan oleh virus pada masa lalu hanya sekedar dilingkungan
komputer yang terkena virus saja dan tidak dapat menular kelingkungan komputer jenis
lain misal virus yang menyerang komputer IBM compatible tidak akan menulari
komputer yang berada dilingkungan MacIntosh ataupun UNIX. Tetapi pada masa
sekarang, dengan berkembangnya teknologi yang memungkinkan pertukaran data lintas
platform (data files cross-platform compatible), virus pun berkembang dan mampu
menyerang komputer apapun jenisnya.
Program pengolah kata seperti Microsoft Word, Corel WordPerfect, dan Lotus
AmiPro yang memiliki kemampuan bahasa Macro Visual Basic seperti yang dimiliki
Word 97 keatas menjadi sasaran empuk programmer-programmer virus untuk
menyebarkan virus buatannya. Virus ini dikenal dengan nama virus makro karena
menyerang makro dari program pengolah kata tersebut dan kemudian menulari file-file
berekstensi .doc.
Ketika JAVA diperkenalkan dan dikembangkan untuk pembuatan web dan
digunakan diseluruh dunia, programmer virus pun mengembangkan virus yang dapat
berkembang dilingkungan JAVA sehingga virus dapat menyebar keseluruh dunia
melalui internet.
Apa saja Yang Dilakukan Virus Di dalam Komputer Kita ?
Mulai dari sekedar menampilkan pesan atau gambar, mengacaukan tulisan pada
file dokumen, mencuri data seperti alamat e-mail, password hingga informasi transaksi
keuangan lewat internet, merusak file-file berekstensi .com dan .exe, hingga merusak isi
seluruh harddisk dikomputer kita.
Bagaimana Mengetahui Bahwa Komputer Yang Kita Gunakan Tertular Virus ?
Pada dasarnya cukup sulit untuk mengetahui apakah komputer yang sedang kita
gunakan ada virus didalamnya atau tidak, apalagi bila komputer yang kita gunakan
bukan milik kita atau yang biasa kita gunakan. Misalnya di warnet yang setiap orang
bisa pakai asal ada uang. Untuk virus makro dapat kita rasakan kehadirannya misalnya
muncul tulisan-tulisan yang sama sekali tidak kita ketikan, macetnya tombol-tombol
tertentu, membengkaknya ukuran file dokumen yang kita buat dan masih banyak lagi
tergantung virus makronya. Walaupun begitu hal ini hanya akan segera kita ketahui bila
kita terbiasa teliti dengan pengelolaan file-file dokumen kita. Hal-hal lain juga dapat
kita rasakan ketika tiba-tiba komputer kita menunjukkan hal-hal aneh seperti unjuk
kerjanya yang tiba-tiba lambat, memori yang tidak cukup walau memori komputer kita
cukup besar misal 256 MB. Untuk virus jenis baru yang dirancang dapat
menyembunyikan diri dari deteksi program-program seperti DEBUG pada DOS dan
program-program anti virus sangatlah sulit mendeteksi kehadirannya apalagi jika
menyerangnya dilakukan dengan mendeteksi tanggal-tertentu ataupun setelah beberapa kali program yang tertular virus diaktifkan. Untuk itu diperlukan program anti virus
yang canggih yang selalu diupdate virus definitionnya. Beberapa anti virus terkenal
yang banyak dijumpai dipasaran seperti McAfee, Dr Solomon Anti Virus, Trend Micro
Device, Norton Anti Virus dsbnya yang masing-masing memiliki kelebihan dan
kekurangan.
Untuk mengetahui apakah file dokumen kita tertular virus atau tidak caranya (Pada
Word 2000) pilih Tools > Macros . Jika kemudian ada tampilan makro pada file doc
kita dan kita tidak merasa membuatnya maka file doc kita kemungkinan besar terkena
virus makro. Untuk menghindari virus makro caranya pilih Tools > Macros > Security.
Pada Security Level klik High.
Bagaimana Melindungi Komputer Kita Dari Serangan Virus ?
Pertama, cara yang termudah adalah dengan melengkapi komputer kita dengan
program anti virus seperti McAfee, Dr Solomon Anti Virus, Trend Micro Device,
Norton Anti Virus dsbnya. Jangan lupa untuk selalu meng update virus definition
dengan yang lebih baru yang bisa diperoleh di situs anti virus tersebut. Berdasarkan
pengalaman penulis, program anti virus yang cukup peka dengan kehadiran virus adalah
Kaspersky Anti Virus.
Kedua, melatih diri kita untuk selalu waspada dengan mengenal jenis-jenis virus
baru melalui membaca tabloid atau majalah komputer atau mengunjungi situs-situs
resmi anti virus seperti McAfee.com, viruslist.com dan sebagainya.
Ketiga, mengisolasi e-mail attachment dan website downloads ke direktori yang
terpisah lalu scan dengan anti virus sebelum membukanya. Hindari mengunjungi situs-
situs underground seperti astalavista dan sebangsanya. Hindari chatting langsung seperti
MiRC yang harus menuliskan IP address kita karena virus akan langsung menyerang ke
IP address kita tanpa kita sadari. Lebih aman chatting tidak langsung seperti yang
pernah diselenggarakan oleh situs astaga.com karena kita tidak harus mencantumkan IP
address kita sehingga lebih aman dari serangan virus.
Keempat, selalu membackup harddisk kita secara teratur agar bila terjadi serangan
virus maka kita masih punya cadangannya.
Kelima, jangan terpengaruh untuk memforward pesan e-mail yang kita terima yang
meminta untuk meneruskan pesan kepada orang lain karena kemungkinan besar e-mail
yang kita terima berisi virus. Susahnya, virus-virus canggih mampu mencuri informasi
alamat e-mail sehingga ketika menerima e-mail seakan-akan kita dapat e-mail dari
orang yang kita kenal tetapi ketika kita buka ‘booom” tanpa sadar kita sudah tertular
virus.
Jenis-Jenis Virus Berdasarkan Cara Menyerangnya Antara Lain:
1. Logic Bomb
Cara Kerjanya:
Virus yang telah masuk kedalam komputer kita baru akan beraksi bila diaktifkan
oleh tanggal penyerangan dengan membaca clock komputer kita atau dengan
menghitung berapa kali program yang telah tertular virus tersebut dijalankan. Setelah
diaktifkan virus akan segera merusak sebelum kita sadar bahwa komputer kita telah
lama tertular virus.
2. Trojan
Cara Kerjanya:
Nama Trojan diambil dari nama kuda Troya yang didalamnya bersembunyi tentara
yang akan menyerang kota Troy pada mitologi Yunani. Virus jenis ini disusupkan melalui program-program yang nampak berguna seperti program-program game.
Ketika program ini dijalankan, virus ini mulai beraksi didalam komputer kita.
3. Worm
Cara Kerjanya:
Virus ini selain menulari file-file berjenis .com, .exe juga memperbanyak diri sendiri
(self reproducing programs) menyerang sistem, memenuhi direktori, temporary files,
program files, memperlambat kerja komputer, menahan perintah komputer melalui
penekanan tombol-tombol keyboard, menghentikan konektivitas ke internet. Virus
jenis ini khususnya variant terbaru seperti I-Worm. Klez. H sangat ganas bisa
dideteksi tapi belum bisa disembuhkan. Virus ini langsung menyerang sistemnya
terlebih dulu sambil menulari file-file lain dan sekaligus memperbanyak diri
memenuhi harddisk kita. Untungnya virus ini tidak menyerang data kita kecuali file
berekstensi .com dan .exe
4. Hoax
Cara Kerjanya:
Hadir dalam bentuk e-mail yang intinya berisi peringatan akan adanya serangan
virus.
Faktor-faktor yang membuat virus jenis ini berhasil menyerang:
a. Berisi informasi yang berbau informasi teknis padahal ketika dibuka ternyata
virus
b. Mencantumkan nama instansi yang cukup credible seperti misalnya kantor
Microsoft
Karena dua faktor diatas, biasanya orang akan segera terpancing untuk mengikuti
“nasihat” yang diberikan dan segera berusaha meneruskan peringatan palsu ini
kepada orang-orang yang kita kenal. Hoax juga diam-diam mengumpulkan semua
informasi e-mail yang terdapat dalam komputer kita. Akibat langsung pada komputer
kita tidak begitu terasa bila komputer kita tidak terhubung ke internet. Tetapi bila
terhubung ke internet maka kita akan banyak menerima puluhan, ratusan, bahkan
ribuan e-mail yang akan merepotkan kita dan biasanya server di kantor kita akan
segera down karena kelebihan beban.
Baca info tentang keamanan internet di:
http://www.inetsecurity.info/modules.php?op=modload&name=News&file=article&sid=71
Baca info tentang IP dsbnya:
http://www.rtek2000.com/Tech/InternetSecureLinks.html
Bagaimana Kita Tahu Nama-Nama Virus, Siapa Yang Memberi Nama Virus-
Virus Tsb?
1. Perusahaan pembuat Anti Virus.
2. www.wildlist.org organisasi tempat berkumpulnya orang-orang yang berkecimpung
dalam kegiatan menghadapi virus komputer dan juga tempat perusahaan-
perusahaan antivirus mencari informasi serta bertukar informasi tentang virus dan
cara menghadapinya.
Boot Sector adalah potongan kecil kode pada disket atau harddisk yang memberitahu
komputer apa yang harus dilakukan sebelum memuat dan menjalankan DOSFAT (File Allocation Table) Adalah tabel yang menyimpan informasi mengenai file
seperti ukuran file serta letaknya didalam disket ataupun harddisk.
Cara masuk di komputer client / server berbasis Windows XP
lewat DOS
Pertama-tama anda harus mendownload 2 program penting yaitu :
- KaHT : Download KaHT
- Internet Maniac : internet maniac
Ingat hanya dengan 2 program diatas maka anda bersiap-siaplah
menguasai warnet / kampus / kantor dan sebagainya, lho bagaimana
bisa ? hehe
Setelah 2 program diatas di download maka ekstractlah dahulu
program tersebut, entah pakek WINZIP atau pakek apa.
Kalo udah di extract lalu pertama kali anda periksa dahulu jaringan
anda dengan melihat para hostname dengan 2 cara.
Untuk Windows XP
Cara Pertama Masuk ke Start Lalu Search, lalu pilih computers or
people lalu pilih A computer on the Network lalu langsung klik search
maka akan segera muncul computer-komputer yang terkoneksi
dalam jaringan.
Setelah kamu dapetin sasaran computer yang mau di masukin /
diremote maka kamu langsung aja kamu jalankan program Internet
Maniac, masuklah ke Host Lookup lalu ketikkan nama computer /
hostname lalu klik resolve, disini anda akan mendapat alamat ip computer tersebut. Dengan nomor ip ini maka anda sudah
mengetahui sasaran computer yang akan di masuki.
Setelah itu selesai maka kita tinggalkan program Internet Maniac,
kita akan berlanjut dengan program KaHT, program ini akan didetect
sebagai Trojan oleh antivirus, tapi abaikan saja, jangan di hapus / di
karantina kalau terdetect, kalau perlu del aja antivirusnya, satu lagi,
program KaHT bekerja dalam MS-DOS Mode jadi disini kemampuan
anda menggunakan DOS sangat penting, tanpa kemampuan DOS
maka anda tidak akan bisa banyak berbuat.
Cara masuk DOS Mode
Untuk Windows XP :
Masuklah ke Start, All programs, Accessories lalu Command Prompt
Untuk Windows 95/98/Me/NT/2000
Masuklah ke Start, Programs, Accessories lalu MS-DOS Prompt
Setelah berhasil masuk DOS maka masuklah di directory program
KaHT, masa seh bisa lupa tadi program diextract dimana, hehe,
(Misal tadi di extract di C:\KaH) maka ketikkan “CD\KaHT” dan
seterusnya.
Jika sudah, ini saatnya…
Ketikkan “KaHT sebelum_no_ip_komputer_sasaran
no_ip_komputer_sasaran.
kalau bingung bisa begini : "KaHT Ip1 ip2"
ip1 : ip awal yang discan
ip2 : ip terahkir yang discan
Misalnya tadi ip-nya 192.168.0.1 setelah di detect pakek Internet
Maniac tadi itu lho.
Maka ketikkan saja “KaHT 192.168.0.0 192.168.0.1” lalu enter aja
Nah disini nanti program akan bekerja otomatis.
Setelah selesai menscan jika nanti port 135 ternyata dalam keadaan
open maka anda akan otomatis di computer tujuan / sasaran, untuk
lebih persisnya anda akan berada di "c:\windows\system" milik
komputer tujuan / sasaran setelah pen-scan-an selesai.
Anda bisa bebas di computer sasaran, mau edit atau di delete pun
bisa.

Selasa, 06 Desember 2011

0 Kami bertiga Kamu Bertiga

Ketika kapal seorang Uskup berlabuh untuk satu hari di sebuah pulau yang terpencil, ia bermaksud menggunakan hari itu sebaik-baiknya. Ia berjalan-jalan menyusur pantai dan menjumpai tiga orang nelayan sedang memperbaiki pukat. Dalam bahasa Inggeris pasaran mereka menerangkan, bahwa berabad-abad sebelumnya mereka telah dibaptis oleh para misionaris. 'Kami orang Kristen,' kata mereka sambil dengan bangga menunjuk dada.

Uskup amat terkesan. Apakah mereka tahu doa Bapa Kami? Ternyata mereka belum pernah mendengarnya. Uskup terkejut sekali. Bagaimana orang-orang ini dapat menyebut diri mereka Kristen, kalau mereka tidak mengenal sesuatu yang begitu dasariah seperti doa Bapa Kami?

'Lantas, apa yang kamu ucapkan bila berdoa?'

'Kami memandang ke langit. Kami berdoa: 'Kami bertiga, Kamu bertiga, kasihanilah kami.' Uskup heran akan doa mereka yang primitif dan jelas bersifat bidaah ini. Maka sepanjang hari ia mengajar mereka berdoa Bapa Kami. Nelayan-nelayan itu sulit sekali menghafal, tetapi mereka berusaha sebisa-bisanya. Sebelum berangkat lagi pada pagi hari berikutnya, Uskup merasa puas. Sebab, mereka dapat mengucapkan doa Bapa Kami dengan lengkap tanpa satu kesalahan pun.

Beberapa bulan kemudian kapal Uskup kebetulan melewati kepulauan itu lagi. Uskup mondar-mandir di geladak sambil berdoa malam. Dengan rasa senang ia mengenang, bahwa di salah satu pulau yang terpencil itu ada tiga orang yang mampu berdoa Bapa Kami dengan lengkap berkat usahanya yang penuh kesabaran. Sedang ia termenung, secara kebetulan ia, melihat seberkas cahaya di arah Timur. Cahaya itu bergerak mendekati kapal. Sambil memandang keheran-heranan, Uskup melihat tiga sosok tubuh manusia berjalan di atas air, menuju ke kapal. Kapten kapal menghentikan kapalnya dan semua pelaut berjejal-jejal di pinggir geladak untuk melihat pemandangan ajaib ini.

Ketika mereka sudah dekat, barulah Uskup mengenali tiga sahabatnya, para nelayan dulu. 'Bapak Uskup', seru mereka, 'Kami sangat senang bertemu dengan Bapak lagi. Kami dengar kapal Bapak melewati pulau kami, maka cepat-cepat kami datang.'

'Apa yang kamu inginkan?' tanya Uskup tercengang-cengang.

'Bapak Uskup,' jawab mereka, 'kami sungguh-sungguh amat menyesal. Kami lupa akan doa yang bagus itu. Kami berkata: Bapa kami Yang ada di surga, dimuliakanlah namaMu; datanglah kerajaanMu ... lantas kami lupa. Ajarilah kami sekali lagi seluruh doa itu!'

Uskup merasa rendah diri: 'Sudahlah, pulang saja, saudara-saudaraku yang baik, dan setiap kali kamu berdoa, katakanlah saja: Kami bertiga, kamu bertiga, kasihanilah kami.'

Aku kadang-kadang melihat wanita-wanita tua berdoa rosario tak habis-habisnya di gereja. Bagaimana mungkin Tuhan dimuliakan dengan suara bergumam yang tidak keruan itu? Tetapi setiap kali aku melihat mata mereka atau memandang wajah mereka menengadah, di dalam hati aku tahu, bahwa mereka lebih dekat dengan Tuhan daripada banyak orang terpelajar.


Anthony De Mello SJ

0 Perintah-Perintah Dasar SQL

perintah perintah dasar my sql
Perintah perintah dasar mysql bagian 1
Artikel ini dipersembahkan untuk para newbie yang baru belajar mysql dan untuk saya sendiri sebagai catatan pribadi biar nggak lupa.
Pertama untuk login ke mysql perintahnya :
mysql -u [namauser] -p
Misalkan saya ingin menggunakan user root untuk login ke mysql, maka saya ketikan :
mysql -u root -p
Berikutnya untuk melihat database apa saja yang tersedia, ketikan perintah :
SHOW DATABASES;
Kemudian perintah untuk memilih database bentuk umumnya seperti berikut
USE [namadatabase];
Misalkan saya mau menggunakan database yang bernama kadek, maka saya ketik
USE kadek;
Jika ingin membuat database baru perintahnya sebagai berikut :
CREATE DATABASE [namadatabase];
Misalkan saya ingin membuat database baru dengan nama coba, maka saya ketikan
CREATE DATABASE coba;
Untuk melihat tabel apa saja yang sudah ada, ketikan
SHOW TABLES;
Sedangkan untuk membuat tabel bentuk umumnya adalah :
CREATE TABLE [namatabel] (
field1 tipedata,
field2 tipedata,
….
);
Misalkan saya ingin membuat tabel dengan nama mobil dimana terdapat 3 field yaitu nomor, merek, warna. Maka saya ketikan
CREATE TABLE mobil (
nomor int(2),
merek varchar(10),
warna varchar(8)
);
Sedangkan untuk memasukan data gunakan perintah insert seperti berikut
INSERT INTO mobil VALUES (1,“ferari“,“merah“);
INSERT INTO mobil VALUES (2,“audi“,“hitam“);
INSERT INTO mobil VALUES (3,“bmw“,“kuning“);
INSERT INTO mobil VALUES (4,“mercy“,“hitam“);
Untuk menampilkan data gunakan perintah select seperti berikut
SELECT * FROM mobil;
Untuk mengubah record (update) gunakan perintah update, misalkan saya ingin mengupdate record nomor 4, mengubah warna mobil, maka saya ketikan
UPDATE mobil SET warna=“biru“ WHERE nomor=4;
Sedangkan untuk menghapus salah satu record gunakan perintah delete dan perintah where untuk menentukan record yang akan dihapus, misalkan saya ingin menghapus record nomor 2, maka saya ketikan
DELETE FROM mobil WHERE nomor=2;
Selain menghapus record, tentu saja kita bisa menghapus tabel dan juga database. Nah, untuk menghapus tabel gunakan perintah drop table, misalkan saya ingin menghapus tabel mobil, maka saya tuliskan
DROP TABLE mobil;
Sedangkan untuk menghapus database gunakan perintah drop database, misalkan saya ingin menghapus database dengan nama coba maka saya ketik
DROP DATABASE coba;




Perintah perintah dasar mysql bagian 2
Melanjutkan postingan yang lalu tentang perintah perintah dasar database mysql.
Sebagai bahan untuk latihan kali ini saya akan gunakan tabel berikut :
CREATE TABLE mahasiswa(
nim int(2),
nama varchar(20),
alamat varchar(20),
hobi varchar(25)
);
Kemudian masukan data berikut (copy-paste saja ):
INSERT INTO mahasiswa VALUES (133,”budi”,”monjali“,“makan“), (123,“susi“,“janti“,“jalan jalan“),(127,“ayu“,“concat“,“makan“),(126,“nana“,“senturan“,“musik“),(125,“nini“,“mancasan“,“mancing“),(124,“putri“,“concat“,“musik“),(128,“santi“,“mancasan“,“jalan jalan“),(139,“rina“,“concat“,“baca buku“),(134,“dono“,“janti“,“renang“),(145,“dana“,“monjali“,“renang“);
Contoh diatas adalah melakukan perintah INSERT atau memasukan data dengan jumlah record lebih dari satu dalam satu perintah.
Sekarang coba kita jalankan perintah select untuk melihat isi tabel tersebut, seperti berikut :
mysql> SELECT * FROM mahasiswa;
+——+——-+———-+————-+
| nim | nama | alamat | hobi |
+——+——-+———-+————-+
| 133 | budi | monjali | makan |
| 123 | susi | janti | jalan jalan |
| 127 | ayu | concat | makan |
| 126 | nana | senturan | musik |
| 125 | nini | mancasan | mancing |
| 124 | putri | concat | musik |
| 128 | santi | mancasan | jalan jalan |
| 139 | rina | concat | baca buku |
| 134 | dono | janti | renang |
| 145 | dana | monjali | renang |
+——+——-+———-+————-+
10 rows in set (0.00 sec)
Mengurutkan data
Record pada tabel mahasiswa tersebut belum urut sesuai dengan nim nya, untuk mengurutkannya gunakan perintah ORDER BY dengan menentukan apakah ASC (kecil ke besar) atau DESC (besar ke kecil).
Mengurutkan dari kecil ke besar berdasarkan nim
SELECT * FROM mahasiswa ORDER BY nim ASC;
Mengurutkan dari besar ke kecil berdasarkan nim
SELECT * FROM mahasiswa ORDER BY nim DESC;
Menyaring data yang sama
Pada tabel mahasiswa terdapat beberapa data yang sama muncul, misalkan pada field alamat terdapat ‘concat’ yang muncul lebih dari satu kali, begitu juga pada field hobi terdapat beberapa data yang muncul lebih dari satu.
Bagaimana kalau saya ingin menampilkan daftar alamat / hobi dengan tidak ada data yang muncul lebih dari satu kali? caranya dengan menggunakan perintah DISTINCT, seperti berikut
SELECT DISTINCT alamat FROM mahasiswa;

SELECT DISTINCT hobi FROM mahasiswa;
Menampilkan urutan data tertentu
Untuk menampilkan urutan data terntentu gunakan perintah LIMIT, record dalam mysql dimulai dari nol (0), jadi misalkan ada 10 record berarti 1-10 = 0-9. Contoh berikut ini menampilkan data urutan ke 2 sampai ke 4 (1-3).
SELECT * FROM mahasiswa LIMIT 1,3;
menampilkan data urutan pertama sampai kelima (0-4)
SELECT * FROM mahasiswa LIMIT 0,4;
Pencarian data
Untuk melakukan pencarian data kita bisa gunakan perintah WHERE dan juga LIKE, Berikut ini beberapa contoh pencarian data.
mencari data mahasiswa yang beralamat di monjali
SELECT * FROM mahasiswa WHERE alamat=”monjali”;
mencari data mahasiswa yang hobinya makan
SELECT * FROM mahasiswa WHERE hobi=”makan”;
mencari data mahasiswa yang nimnya dibawah angka 130
SELECT * FROM mahasiswa WHERE nim < 130; mencari data mahasiswa yang nimnya diatas angka 130 dan beralamat di janti SELECT * FROM mahasiswa WHERE nim > 130 AND alamat=”janti”;
mencari data mahasiswa yang hobinya renang atau jalan jalan
SELECT * FROM mahasiswa WHERE hobi= “renang” OR hobi=”jalan jalan”;
mencari data mahasiswa yang nimnya diantara angka 125 sampai 135
SELECT * FROM mahasiswa WHERE nim BETWEEN 125 AND 135;
mencari data mahasiswa yang mempunyai nama berawalan huruf s
SELECT * FROM mahasiswa WHERE nama LIKE “s%”;
mencari data mahasiswa yang mempunyai alamat berakhiran huruf an
SELECT * FROM mahasiswa WHERE alamat LIKE “%an”;
mencari data mahasiswa yang mempunyai nama yang didalamnya terdapat huruf y
SELECT * FROM mahasiswa WHERE nama LIKE “%y%”;


Perintah perintah dasar mysql bagian 3
Masih tentang perintah-perintah dasar database mysql, kali ini saya akan membahas tentang fungsi-fungsi yang ada di mysql.
Ada banyak fungsi di mysql, tapi tidak semua bisa saya bahas satu per satu, jadi yang penting-penting saja yang ditampilkan disini.
Untuk menghitung jumlah record yang terdapat pada suatu tabel kita bisa menggunakan fungsi COUNT(), berikut ini contoh menghitung jumlah record tabel mahasiswa :
SELECT COUNT(*) FROM mahasiswa;
Fungsi COUNT() termasuk dalam fungsi agregat di mysql, fungsi agregat yang lain antara lain :
MAX(), untuk mendapatkan nilai terbesar suatu kolom
MIN(), untuk mendapatkan nilai terkecil suatu kolom
AVG(), untuk mendapatkan nilai rata-rata suatu kolom
SUM(), untuk mendapatkan jumlah total suatu kolom
STD() atau STDDEV(), untuk mendapatkan nilai standar deviasi suatu kolom
Berikut ini adalah contoh pengunaan fungsi-fungsi tersebut :
SELECT MAX(nim) FROM mahasiswa;
SELECT MIN(nim) FROM mahasiswa;
SELECT AVG(nim) FROM mahasiswa;
SELECT SUM(nim) FROM mahasiswa;
SELECT STD(nim) FROM mahasiswa;
Jika fungsi-fungsi agregat tersebut diterapkan pada kolom yang bertipe string seperti varchar misalnya maka hasilnya selalu bernilai nol (0).
Fungsi String
CONCAT(), untuk menggabungkan kata
LCASE(), untuk membuat huruf kecil semua (lowercase)
UCASE(), untuk membuat huruf besar semua (uppercase)
LOCATE(), untuk mencari jumlah huruf/kata yang ada pada masing-masing record di suatu kolom
Berikut ini contoh penggunaannya :
SELECT CONCAT(nama,alamat) FROM mahasiswa;
SELECT LCASE(nama,alamat) FROM mahasiswa;
SELECT UCASE(nama,alamat) FROM mahasiswa;
SELECT LOCATE(“a”,nama) FROM mahasiswa;
Fungsi Date and Time
NOW() atau LOCALTIME(), untuk mengetahui tanggal dan waktu saat ini
DAYNAME(), untuk mengetahui nama hari berdasarkan input string dengan format ‘tahun-bulan-tanggal’
Berikut ini contoh penggunaannya :
SELECT NOW();
SELECT LOCALTIME();
SELECT DAYNAME(“1986-3-22″);
Fungsi Math /matematika
Mysql menyediakan beberapa fungsi matematika antara lain :
SIN(), mendapatkan nilai sin
COS(), mendapatkan nilai cos
ABS(), mendapatkan nilai absolut
POW(), mendapatkan nilai pangkat dengan format POW(angka,pangkat)
Berikut ini contoh penggunaannya :
SELECT SIN(30);
SELECT COS(45);
SELECT ABS(-125);
SELECT POW(2,3);
Mysql juga menyediakan operator arithmetic seperti tambah (+), kurang (-), kali (*), bagi (/), sehingga kita bisa langsung menghitung kolom satu dengan lainnya. Berikut ini contohnya :
SELECT nim+1 FROM mahasiswa ;
SELECT nim-5 FROM mahasiswa;
SELECT nim*10 FROM mahasiswa;
Dengan perintah AS anda bisa membuat kolom result dengan nama yang anda tentukan sendiri, berikut ini contohnya :
SELECT NOW() AS sekarang;
SELECT POW(2,5) AS dua_pangkat_lima_adalah;
SELECT nim,nim*10 AS sepuluh_kali FROM mahasiswa;
Demikian perintah-perintah dasar database mysql....

Senin, 05 Desember 2011

0 Sekilas Tentang Hibernate

Hibernate adalah salah satu teknologi object relational persistence mapping (ORM) dan query service. Transformasi persistent data dari sebuah representasi data (relational database) ke sebuah representasi data yang lain (java objects) ataupun sebaliknya adalah fungsi yang sebenarnya dilakukan oleh ORM.

Dalam aplikasi pemrograman yang berorientasi objek, persistence memperbolehkan sebuah objek untuk bisa tetap ada diluar proses aplikasi yang membuatnya (C. Bauer & Gavin King, Manning: Hibernate In Action). State dari objek tersebut disimpan pada datastore dan objek dengan state yang sama suatu saat dapat di buat kembali jika aplikasi dijalankan lagi.

Transient Object adalah object yang dibuat dimana state dari objek ini tidak disimpan pada datastore, sehingga tidak dapat dibuat kembali sebuah objek dengan state yang sama suatu saat. Masa hidup sebuah transient object terbatas pada proses yang membuatnya. Kebanyakan objek pada aplikasi terdiri dari gabungan persistent dan transient objek sehingga diperlukan sebuah sub-sistem yang menangani persistent objek

Domain model adalah representasi dari business entities yang digunakan dalam aplikasi java. Dalam arsitektur aplikasi yang terbagi menjadi beberapa layer, domain model digunakan untuk menjalankan business logic pada business layer (pada java bukan pada database). Business layer berhubungan dengan persistence layer untuk proses loading dan menyimpan persistent object dari domain model.

ORM adalah middleware pada persistence layer yang menangani persistent object. ORM bukan merupakan satu-satunya solusi permasalahan yang digunakan untuk menangani persistent object, cara lain yang bisa digunakan adalah dengan EJB atau langsung memakai SQL yang mengkopi nilai yang dari JDBC result set pada persistent object di domain model.

Hibernate ditulis dengan menggunakan bahasa pemrograman java meskipun saat ini juga dikembangkan untuk mendukung .NET framework. Persistent object dapat dibuat menggunakan hibernate dengan idiom bahasa pemrograman java termasuk didalamnya association, inheritance, polymorphism, composition, java collection framework seperti Set, List, Map. Hibernate adalah free software yang menggunakan lisensi LGPL.

Hibernate mendukung banyak DBMS (Database Management System) antara lain Oracle, DB2, MySQL, PostgreSQL, Sybase, SAP DB, HypersonicSQL, Microsoft SQL Server, Posgress, McKoi SQL, Pointbase dan Interbase. Hibernate dapat diintegrasikan dengan Framework-framework java yang lain seperti JBoss (hibernate sekarang merupakan bagian dari JBoss Project), Spring Framework, Struts, JSF maupun framework java yang lain sebagai persistence layer.

Object Oriented Query Language (OOQL) yang digunakan oleh hibernate mendefinisikan join table sebagai object property path. Selain itu OOQL mendukung fungsi dan operator SQL, fungsi aggregat seperti sum, avg, min, max, count. OOQL mendukung fungsi group by, having dan order by. Hibernate juga mendukung sub query (sub select pada database). Query yang dihasilkan oleh hibernate mengembalikan nilai berupa Objek atau nilai skalar
Hibernate memiliki beberapa interface Sekumpulan Application Programming Interface (API) yang digunakan oleh business layer yaitu:

Interface yang digunakan untuk melakukan operasi CRUD dan Query. Interface ini merupakan main point antara business logic dengan Hibernate. Interface tersebut adalah Session, Transaction dan Query.
Interface yang digunakan oleh aplikasi untuk melakukan konfigurasi Hibernate, yang paling penting adalah class Configuration
Callback Interface yang digunakan oleh aplikasi untuk event yang yang terjadi didalam Hibernate seperti Interceptor, Lifecycle, dan Validatable.
Interface yang merupakan implementasi mapping Hibernate seperti UserType, CompositeUserType, dan IdentifierGenerator
SessionFactory, factory untuk Session, client dari ConnectionProvider.
Session, class yang digunakan antara aplikasi dengan database. Session mengelola object untuk aplikasi. Session adalah wrapper dari sebuah koneksi JDBC
Persistent Object & Collections, object yang memiliki persistent state dan bisnis proses, bisa berupa JavaBean. Persistent Object & Collection selalu mempunyai 1 Session.
Transient Object & Collections, merupakan instance dari persistent class yang tidak terkait dengan Session. Transient Object & Collections bisa berupa object yang di buat oleh aplikasi yang di-persistent-kan. Atau obyek yang session telah di tutup (closed session).
Transaction, object yang digunakan oleh aplikasi untuk menspesifikasikan unit kerja yang atomic. Transaction adalah abstraksi dari JDBC, JTA atau CORBA Transaction. Sebuah Session dapat memiliki lebih dari 1 Transaction.
ConnectionProvider, yaitu abstraksi dari DataSource atau DriverManager. ConnectionProvider tidak di bisa diakses langsung oleh business layer.
TransactionFactory, factory untuk Transaction

Sebuah instance dari Datastore adalah representasi dari keseluruhan mapping antara objek-objek java ke database relasional. Mapping di compile dari berbagai file mapping yang berformat xml. Sebuah instance dari Datastore dapat dibuat dengan memanggil fungsi Hibernate.createDatastore().

To Be Continued……