Senin, 27 Desember 2010

Enable IP forwarding

Untuk mengaktifkan IP Forwarding edit file /etc/sysctl.conf, beri nilai 1 pada net.ipv4.ip_forward

# Controls IP packet forwarding
net.ipv4.ip_forward = 1


Untuk mengaktifkannya berikan perintah

/sbin/sysctl -p

Minggu, 26 Desember 2010

MOUNTING FILE SYSTEM DI PC BERBEDA

Ada beberapa cara untuk membuat mounting di linux di antaranya :

Kita akan memounting file system dengan asumsi
remote Windows machine: winbox
share name on winbox: getme
username: sushi
password: yummy

1. Local Mount
Buat folder di dalam /mnt
# mkdir /mnt/win
Edit file /etc/fstab tambahkan di baris paling bawah
//winbox/getme /mnt/win cifs user,uid=500,rw,suid,username=sushi,password=yummy 0 0

Kamis, 23 Desember 2010

Backup Dengan Menggunakan rsync

Apa keunggulan rsync?

Irit bandwidth. Jika di sisi penerima, file yang ingin dikirimkan sudah ada, tapi belum tentu sama (misalnya ukurannya lebih kecil/besar atau terdapat perbedaan karena versinya lebih lama), maka rsync dapat melakukan serangkaian pengecekan perbandingan checksum terhadap blok-blok dalam file di kedua sisi, untuk meminimalisasi jumlah data yang harus ditransfer. Algoritma ini disebut algoritma rsync. Bahkan sebetulnya rsync bermula dari sebuah paper yang menjelaskan algoritma ini.

Jadi, misalnya Anda memiliki 2 buah versi file berukuran kurang lebih 100MB di dua tempat, dengan rsync Anda mungkin Anda hanya membutuhkan transfer data sebesar 50MB, 10MB, atau bahkan di bawah 1MB untuk menyamakan kedua buah versi file ini, bergantung pada seberapa mirip kedua file tersebut sebelumnya.

Atau, misalnya Anda sedang mentransfer file besar lalu putus di tengah jalan. Anda dapat jalankan kembali rsync dan rsync akan melanjutkan kembali transfer dari posisi putus dan memastikan hasil akhirnya nanti sama.

Cepat. Rsync cepat salah satunya karena algoritma rsync yang disebutkan di atas. Selain itu rsync dapat melakukan kompresi data saat transfer. Dibandingkan FTP pun rsync lebih cepat karena dapat melakukan pipelining, sementara transfer menggunakan FTP boros koneksi TCP/IP untuk setiap file yang ditransfer. Ini akan semakin kentara untuk tree berisi file kecil-kecil yang jumlahnya banyak (misalnya file-file website yang umumnya berisi banyak file HTML dan gambar), di mana rsync dapat beberapa kali hingga belasan kali lebih cepat dari FTP.

Fleksibel. Rsync tidak hanya bisa mentransfer file tunggal, tapi juga direktori dan tree secara rekursif. Anda bisa memilih untuk menghapus file/direktori yang sudah tidak ada dari sisi pengirim tapi masih ada di sisi penerima. Anda bisa memilih untuk mensinkronisasi juga metadata file seperti permission, kepemilikan, tanggal, ACL, dll. Rsync dapat menangani link simbolik, hardlink, device, dll. Dan ada banyak opsi lainnya, termasuk yang sering juga dijumpai di tool lain seperti tar, cp, dll.

Keterbatasan rsync

Meskipun merupakan swiss-army knife dalam urusan transfer dan sinkronisasi tree, namun rsync tidaklah sempurna. Dua kelemahan utama rsync adalah sifat sinkronisasi yang 1 arah dan lambat jika ukuran tree sudah terlalu besar.

Hanya 1 arah. Sinkronisasi rsync hanya bersifat satu arah, dari pengirim (P1) ke penerima (P2). Jika misalnya baik tree di P1 maupun di P2 berubah secara independen oleh pihak ketiga, lalu P1 dan P2 ingin bertukar perubahan secara 2 arah, maka rsync tidak dapat digunakan. Ada opsi -u untuk melewati file-file di P2 yang lebih baru daripada P1, Anda bisa menggunakan opsi ini pada kasus-kasus tertentu, tapi secara umum, untuk melakukan sinkronisasi 2 arah, sebaiknya digunakan tool lain seperti unison (atau mungkin Anda butuh tool version control seperti subversion atau git).

Lambat untuk tree superbesar. Cara kerja rsync adalah dengan mula-mula membangun daftar file lengkap baik di sisi pengirim maupun penerima untuk kemudian dibandingkan. Untuk tree yang sudah amat besar proses ini akan memakan waktu dan juga memori amat besar. Misalnya direktori backup lokal di beberapa server shared hosting di tempat kerja saya yang isinya lebih dari 20 juta file, karena berisi histori backup menggunakan hardlink. Meng-rsync tree ini sekaligus membuat proses rsync memakan memori lebih dari 2-3GB untuk menyusun daftar file, sehingga menghabiskan memori dan mengganggu proses lain.

Kebutuhan memori dalam pembangunan daftar file lengkap di awal proses rsync ini juga membuat para penyedia situs mirror agak enggan menyediakan layanan via rsync. Atau setidaknya membatasi jumlah koneksi simultan rsync, misalnya hanya 1-5.

Diharapkan revisi program dan/atau algoritma rsync berikutnya dapat membuat inovasi dalam hal sinkronisasi tree superbesar, misalnya dengan membentuk daftar file secara paralel atau sambil jalan.

KONFIGURASI RSYNC AUTOMATIS PASSWORD DAN SCHEDULE DENGAN MENGGUNAKAN CRONJOBS

Untuk Mencobanya yakinkan tools berikut sudah terinstall

rsync
openssh
cron (or vixie-cron)

Saya ingin tes apakah rsync sudah bisa di jalankan
$ rsync -avz -e ssh remoteuser@remotehost:/remote/dir /this/dir/

Buat key untuk ssh

$ ssh-keygen -t dsa -b 2048 -f /home/thisuser/cron/thishost-rsync-key
Generating public/private dsa key pair.
Enter passphrase (empty for no passphrase): [press enter here]
Enter same passphrase again: [press enter here]
Your identification has been saved in /home/thisuser/cron/thishost-rsync-key.
Your public key has been saved in /home/thisuser/cron/thishost-rsync-key.pub.
The key fingerprint is:
2e:28:d9:ec:85:21:e7:ff:73:df:2e:07:78:f0:d0:a0 thisuser@thishost

File tersebut berada di

/home/remoteuser/.ssh/authorized_keys

Saya menggunakan SCP untuk copy remote

$ scp /home/thisuser/cron/thishost-rsync-key.pub remoteuser@remotehost:/home/remoteuser/

Saya menggunakan ssh untuk meremote host

$ ssh remoteuser@remotehost
remoteuser@remotehost's password: [type correct password here]
$ echo I am now $USER at $HOSTNAME
I am now remoteuser at remotehost

Kemudian saya mengkoneksikan key nya agar dapat di autorisasi

$ if [ ! -d .ssh ]; then mkdir .ssh ; chmod 700 .ssh ; fi
$ mv thishost-rsync-key.pub .ssh/
$ cd .ssh/
$ if [ ! -f authorized_keys ]; then touch authorized_keys ; chmod 600 authorized_keys ; fi
$ cat thishost-rsync-key.pub >> authorized_keys

defaultnya akan mengijinkan siapa saja dapat mengakses ssh, demi menjaga keamanan saya akan merubah settingan agar hanya ip 10.1.1.1 saja yang dapat masuk

SEBELUM


ssh-dss AAAAB3NzaC1kc3MAAAEBAKYJenaYvMG3nHwWxKwlWLjHb77CT2hXwmC8Ap+fG8wjlaY/9t4u
A+2qx9JNorgdrWKhHSKHokFFlWRj+qk3q+lGHS+hsXuvta44W0yD0y0sW62wrEVegz+JVmntxeYc0nDz
5tVGfZe6ydlgomzj1bhfdpYe+BAwop8L+EMqKLS4iSacNjoPlHsmqHMnbibn3tBqJEq2QJjEPaiYj1iP
5IaCuYBhuTKQGa+oyH3mXEif5CKdsIKBj46B0tCy0/GC7oWcUN92QdLrUyTeRJZsTWsxKpRbMliD2pBh
4oyX/aXEf8+HZBrO5vQjDBCfTFQA+35Xrd3eTVEjkGkncI0SAeUAAAAVAMZSASmQ9Pi38mdm6oiVXD55
Kk2rAAABAE/bA402VuCsOLg9YS0NKxugT+o4UuIjyl6b2/cMmBVWO39lWAjcsKK/zEdJbrOdt/sKsxIK
1/ZIvtl92DLlMhci5c4tBjCODey4yjLhApjWgvX9D5OPp89qhah4zu509uNX7uH58Zw/+m6ZOLHN28mV
5KLUl7FTL2KZ583KrcWkUA0Id4ptUa9CAkcqn/gWkHMptgVwaZKlqZ+QtEa0V2IwUDWS097p3SlLvozw
46+ucWxwTJttCHLzUmNN7w1cIv0w/OHh5IGh+wWjV9pbO0VT3/r2jxkzqksKOYAb5CYzSNRyEwp+NIKr
Y+aJz7myu4Unn9de4cYsuXoAB6FQ5I8AAAEBAJSmDndXJCm7G66qdu3ElsLT0Jlz/es9F27r+xrg5pZ5
GjfBCRvHNo2DF4YW9MKdUQiv+ILMY8OISduTeu32nyA7dwx7z5M8b+DtasRAa1U03EfpvRQps6ovu79m
bt1OE8LS9ql8trx8qyIpYmJxmzIdBQ+kzkY+9ZlaXsaU0Ssuda7xPrX4405CbnKcpvM6q6okMP86Ejjn
75Cfzhv65hJkCjbiF7FZxosCRIuYbhEEKu2Z9Dgh+ZbsZ+9FETZVzKBs4fySA6dIw6zmGINd+KY6umMW
yJNej2Sia70fu3XLHj2yBgN5cy8arlZ80q1Mcy763RjYGkR/FkLJ611HWIA= thisuser@thishost

SESUDAH


from="10.1.1.1",command="/home/remoteuser/cron/validate-rsync" ssh-dss AAAAB3Nza
C1kc3MAAAEBAKYJenaYvMG3nHwWxKwlWLjHb77CT2hXwmC8Ap+fG8wjlaY/9t4uA+2qx9JNorgdrWKhH
SKHokFFlWRj+qk3q+lGHS+hsXuvta44W0yD0y0sW62wrEVegz+JVmntxeYc0nDz5tVGfZe6ydlgomzj1
bhfdpYe+BAwop8L+EMqKLS4iSacNjoPlHsmqHMnbibn3tBqJEq2QJjEPaiYj1iP5IaCuYBhuTKQGa+oy
H3mXEif5CKdsIKBj46B0tCy0/GC7oWcUN92QdLrUyTeRJZsTWsxKpRbMliD2pBh4oyX/aXEf8+HZBrO5
vQjDBCfTFQA+35Xrd3eTVEjkGkncI0SAeUAAAAVAMZSASmQ9Pi38mdm6oiVXD55Kk2rAAABAE/bA402V
uCsOLg9YS0NKxugT+o4UuIjyl6b2/cMmBVWO39lWAjcsKK/zEdJbrOdt/sKsxIK1/ZIvtl92DLlMhci5
c4tBjCODey4yjLhApjWgvX9D5OPp89qhah4zu509uNX7uH58Zw/+m6ZOLHN28mV5KLUl7FTL2KZ583Kr
cWkUA0Id4ptUa9CAkcqn/gWkHMptgVwaZKlqZ+QtEa0V2IwUDWS097p3SlLvozw46+ucWxwTJttCHLzU
mNN7w1cIv0w/OHh5IGh+wWjV9pbO0VT3/r2jxkzqksKOYAb5CYzSNRyEwp+NIKrY+aJz7myu4Unn9de4
cYsuXoAB6FQ5I8AAAEBAJSmDndXJCm7G66qdu3ElsLT0Jlz/es9F27r+xrg5pZ5GjfBCRvHNo2DF4YW9
MKdUQiv+ILMY8OISduTeu32nyA7dwx7z5M8b+DtasRAa1U03EfpvRQps6ovu79mbt1OE8LS9ql8trx8q
yIpYmJxmzIdBQ+kzkY+9ZlaXsaU0Ssuda7xPrX4405CbnKcpvM6q6okMP86Ejjn75Cfzhv65hJkCjbiF
7FZxosCRIuYbhEEKu2Z9Dgh+ZbsZ+9FETZVzKBs4fySA6dIw6zmGINd+KY6umMWyJNej2Sia70fu3XLH
j2yBgN5cy8arlZ80q1Mcy763RjYGkR/FkLJ611HWIA= thisuser@thishost

Apabila tidak mendapatkan akses maka akan tampil sbb


#!/bin/sh

case "$SSH_ORIGINAL_COMMAND" in
*\&*)
echo "Rejected"
;;
*\(*)
echo "Rejected"
;;
*\{*)
echo "Rejected"
;;
*\;*)
echo "Rejected"
;;
*\<*)
echo "Rejected"
;;
*\`*)
echo "Rejected"
;;
*\|*)
echo "Rejected"
;;
rsync\ --server*)
$SSH_ORIGINAL_COMMAND
;;
*)
echo "Rejected"
;;
esac

PermitRootLogin no

atau

PermitRootLogin forced-commands-only

Konfigurasi sudah selesai maka kita akan mencobanya dengan perintah

$ rsync -avz -e "ssh -i /home/thisuser/cron/thishost-rsync-key" remoteuser@remotehost:/remote/dir /this/dir/

Cron Job Setup

Ini adalah script untuk cronjob save dengan nama rsync-remotehost-backups

#!/bin/sh

RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
KEY=/home/thisuser/cron/thishost-rsync-key
RUSER=remoteuser
RHOST=remotehost
RPATH=/remote/dir
LPATH=/this/dir/

$RSYNC -az -e "$SSH -i $KEY" $RUSER@$RHOST:$RPATH $LPATH

Kemudian jalankan perintah ini untuk memasukkan script ke dalam crontab

$ crontab -e

Dan masukkan script ini:

0 5 * * * /home/thisuser/cron/rsync-remotehost-backups

Backup ini akan di jalankan setiap hari pada pukul 5

Crontab sebagai penjadwalan service

Crontab adalah sebuah perintah yang sangat berguna untuk menjalankan tugas-tugas yang terjadwal, sehingga akan mengurangi waktu administrasi. Selain crontab, ada juga perintah lain: anacron dan at. Anacron digunakan untuk melakukan penjadwalan suatu perintah untuk komputer yang tidak selalu menyala terus menerus. Anacron menggunakan interval waktu harian, mingguan, dan bulanan. Sedangkan perintah at menjalankan suatu tugas sekali pada satu waktu. Yang paling sering digunakan adalah crontab, karena lebih serba guna, dan dapat diatur untuk berjalan pada sembarang interval waktu.

Kampus kami memiliki beberapa server yang akan menjalankan script untuk melakukan backup data-data penting pada jam-jam sepi, dengan menggunakan cron. Sebagai contoh, script backup akan menghentikan beberapa servis, melakukan rsync dari hot server ke cold server, melakukan backup tape archive standar, dan terakhir menjalankan kembali servis-servis yang dihentikan. Berkat program cron, saya tidak harus berada di sana jam satu malam, saat tugas tersebut dijalankan. Yang harus saya lakukan hanyalah melakukan pengecekan pada peralatan backup dan melihat email setiap pagi untuk memastikan semua berjalan dengan lancar.

Dalam melakukan administrasi sistem, pengaturan cron dilakukan melalui file crontab, yang berisi jadwal waktu dan script yang harus dieksekusi. System Linux memiliki file crontab default, yaitu /etc/crontab, yang akan menjalankan beberapa script pada waktu yang telah ditentukan, misalnya setiap jam, harian, mingguan, dan bulanan. Pertama kali membuka file ini, anda mungkin akan sedikit bingung.

[root@localhost ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
[root@localhost ~]#

Bagian pertama mengatur beberapa variabel:

SHELL
Baris pertama menentukan shell yang akan digunakan untuk menjalankan baris perintah. Defaultnya adalah /bin/sh.
PATH
Cron berjalan sebagai proses subshell, sehingga kita harus menentukan path atau menggunakan statement PATH pada crontab. Hal ini karena kita tidak melakukan login pada console pada saat akan menjalankan perintah, sehingga kita tidak mengakses file .bashrc atau .bash_profile, dan kita tidak memiliki environment variable seperti pada saat login sebagai user biasa atau root. Penting untuk diingat bahwa kita tidak bisa menampilkan data output tanpa menggunakan console – kita tidak memiliki layar untuk menampilkan data tersebut — sehingga setiap output yang kita butuhkan harus disimpan dalam sebuah file log.
MAILTO
Perintah “MAILTO=” pada baris berikutnya akan mengirimkan hasil dari pekerjaan cron kepada user root. Jika kita mendefinisikan MAILTO namun kosong, maka email dari cron akan diabaikan. Jika MAILTO tidak diset, maka email akan dikirimkan kepada user pemilik crontab.
HOME
Baris berikutnya menentukan direktori home yang akan digunakan oleh cron. Jika tidak diset, maka direktori home yang digunakan adalah yang ada pada file /etc/passwd.
# run-parts
Baris ini sebenarnya hanyalah sebuah komentar, walaupun “run-parts” adalah sebuah perintah yang akan menjalankan semua script atau program pada direktori yang ditentukan.

Bagian yang paling sulit bagi kebanyakan orang adalah bagian pengaturan waktu. Kolom berikutnya setelah pengaturan waktu adalah kolom user yang menentukan user “run-as“, dan perintah “run-parts” akan menjalankan script pada direktori yang ditentukan. Ingat bahwa direktori tersebut dinamai sesuai dengan interval waktu yang sesuai untuk menjalankan direktori tersebut. Kita bisa meletakkan script pada direktori yang kita inginkan, sehingga script tersebut akan dijalankan pada waktu yang telah ditentukan pada bagian pengaturan waktu. Namun sebenarnya hal ini bukanlah ide yang bagus, sebab kita bisa saja lupa bahwa ada script di dalam direktori tersebut. Sebaiknya kita mengedit file crontab dan mengisikan tugas-tugas cron kita sendiri, karena dengan cara ini akan lebih mudah untuk mendapatkan daftar tugas-tugas cron dan melakukan pengaturan lebih lanjut melalui crontab. Ingat bahwa ini adalah file crontab milik sistem, yang digunakan untuk menjalankan script dan program untuk maintenance sistem. Sebuah file crontab milik user akan sedikit berbeda, jadi sebaiknya anda tidak menyalinnya.

# Time User Command Path

01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

Dasar-dasar Crontab

Terdapat dua buah file yang menentukan user mana yang bisa menggunakan crontab: /etc/cron.allow dan /etc/cron.deny. Biasanya, hanya ada file cron.deny pada sistem, dan jika file ini ada, dan terdapat nama user di dalamnya (satu user per baris), maka user tersebut tidak diperbolehkan menggunakan perintah crontab. Jika terdapat file cron.allow, maka hanya user yang namanya terdapat pada file ini yang diperbolehkan menggunakan perintah crontab.

Pada file crontab, terdapat enam field untuk setiap entry, dan masing-masing field dipisahkan oleh spasi atau tab.

* Lima field pertama menentukan kapan perintah akan dijalankan.
* Field ke-enam adalah perintah yang akan dijalankan.

Minute – 0-59.
Hour – 0-23 24-hour format.
Day – 1-31 Day of the month.
Month – 1-12 Month of the year.
Weekday – 0-6 Day of the week. 0 refers to Sunday.

Pada file crontab, akan tampak seperti ini:

# min(0-59) hours(0-23) day(1-31) month(1-12) dow(0-6) command
34 2 * * * sh /root/backup.sh

Pada contoh tersebut, perintah “sh /root/backup.sh” akan dijalankan pada jam 2:34 AM setiap hari.

Tanda bintang pada contoh tersebut berarti ‘semua waktu‘. Tanda bintang pada kolom ‘menit’ berarti “jalankan setiap menit”.
Percobaan

Sekarang mari kita mencoba membuat sebuah tugas untuk cron. Perintah yang harus kita jalankan adalah crontab -e, yang akan membuka teks editor vi untuk melakukan pengaturan tugas-tugas cron.

[root@localhost ~]# crontab -e

Sekarang masukkan baris berikut ini:

* * * * * /usr/bin/wall “Hello From Crontab”

Setelah disimpan, kita akan melihat keluaran berikut ini:

crontab: installing new crontab
[root@localhost ~]#

Dalam beberapa saat, anda akan melihat pesan berikut ini:

Broadcast message from root (Thu Apr 3 14:52:01 2008):

Hello From Crontab

Pesan ini akan muncul setiap menit, karena kita meletakkan tanda bintang pada semua field waktu. Jika kita tidak menghapus file crontab ini, maka kita akan mendapatkan pesan ini setiap menit selama hidup kita. Hal ini sekaligus menunjukkan apa akibatnya jika kita melakukan suatu kesalahan dengan crontab. Kita harus menjalankan perintah crontab -r untuk menghapus entry di atas.

[root@localhost ~]# crontab -r

Misalkan di masa mendatang kita harus menjalankan web server Apache httpd, cron juga bisa diandalkan. Pertama, kita akan mengecek apakah httpd sedang tidak berjalan. Lalu, kita jalankan perintah date untuk mendapatkan waktu saat ini, sehingga kita bisa mengatur crontab untuk menjalankannya di masa datang.

[root@localhost ~]# service httpd status
httpd is stopped
[root@localhost ~]#
[root@localhost ~]# date
Thu Apr 3 15:45:32 MST 2008
[root@localhost ~]#

Kita dapat dengan mudah menghitung waktu 10 menit dari sekarang. Jalankan perintah crontab -e, dan tulislah file crontab dengan mengingat format waktunya.

# min(0-59) hours(0-23) day(1-31) month(1-12) dow(0-6) command

55 15 * * * /sbin/service httpd start

Gunakan saja tanda bintang untuk hari, bulan dan hari dalam seminggu, dan gunakan satu spasi saja, sebab beberapa distribusi Linux tidak mengijinkan anda menggunakan lebih dari satu spasi.

55 15 * * * /sbin/service httpd start

[root@localhost ~]# crontab -e
crontab: Installing new crontab

Jika anda melakukan kesalahan, crontab akan memberitahu anda saat anda menutup editor. Dengan asumsi tidak ada kesalahan, web server Apache akan berjalan kurang dari sepuluh menit dari sekarang. Anda bisa menggunakan perintah crontab -l untuk melihat daftar tugas-tugas dalam file crontab.

[root@localhost ~]# crontab -l
55 15 * * * /sbin/service httpd start

Untuk menghapusnya, lagi-lagi kita gunakan perintah crontab -r.

[root@localhost ~]# crontab -r

Kita bisa melakukan banyak kombinasi pengaturan waktu. Ada cara lain untuk pengaturan waktu: “20-27″ menunjukkan range; “3,4,7,8″ artinya hanya interval tersebut untuk suatu pilihan, dan */5 artinya setiap interval ke lima. Fitur lainnya, setelah cron menyelesaikan suatu tugas, kita akan mendapatkan email berisi keluaran dari perintah yang dijalankan.



Contoh lainnya

Entry crontab berikut ini akan menjalankan perintah setiap menit ke 15 dan 30 setiap jam, selama bulan Mei:

15,30 * * 5 * /usr/bin/command

Untuk menjalankan script backup setiap Minggu, Senin, dan Selasa pada jam 2:12 AM, gunakan entry berikut:

12 2 * * 0-2 sh /root/backup.sh

Untuk menjalankan script pada menit ke-12 setiap jam ke-3 setiap harinya, gunakan entry berikut:

12 */3 * * * sh /root/script.sh

Agar cron menuliskan keluaran dari suatu perintah ke dalam sebuah file log, anda bisa menambahkan entry berikut:

12 */3 * * * sh /root/script.sh >> /root/script.log 2>&1

Agar anda tidak menerima email dari cron:

12 */3 * * * sh /root/script.sh > /dev/null 2>&1

Berikut ini contoh email yang akan anda terima dari keluaran cron:

From root@localhost.localdomain Thu Apr 3 12:08:01 2008
Date: Thu, 3 Apr 2008 12:08:01 -0700
From: root@localhost.localdomain (Cron Daemon)
To: root@localhost.localdomain
Subject: Cron sh /root/s.sh
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:

test

Beberapa tips dalam menggunakan cron:

* Selalu gunakan path absolut.
* Jika anda tidak yakin apakah tugas-tugas cron telah selesai, periksalah email anda.
* Hapus entry cron yang sudah tidak diperlukan lagi.
* Pastikan crond berjalan.

Perintah-perintah:

crontab -e – Mengedit file crontab yang sudah ada, atau membuat file baru.
crontab -l – Menampilkan isi file crontab.
crontab -r – Menghapus file crontab.
crontab -u – Mengedit crontab milik user.

Selasa, 21 Desember 2010

Copy data dan Backup via Network menggunakan nc (netcat)

Pendahuluan

nc (atau netcat) adalah sebuah utiliti yang digunakan untuk berbagai hal yang berkaitan dengan protokol TCP atau UDP. Yang dapat membuka koneksi TCP, mengirimkan paket-paket UDP, listen pada port-port TCP dan UDP, melakukan scanning port, dan sesuai dengan IPV4 dan IPV6. Tidak seperti telnet, script nc memisahkan pesanpesan error ke standar error daripada ke standar output, sedangkan telnet mengirimkan output dan error ke standar output yang sama.

Pada artikel ini penulis akan menjelaskan penggunaan nc berkaitan dengan copy data dan backup melalui jaringan dengan menggunakan utiliti nc (netcat).
Skenario Pada tulisan ini penulis akan mencopy data dan membackup hard disk atau partisi hard disk dari satu mesin ke mesin lainnya. Disini penulis menggunakan 2 buah mesin/komputer dimana yang satu sebagai mesin atau komputer backup (destination) dan yang satu lagi adalah mesin yang akan dibackup salah satu partisi harddisk nya (source).
Untuk itu Anda dapat melihat gambar1 untuk skenarionya.



Gambar1.
Skenario copy data dan backup via network
Penjelasan gambar:
● Mesin dengan hostname Similikiti memiliki nomor IP 192.168.1.1 akan bertindak sebagai komputer yang akan dibackup salah satu partisinya (source). Distro yang digunakan pada mesin Similikiti adalah CentOS release 5.
● Mesin dengan hostname PCBoy
memiliki nomor IP 192.168.1.33 akan bertindak sebagai komputer backup (destination). Distro yang digunakan pada mesin PCBoy
adalah Fedora Core 6.

Persiapan software

Untuk itu cobalah Anda cek terlebih dahulu pada kedua komputer (Similikiti dan PCBoy)
apakah sudah terinstal utiliti nc(netcat). Perintahperintah berikut dapat Anda lakukan guna mengecek keberadaan utiliti nc tersebut:
[root@Similikiti ~]# which nc
/usr/bin/nc
atau
Halaman 2
[root@PC-Boy ~]# rpm -qa|grep -w nc
nc-1.84-10.fc6
Jika belum ada maka saatnyalah Anda menginstal paket/software nc ini. Untuk instalasi dapat Anda manfaatkan utiliti 'yum' yang akan mendownload software dan menginstalkannya kekomputer, berikut ini contoh eksekusi perintah 'yum' untuk instalasi nc yang dapat Anda lihat pada gambar2.


Gambar2.

Instalasi 'nc' dengan yum.
Beberapa utliti yang lain yang akan digunakan dalam kasus ini adalah dd dan bzip2
Copy data via network dengan nc
Bagimanakah caranya untuk menyalin data/file melalui jaringan menggunakan nc ?. Ingat konsep menyalin data (ada sumber dan ada tujuan) .! Dalam skenario yang berfungsi sebagai sumber adalah komputer Similikiti dan PCBoy adalah tujuan (derstination).

Untuk itu Anda dapat mengikuti langkahlangkah berikut ini:
Halaman 3
Perintah nc pada komputer PCBoy:
[root@PC-Boy ~]# nc -l 192.168.1.33 1234 > hasil.txt
Perintah nc pada komputer Similikiti:
[henry@Similikiti ~]$ nc 192.168.1.33 1234 < /etc/passwd
Dari contoh kedua perintah diatas menunjukkan proses penyalinan (copy) file /etc/passwd yang ada pada Similikiti ke komputer PCBoy dan file salinannya ditulis dengan nama hasil.txt. Pada perintah pertama yang dieksekusi di PCBoy(192.168.1.33) menyatakan bahwa nc membuka koneksi TCP pada port 1234 dan dalam kondisi LISTEN (siap merespon) dan mengarahkan output ke file hasil.txt pada current direktori. Sedangkan perintah kedua yang dieksekusi pada komputer Similikiti (192.168.1.1) menyatakan bahwa nc mengirimkan data input dari file /etc/passwd ke komputer PCBoy(192.168.1.33) port 1234 melalui jaringan.
Backup partisi hard disk via network
Kasus kedua adalah penulis bertujuan untuk membackup data yang terdapat pada partisi (/dev/hda6) pada komputer Similikiti ke sebuah partisi hard disk (/dev/hda11) yang terdapat pada PCBoy.
Ukuran kedua partisi pada kedua komputer memiliki ukuran yang sama. Proses backup ini
membutuhkan utiliti dd (untuk duplikasi disk) dan bzip2 (kompresi/dekompresi data). Untuk itu Anda dapat mengikuti langkahlangkah berikut ini:
Perintah nc pada komputer PCBoy:
[root@PC-Boy ~]# nc 192.168.1.33 1234 -l |bzip2 -d | dd of=/dev/hda11
Perintah nc pada komputer Similikiti:
[root@Similikiti ~]# bzip2 -c /dev/hda6 | nc 192.168.1.33 1234
Maksud dari kedua perintah diatas adalah menduplikasi isi partiisi hard disk (/dev/hda6) pada komputer Similikiti ke komputer PCBoy pada partisi disk (/dev/hda11).

Sabtu, 18 Desember 2010

Memperbesar dan mengurangi ukuran Partisi Harddisk dengan LVM

=============================================================================
Pengantar
=============================================================================
LVM (Logical Volume Management) memungkinkan ukuran hard disk dengan mudah
diperbesar/expand ataupun dikurangi/reduce. Ide dasar dari LVM adalah
memudahkan Anda dalam "meresize" ukuran partisi Harddisk Anda.
Dalam konsep LVM seluruh partisi harddisk disebut dengan "Physical Volume",
Kemudian Physical volume dimasukkan kedalam suatu "Volume Group", dari
Volume Group dibuatlah "Logical Volume".
Jika Anda ingin memanfaatkan partisi LVM maka Anda perlu menginstall utiliti
untuk mensetup LVM, jadi pastikan paket utiliti lvm2 (lvm2-2.02.06-6.0.RHEL4)
telah terinstall pada system Anda (dalam tulisan ini penulis menggunakan Linux CentOS 4.4 final)


===============================================================================
Membuat partisi Harddisk LVM
===============================================================================

1. Membuat "Physical Volume"
--------------------------------
Untuk menerapkan partisi harddisk dengan LVM sebaiknya Anda memiliki
Harddisk lebih dari satu, tetapi dalam contoh kali ini kita hanya memiliki
sebuah harddisk (/dev/hda) yang sebelumnya terdiri dari beberapa partisi,
Misalkan Anda memiliki partisi hardisk /dev/hda10, dan /dev/hda11
kedua partisi ini masing-maisng ukurannya 2.80 GB dan 964.00 MB
lalu kedua partisi harddisk ini akan dijadikan sebagai Pyhisical Volume.
Untuk membuat Pyhisical Volume jalankan perintah sbb:

[root@sotnec ~]# pvcreate /dev/hda10
Physical volume "/dev/hda10" successfully created
[root@sotnec ~]# pvcreate /dev/hda11
Physical volume "/dev/hda11" successfully created


2. Membuat "Volume Group"
------------------------------
Selanjutnya Anda harus membuat "Volume Group" yang terdiri dari "Physical
Volume" /dev/hda10 dan /dev/hda11. Tetapi sebelumnya Anda buat dahulu
file konfigurasi LVM secara otomatis dengan perintah Sbb:

[root@sotnec ~]# vgscan
Reading all physical volumes. This may take a while...

Kemudian barulah Anda buat Volume Group dengan perintah sbb:

[root@sotnec ~]# vgcreate -v lvm-hda /dev/hda10 /dev/hda11
Wiping cache of LVM-capable devices
Adding physical volume '/dev/hda10' to volume group 'lvm-hda'
Adding physical volume '/dev/hda11' to volume group 'lvm-hda'
Archiving volume group "lvm-hda" metadata (seqno 0).
Creating volume group backup "/etc/lvm/backup/lvm-hda" (seqno 1).
Volume group "lvm-hda" successfully created

Perintah diatas akan membuat sebuah Volume Group dengan nama lvm-hda (nama ini
bisa didefinisikan sesuai keinginan Anda).

3. Membuat "Logical Volume"
------------------------------------
Dari Volume Group yang sudah ada Anda kemudian dapat membuat "Logical Volume",
sebelumnya lihat dahulu daftar Volume Group yang ada saat ini, Anda dapat menjalankan
perintah sbb:

[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 3.74 GB
PE Size 4.00 MB
Total PE 958
Alloc PE / Size 0 / 0
Free PE / Size 958 / 3.74 GB
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO

Dan selanjutnya buatlah "Logical Volume" dengan perintah sbb:

[root@sotnec ~]# lvcreate -L 958 lvm-hda -n lvm0
Logical volume "lvm0" created

hasil perintah diatas akan membuat file device di /dev/lvm-hda/lvm0

Untuk melihat "Logical Volume" yang tadi sudah Anda buat jalankan perintah
sbb:

[root@sotnec ~]# lvdisplay
--- Logical volume ---
LV Name /dev/lvm-hda/lvm0
VG Name lvm-hda
LV UUID N3gRGE-2Kbp-jnnL-OwCo-CR9P-kq9g-ucBZ5l
LV Write Access read/write
LV Status available
# open 0
LV Size 3.74 GB
Current LE 958
Segments 2
Allocation inherit
Read ahead sectors 0
Block device 253:0


4. Memformat partisi LVM ("device lvm0") dengan File System ext3
----------------------------------------------------------------

Selanjutnya partsis LVM yang telah dibuat diformat dengan file system ext3,
lakukan perintah berikut :

[root@sotnec ~]# mkfs.ext3 /dev/lvm-hda/lvm0
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
490560 inodes, 980992 blocks
49049 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1006632960
30 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.


5. Memounting device "lvm0" (partisi LVM)
-----------------------------------------
Setelah selesai diformat maka partisi LVM Anda sudah dapat digunakan
untuk itu coba Anda mount ke direktori tertentu dalam file system linux,
misalnya kita akan memunting device /dev/lvm-hda/lvm0 ke direktori /media/lvm

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 40M 3.5G 2% /media/lvm

Dari perintah df -h tampak bahwa partsis LVM Anda sudah di mount dan
tinggal digunakan. Coba Anda kopi atau salin file atau folder tertentu ke
dalam partisi atau direktori /media/lvm, contoh sbb:

[root@sotnec ~]# cp -rf /etc /media/lvm/

perintah diatas akan menyalin direktori /etc kedalam /media/lvm/
lalu coba lihat size yang telah digunakan saat ini dari partisi LVM Anda, sbb:

[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 85M 3.5G 3% /media/lvm
[root@sotnec ~]# ls -al /media/lvm/
total 36
drwxr-xr-x 4 root root 4096 Apr 24 14:07 .
drwxr-xr-x 5 root root 4096 Apr 24 12:15 ..
drwxr-xr-x 86 root root 8192 Apr 24 14:07 etc
drwx------ 2 root root 16384 Apr 24 14:01 lost+found


Nah sudah berfungsi bukan partisi LVM Anda. Lalu bagaimana jika
partisi LVM Anda mulai penuh dan Anda ingin memperbesar ukuran dari partisi
LVM Anda saat ini. ? Nah untuk menjawabnya coba perhatikan bagian selanjutnya.


===============================================================================
Memperbesar/menambah (Expand) ukuran disk partisi LVM Anda.
===============================================================================

Suatu saat partisi LVM Anda akan kehabisan space atau dengan kata lain
Available size disk nya akan mendekati 0% alias Full penggunaan size nya. Nah
untuk menjaga-jaga Anda berniat untuk menambah ukuran/size partisi LVM anda
(contoh : "lvm0"). Nah bagaimanakah caranya ?, misalkan Anda memiliki partisi
Hard disk /dev/hda12 dengan ukuran 964.62 MB (misal: sebesar inilah tambahan size
yang akan Anda terapkan) . Nah partisi /dev/hda12 ini akan Anda jadikan
sebagai Physical Volume dari Volume Group "lvm-hda". Untuk itu Anda buatlah
terlebih dahulu "Physical Volume" /dev/hda12 dengan perintah sbb:

[root@sotnec ~]# pvcreate /dev/hda12
Physical volume "/dev/hda12" successfully created

Lalu coba cek seluruh "Physical Volume" yang ada saat ini:

[root@sotnec ~]# pvdisplay
--- Physical volume ---
PV Name /dev/hda10
VG Name lvm-hda
PV Size 2.80 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 717
Free PE 0
Allocated PE 717
PV UUID BNk2Eo-ne4J-R4Xl-KYou-L8dF-xKBn-5UHFx5

--- Physical volume ---
PV Name /dev/hda11
VG Name lvm-hda
PV Size 964.00 MB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 241
Free PE 0
Allocated PE 241
PV UUID g1tFCz-AULA-H6UY-NPFC-PRzZ-ekcc-9BkdEX

--- NEW Physical volume ---
PV Name /dev/hda12
VG Name
PV Size 964.62 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID RP1FCi-hwJ6-nLkP-hMuU-zM9i-BIcs-mB4GEz

[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 3.74 GB
PE Size 4.00 MB
Total PE 958
Alloc PE / Size 958 / 3.74 GB
Free PE / Size 0 / 0
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO



Kemudian Anda harus memperluas (extend) Volume Group "lvm-hda" dimana sekarang
kita ingin Physical Volume /dev/hda12 menjadi anggota dari Volume Group
"lvm-hda", untuk itu jalankan perintah berikut:

[root@sotnec ~]# vgextend lvm-hda /dev/hda12
Volume group "lvm-hda" successfully extended

Coba cek volume group saat ini, seharusnya Volume Group "lvm-hda" ukuran size
nya bertambah bukan ? dari 3.74 GB menjadi 4.68 GB


[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 4.68 GB
PE Size 4.00 MB
Total PE 1199
Alloc PE / Size 958 / 3.74 GB
Free PE / Size 241 / 964.00 MB
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO


Apakah "Logical Volume (lvm0)" ukurannya telah bertambah ?
---------------------------------------------------------
Untuk menjawabnya coba Anda mount ulang partisi /dev/lvm-hda/lvm0

[root@sotnec ~]# umount /media/lvm
[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 85M 3.5G 3% /media/lvm

dari perintah "df -h " diatas terlihat bahwa partisi lvm0 belum
bertambah ukurannya, nah solusinya agar Logical Volume ukurannya
juga mengikuti ukuran sebagaimana ukuran real Volume Group "lvm-hda" saat ini
maka Anda harus mengextend "Logical Volume" lvm0 dengan perintah sbb:

[root@sotnec ~]# lvextend -L +1199 /dev/lvm-hda/lvm0 /dev/hda12
Extending logical volume lvm0 to 4.68 GB
Logical volume lvm0 successfully resized

Catatan:
-l 1199 menunjukkan total PE yang Anda dapat lihat dari perintah "vgdisplay"


Selanjutnya meresize juga ukuran partisi /dev/lvm-hda/lvm0. Untuk itu
coba lakukan langkah-langkah berikut ini:

Umount terlebih dahulu partisi /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# umount /media/lvm/

Check/scan file system sbb:

[root@sotnec ~]# e2fsck -f /dev/lvm-hda/lvm0
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/lvm-hda/lvm0: 4034/490560 files (0.1% non-contiguous), 37159/980992
blocks

Kemudian coba Anda resize file system /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# resize2fs /dev/lvm-hda/lvm0 4600M
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/lvm-hda/lvm0 to 1177600 (4k) blocks.
The filesystem on /dev/lvm-hda/lvm0 is now 1177600 blocks long.


Coba Anda mount lagi /dev/lvm-hda/lvm0 sbb:

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/

Lalu lihatlah ukurannya saat ini, sbb:

[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
4.5G 85M 4.2G 2% /media/lvm

Dan coba lihat data yg ada pada /dev/lvm-hda/lvm0, tidak hilang
dan tetap ada bukan ?

[root@sotnec ~]# ls /media/lvm/
etc lost+found




===============================================================================
Mengurangi (Reduce) ukuran disk partisi LVM Anda.
===============================================================================

Hal yang sebaliknya dapat juga Anda lakukan (harus hati-hati !!) yaitu
mengurangi atau memperkecil ukuran partisi LVM Anda tetapi tentunya
pengurangan jangan sampai size total partisi LVM lebih kecil dari size yang sudah
digunakan pada partisi LVM tersebut. Nah untuk memperkecil atau mengurangi
partisi LVM , dapat Anda lakukan sbb:

Umount terlebih dahulu partisi /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# umount /media/lvm/

Check/scan file system sbb:

[root@sotnec ~]# e2fsck -f /dev/lvm-hda/lvm0
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/lvm-hda/lvm0: 4034/588672 files (0.1% non-contiguous), 40237/1177600
blocks

Lalu resize partisi LVM (misalnya menjadi 4200M atau 4.2G) sbb:

[root@sotnec ~]# resize2fs /dev/lvm-hda/lvm0 4200M
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/lvm-hda/lvm0 to 1075200 (4k) blocks.
The filesystem on /dev/lvm-hda/lvm0 is now 1075200 blocks long.


Dan cobalah Anda mount partisi LVM tersebut, sbb:

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
4.1G 85M 3.8G 3% /media/lvm

Nah tampak bukan ukuran Size partisi LVM ("lvm0") saat ini menjadi "+/- 4,1G".

nah silahkan Anda coba dech...

Jumat, 17 Desember 2010

RSSH Mencegah akses SSH dan merubah permission pada SCP, SFTP

Instalasi rssh

Distro yang dipakai menggunakan Linux Centos
Pertama download rssh
# cd /tmp
# wget http://dag.wieers.com/rpm/packages/rssh/rssh-2.3.2-1.2.el5.rf.i386.rpm

Setelah itu install
# rpm -ivh rssh-2.3.2-1.2.el5.rf.i386.rpm

Untuk membuat user account untuk rssh, gunakan perintah berikut ini:
sudo useradd -m -d /home/kevin -s /usr/bin/rssh kevin
sudo passwd kevin

User account yang sudah terdaftar pada sistem linux dapat juga Anda jadikan user untuk rssh , dengan cara merubah shell user tersebut menjadi rssh. Berikut ini contoh merubah shell user account yang sudah ada.
# usermod -s /usr/bin/rssh kevin
atau
# chsh -s /usr/bin/rssh kevin

Untuk menghapusnya dari rssh gunakan perintah
# usermod -s /bin/bash

Selanjutnya buktikan dahulu bahwa user-user dengan shell rssh tidak akan bisa melakukan akses shell via ssh. Lakukan perintah berikut ini untuk mengujinya (sbg contoh ip server ssh adalah 192.168.1.100)
desi@ubuntu:~$ ssh kevin@192.168.1.100
kevin@192.168.1.100's password:

This account is restricted by rssh.
This user is locked out.
If you believe this is in error, please contact your system
administrator.
Connection to 192.168.1.237 closed.
Muncul pesan “This account is restricted by rssh” membuktikan bahwa user kevin adalah betul sebagai user yang dibatasi akses shell nya dikarenakan shell user kevin menggunakan rssh.

Konfigurasi rssh untuk mengijinkan user melakukan SCP dan SFTP Secara default file konfigurasi rssh tidak mengijinkan user siapapun melakukan scp atau sftp. Untuk itu
kita akan coba melakukan konfigurasi agar user kevin hanya dapat melakukan SCP dan SFTP. Untuk itu Anda harus mengedit file /etc/rssh.conf, kemudian tambahkan pada bagian baris akhir file, entri seperti berikut ini:
user=kevin:011:00011
Penjelasan dari entri baris diatas adalah, user=kevin menunjukkan username atau loginname dari user
yang akan diberikan ijin. Kemudian angka 011 adalah angka yang menunjukan nilai umask. Angka
00011 menunjukkan hanya diijinkan SFTP dan SCP. Penjelasan detil makna dari angka 00011 seperti ini untuk angka 0 yang paling awal adalah angka yang menunjukan bahwa tidak dijinkan untuk rsync, angka 0 berikutnya menunjukan tidak dijinkan untuk rdist, angka 0 berikutnya artinya tidak dijinkan untuk cvs, dan selanjutnya adalah angka 1 yang menunjukkan ijin untuk sftp, dan angka 1 terakhir ijin untuk scp.
Selanjutnya coba untuk melakukan scp ataupun sftp ke komputer ssh server 192.168.1.100, apakah bisa atau tidak (seharusnya bisa jika konfigurasi benar).
Jika Anda akan memberikan ijin untuk user lainnya maka hal yang sama harus dilakukan seperti diatas, Anda harus manambah entri baru dibawahnya yang meunjukkan konfigurasi ijin akses untuk user tersebut.

Kamis, 09 Desember 2010

IP Bonding di Linux – RHEL 5

Step 1:Check your network interfaces
#ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: g
Current message level: 0×00000007 (7)
Link detected: yes

#ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: g
Current message level: 0×00000007 (7)
Link detected: yes

Step 2: Check all the requiured kernel modules are available(bonding and mii)
#modprobe –-list | grep bonding
/lib/modules/2.6.18-92.el5/kernel/drivers/net/bonding/bonding.ko

# modprobe –-list | grep mii
/lib/modules/2.6.18-92.el5/kernel/drivers/net/mii.ko

Step 3: Editing the modprobe.conf file
#vim /etc/modprobe.conf
and add the following lines at the end
alias bond0 bonding
options bond0 mode=1 arp_ip_target=192.168.52.1 arp_interval=200 primary=eth0
To know more about the parameters to be used here use the command

#modinfo bonding
filename: /lib/modules/2.6.18-92.el5/kernel/drivers/net/bonding/bonding.ko
author: Thomas Davis, tadavis@lbl.gov and many others
description: Ethernet Channel Bonding Driver, v3.2.4
version: 3.2.4
license: GPL
srcversion: DB2ABCD47A83F8567EBE92B
depends:
vermagic: 2.6.18-92.el5 SMP mod_unload gcc-4.1
parm: max_bonds:Max number of bonded devices (int)
parm: miimon:Link check interval in milliseconds (int)
parm: updelay:Delay before considering link up, in milliseconds (int)
parm: downdelay:Delay before considering link down, in milliseconds (int)
parm: use_carrier:Use netif_carrier_ok (vs MII ioctls) in miimon; 0 for off, 1 for on (default) (int)
parm: mode:Mode of operation : 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp)
parm: primary:Primary network device to use (charp)
parm: lacp_rate:LACPDU tx rate to request from 802.3ad partner (slow/fast) (charp)
parm: xmit_hash_policy:XOR hashing method: 0 for layer 2 (default), 1 for layer 3+4 (charp)
parm: arp_interval:arp interval in milliseconds (int)
parm: arp_ip_target:arp targets in n.n.n.n form (array of charp)
parm: arp_validate:validate src/dst of ARP probes: none (default), active, backup or all (charp)
parm: fail_over_mac:For active-backup, do not set all slaves to the same MAC. 0 of off (default), 1 for on. (int)
module_sig: 883f35048175a9e6e24e25c96667c37112449509f5739ebf283efa5295d315b73cee5e956f6e25709cbcf2826571c5ffc20f2d87672bb921d610d7
Step 3: Now load the modules


#modprobe bonding
#modprobe mii
This will create a bond0 config file in the networks-scripts directory
Step 4: Editting the three configuration files for eth0,eth1,bond0
|# vim /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=192.168.52.4
USERCTL=no
GATEWAY=192.168.52.1
TYPE=Ethernet
IPV6INIT=no
PEERDNS=yes

#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
TYPE=Ethernet

#vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
TYPE=Ethernet
Step5: Restart your networks service

#/etc/init.d/network restart
#ifconfig

Kamis, 02 Desember 2010

Link Tools

1. Mengamankan Enkripsi dengan TrueCrypt http://www.truecrypt.org
2. Remote Desktop dengan FreeNX http://www.nomachine.com
3. Vyatta 6.1 Dengan Sertifikasi Untuk IPv6 http://www.vyatta.com
4. OpenStack is a collection of open source technology products delivering a scalable, secure, standards-based cloud computing software solution http://www.openstack.org

Minggu, 28 November 2010

IMPLEMENTASI VLAN

==========================================

APA ITU VLAN

Sebuah Local Area Network (LAN) pada dasarnya diartikan sebagai sebuat network dari kumpulan computer yang berada pada lokasi yang sama. Sebuah LAN diartikan sebagai single broadcast domain, artinya ada sebuah broadcast informasi dari seorang user dalam LAN, broadcast akan diterima oleh setiap user lain dalam LAN tersebut.Broadcast yang keluar dari LAN bisa difilter dengan router. Susunan dari broadcast domain tergantung juga dari jenis koneksi fisik perangkat networknya. Virtual Local Area Network (VLAN) dikembangkan sebagai pilihan alternatif untuk mengurangi broadcast traffic.

Sebuah Virtual LAN merupakan fungsi logik dari sebuah switch. Fungsi logik ini mampu membagi jaringan LAN ke dalam beberapa jaringan virtual. Jaringan virtual ini tersambung ke dalam perangkat fisik yang sama. Implementasi VLAN dalam jaringan memudahkan seorang administrator dalam membagi secara logik group-group workstation secara fungsional dan tidak dibatasi oleh lokasi.

Dalam tradisioanl LAN, workstation masing-masing terhubung dengan workstation yang lain dalam sebuah hub. Perangkat ini akan menyebarkan semua lalu lintas data di seluruh network. Jika ada dua user yang mencoba mengirim informasi pada waktu yang sama, sebuah tabrakan (collision) akan terjadi dan semua pengiriman data akan hilang. Jika tabrakan (collision) telah terjadi, pengiriman data akan dilanjutkan disebar di seluruh network oleh hub. Informasi data asal akan terus mengirim sampai dengan collision hilang. Dengan demikian akan banyak membuang waktu dan resource (sumber daya).

Untuk mengatasi collision di sebuah network, maka digunakanlah sebuah bridge atau sebuah switch. Perangkat ini tidak akan mem-forward collision, tapi bisa melewatkan broadcast (ke setiap user di network) dan multicast. Dan sebuah router digunakan untuk mencegah broadcast dan multicast dari lalulintas data network.

BUAT APA VLAN

Menurut IEEE standard 802.1Q, Virtual LANs menawarkan sebuah metode untuk membagi satu fisik network ke banyak broadcast domains. dalam network besar, broadcast domain ini biasanya sama dengan batas IP subnet, yang masing-masing subnet mempunyai satu VLAN.

Sebuah VLAN membolehkan banyak Virtual LANs berdampingan dalam sebuah fisik LAN (switch). Artinya jika ada dua mesin yang terhubung dalam switch yang sama tidak dapat mengirim Ethernet frames ke mesin lain meskipun dalam satu kabel yang sama. Jika dibutuhkan untuk komunikasi, maka sebuah router harus ditempatkan di antara dua VLAN tersebut untuk memforward paket, seperti jika ada dua LAN yang secara fisik terpisah.

Untuk mengenali traffic dari VLAN yang berbeda, 802.1Q standard mendefinisikan sebuah metode yang disebut VLAN TAGGING. dengan tagging, switches memasukkan 4-bit VLAN tag ke dalam header dari masing-masing frame. sebuah tag mengandung 12-bit. VLAN ID. pengenal frame anggota VLAN.

BAGAIMANA VLAN BEKERJA

Di banyak distro linux semuanya sudah menyertakan vlan-tool di dalam distribusinya.
seperti :

Debian : ~]#apt-get install vlan
Redhat/Fedora : ~]#rpm -ivh vconfig.i386.rpm

Jika distro anda tidak mempunyai program itu silahkan download dengan versi terbarunya di : http://scry.wanfear.com/~greear/vlan.html.

Situasi yang dihadapi :

Kernel sudah dicompile dengan dukungan 802.1Q (built-in/module) dan vlan-tool.
Vlan utilities, seperti vconfig, ifenslave, iproute2.
sebuah pc linux
cisco switch
swith AT-8024 (alied telesyn)
cisco router (kalo bisa)
SETTING VLAN

sebagai root :

~]#modprobe 8021q # lewati baris ini jika kernel anda sudah dicompile built-in 802.1q dan tidak sebagai module.

#Silahkan tambahkan tiga vlan interface di eth1 (sebagai contoh) dengan vlan id 5, 6, 7 dan 8 :

~]# vconfig add eth1 5
~]# vconfig add eth1 6
~]# vconfig add eth1 7
~]# vconfig add eth1 8
perhatian: jangan menggunakan vlan 1. karena di banyak device digunakan sebagai management vlan internal (seperti cisco, AT)

untuk melihat interface yang telah dibuat :

~]# ifconfig eth1.5
~]# ifconfig eth1.6
~]# ifconfig eth1.7
~]# ifconfig eth1.8

atau

~]#ifconfig -a
untuk menghapus vlan interface:

~]# vconfig rem eth1.5
~]# vconfig rem eth1.6
~]# vconfig rem eth1.7
~]# vconfig rem eth1.8
dan banyak informasi dan statistik yang dapat dilihat di /proc/net/vlan/ folder :

[root@masterpop3 root~]# cat /proc/net/vlan/eth1.2
eth1.2 VID: 2 REORDER_HDR: 1 dev->priv_flags: 1
total frames received: 53973265
total bytes received: 1075877000
Broadcast/Multicast Rcvd: 397878
total frames transmitted: 41904604
total bytes transmitted: 2333267429
total headroom inc: 0
total encap on xmit: 41904604

Device: eth1
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESSS priority Mappings:
dan sekarang, anda dapat meng-konfigurasi vlan interface anda seperti interface biasa.
Untuk meningkatkan kapasitas bandwidth traffic dan load-balancing bisa digunakan bonding interface (silahkan baca dibawah).

CONTOH APLIKASI VLAN :

* DI LINUX

=====================================================

Buat file config untuk startup interface vlan, misal buat /etc/rc.vlan


#!/bin/bash
modprobe 8021q
ifconfig eth1 down
ifconfig eth1 up
vconfig add eth1 5
vconfig add eth1 6
vconfig add eth1 7
vconfig add eth1 8

ifconfig eth1.5 10.10.1.1 netmask 255.255.255.0 broadcast 10.10.1.255 up
ifconfig eth1.6 10.10.2.1 netmask 255.255.255.0 broadcast 10.10.2.255 up
ifconfig eth1.7 10.10.3.1 netmask 255.255.255.0 broadcast 10.10.3.255 up
ifconfig eth1.8 10.10.4.1 netmask 255.255.255.0 broadcast 10.10.4.255 up
=====================================================

untuk melihat interface yang telah dibuat ketik : /sbin/ifconfig -a

* Di Fedora / Redhat Linux (RPM Based)

[root@linux aa]# cd /etc/sysconfig/network-scripts/
[root@linux network-scripts]# cat ifcfg-eth1.5

DEVICE=eth1.5
BOOTPROTO=static
IPADDR=10.10.1.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes
[root@linux network-scripts]# cat ifcfg-eth1.6

DEVICE=eth1.6
BOOTPROTO=static
IPADDR=10.10.2.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes
[root@linux network-scripts]# cat ifcfg-eth1.7

DEVICE=eth1.7
BOOTPROTO=static
IPADDR=10.10.3.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes
[root@linux network-scripts]# cat ifcfg-eth1.8

DEVICE=eth1.8
BOOTPROTO=static
IPADDR=10.10.4.1
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes
========================================================
SWITCH MANAGABLE ALIED-TELESYN AT-8024 (24 port)

main menu -> VLAN menu (2) -> Configure VLANs (5)

1 Default_VLAN U: 23-24
T:

5 vlan5 U: 1-6
T: 23-24

6 vlan6 U: 7-12
T: 23-24

7 vlan7 U: 13-18
T: 23-24

8 vlan8 U: 19-22
T: 23-24
Port 23,24 sebagai port tagging atau port trunking (yang bisa dihubungkan ke port trunking linux atau router cisco).

=======================================================================
CISCO switch && router

A. Switch Cisco Configuration

Konfigurasikan port yang digunakan untuk tujuan vlan :

conf t
interface FastEthernet0/1 (#sampai dengan Fe0/6)
switchport access vlan 5
!
interface FastEthernet0/7 (#sampai dengan Fe0/12)
switchport access vlan 6
!
interface FastEthernet0/13 (#sampai dengan Fe0/18)
switchport access vlan 7
!
interface FastEthernet0/19 (#sampai dengan Fe0/22)
switchport access vlan 8
end

Sekarang, membuat port trunking (23, 24) di switch cisco.

conf t
interface FastEthernet0/23 (#port 23 dan port 24 sbg trunking)
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 5-8
switchport mode trunk
B. Router Cisco Configuration

ro-cisco>Enable
ro-cisco#Configure terminal
ro-cisco#Interface FastEthernet0/0.1
ro-cisco#Encapsulation dot1q 5
ro-cisco#IP address 10.10.1.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.2
ro-cisco#Encapsulation dot1q 6
ro-cisco#IP address 10.10.2.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.3
ro-cisco#Encapsulation dot1q 7
ro-cisco#IP address 10.10.3.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Interface FastEthernet0/0.4
ro-cisco#Encapsulation dot1q 8
ro-cisco#IP address 10.10.4.1 255.255.255.0
ro-cisco#Exit
ro-cisco#Exit
ro-cisco#Write memory
===============================================================

Bonding (Port Trunking)

Apa itu bonding ?

Bonding adalah sama dengan port trunking. Bonding membolehkan anda untuk mengumpulkan banyak port ke single group. kombinasi efektif bandwidth ke dalam single koneksi. Bonding juga membolehkan anda untuk membuat jalur multi-gigabit traffic lalu lintas data ke dalam traffic area tertinggi di dalam network anda. sebagai contoh, anda dapat mengumpulkan tiga megabits port ke dalam sebuah tiga-megabits trunk port. Ini sama artinya dengan punya satu interface dengan kecepatan tiga megabit.

Sangat disarankan dalam penggunaan vlan dengan bonding karena dapat meningkatkan ke bandwidth yang tersedia. Dibawah ini contoh script penggunaan vlan dan bonding.

#!/bin/bash
modprobe 8021q
modprobe bonding mode=0 miimon=100
ifconfig eth0 down
ifconfig eth1 down
ifconfig eth2 down
ifconfig bond0 0.0.0.0
ifconfig eth1 0.0.0.0
ifconfig eth2 0.0.0.0
ifconfig bond0 hw ether 00:11:22:33:44:55
ifconfig bond0 10.1.1.3 up

ifenslave bond0 eth1
ifenslave bond0 eth2

vconfig add bond0 2
vconfig add bond0 3
vconfig add bond0 4
vconfig add bond0 5
vconfig add bond0 6

ifconfig bond0.2 192.168.2.1 netmask 255.255.255.0 broadcast 192.168.2.255 up
ifconfig bond0.3 192.168.3.1 netmask 255.255.255.0 broadcast 192.168.3.255 up
ifconfig bond0.4 192.168.4.1 netmask 255.255.255.0 broadcast 192.168.4.255 up
ifconfig bond0.5 192.168.5.1 netmask 255.255.255.0 broadcast 192.168.5.255 up
ifconfig bond0.6 192.168.6.1 netmask 255.255.255.0 broadcast 192.168.6.255 up
echo 1 > /proc/sys/net/ipv4/ip_forward

Sabtu, 23 Oktober 2010

Class A Subnet and Host IP addresses














































































































































































































































# bitsSubnet MaskCIDR# Subnets# HostsNets * Hosts
0255.0.0.0/8
1255.128.0.0/9
2255.192.0.0/10241943028388604
3255.224.0.0/116209715012582900
4255.240.0.0/1214104857414680036
5255.248.0.0/133052428615728580
6255.252.0.0/146226214216252804
7255.254.0.0/1512613107016514820
8255.255.0.0/162546553416645636
9255.255.128.0/175103276616710660
10255.255.192.0/1810221638216742404
11255.255.224.0/192046819016756740
12255.255.240.0/204094409416760836
13255.255.248.0/218190204616756740
14255.255.252.0/2216382102216742404
15255.255.254.0/233276651016710660
16255.255.255.0/246553425416645636
17255.255.255.128/2513107012616514820
18255.255.255.192/262621426216252804
19255.255.255.224/275242863015728580
20255.255.255.240/2810485741414680036
21255.255.255.248/292097150612582900
22255.255.255.252/30419430228388604

Kamis, 03 Juni 2010

DHCP Relay Agent

DHCP Relay Agen : adalah DHCP Server yang di tanam agar client yang berbeda network bisa mendapatkan DHCP

Berikut konfigurasinya :

1. Install windows server untuk DHCP Relay Agent
2. Install serta buat DNS dan Active Directory
3. Install service Routing and remote access service
4. Kemudian konfigurasi

DHCP Relay Agen











Kemudian Masukkan IP DHCP Server



5. Terakhir daftarkan client ke dns DHCP Relay Agent kemudian setting IP dan DNS di client menjadi obtain

Selamat Mencoba

Selasa, 11 Mei 2010

Membuat Batch Script Untuk Mapping Drive Windows Server 2003

Membuat Batch Script Untuk Mapping Drive Windows Server 2003

Mungkin bahasan mengenai mapping drive bisa dikatakan basi, tapi karena ada yang nanya melalui e-mail maka saya bahas disini. Bagi anda yang masih berkutat di dunia windows, apalagi bagi anda seorang administrator jaringan komputer yang menangani banyak user dan komputer, pasti pengaturan bagi pakai file (sharing data) dijaringan sudah terbiasa. Kali ini saya akan memberikan tip bagi anda yang baru bikin server dengan menggunakan windows server 2003 dan berencana akan dijadikan sebagai PDC (Primary Domain Controler) dan file server, dan kadang kita mempunyai masalah bagaimana agar mapping drive untuk setiap client diset secara otomatis sesuai dengan hak akses file untuk masing-masing user, ketika user login ke server PDC atau File Server. Nach berikut ini cara membuat scriptnya.

1. Untuk membuat file system dan logon script di windows server 2003, pastikan anda set dulu menjadi server domain (PDC).
2. Kemudian bikin OU (Organization Unit) beserta user idnya masing-masing pada active directory users and computers. dan jangan lupa untuk setiap direktori file sharring yang anda buat atur hak aksesnya untuk masing-masing user.
3. Setelah itu baru tiap user id atau OU dikasih script berikut ini scriptnya

@echo Harap Menunggu beberapa detik.
@echo Melakukan koneksi ke Server …
@echo Mapping File Untuk User Sony.
@SET SHR=dodol
@net use X: \\%SHR%\Direktur
@net use Y: \\%SHR%\Umum
@net use Z: \\%SHR%\Master$
@echo Mapping Selesai

Keterangan : berinama filenya misal sony.bat (ingat ekstension *.BAT) lalu simpan scriptnya didirektori netlogon, adapun untuk keterangan parameter set shr=dodol dengan asumsi dodol adalah nama komputer server yang dijadikan PDC atau file server, net use X:\\%shr%\Direktur adalah menset direktori file sharing dengan nama Direktur dengan mapping di drive X. Tambahan jika anda ingin menyembunyikan direktori yang disharing supaya tidak kelihatan oleh user lain ketika membuka My Network Place|Entire Network dan seterusnya, pastikan ketika memberi nama direktori yang di sharing diakhir nama diberi tanda $ (dollar) misal nama direktori yang disharingnya master$
4. kemudian jangan lupa berikan parameter pada tab logon script untuk masing-masing user sesuai dengan lokasi file scriptnya yang bisa anda set di user properties pada active directory user and computers. Misal parameternya: \\dodol\netlogon\sony.bat

Minggu, 09 Mei 2010

Dokumentasi Domain Rename Operation

Domain rename adalah suatu tools yang di support oleh Microsoft yang
akan memudahkan kita untuk memanagement sebuah domain yang ingin di
ganti namanya atau dengan kata lain adalah “Merename Domain”.
Tools yang kita gunakan di antaranya adalah :
1. Rendom.exe
2. Gpfixup.exe
Kegunaan
Rendom.exe adalah Merename Domain menjadi sebuah nama domain yang
baru, tetapi ada yang harus di perhatikan dalam merename domain agar
tools rendom.exe dapat berjalan dengan baik dan juga sesuai dengan
keinginan kita.

Yang pertama :
pastikan bahwa server anda adalah Windows 2003 server. Karna tools ini
hanya dapat berjalan di windows 2003 server.

Yang kedua :
Pastikan bahwa Domain Functionality anda sudah di RAISE, atau di naikan
levelnya menjadi 2003 Domain.

Yang ketiga :
Jalankan yang tools rendom.exe
Yang pertama yang harus di jalankan adalah Melist Domain anda yang
sekarang ada, jadi setelah domain di list domain akan menghasikkan sebuah
file “Domainlist.xml” yang akan akan memberikan informasi tentang domain
yang kita punya.
dan langkah selanjutnya adalah dengan mengedit file dan merubah nama
domain menjadi sebuah nama baru, pada contoh di atas adalah dengan
merubah nama domain yang lama “riset.ano.net” menjadi nama domain
yang baru “keren.manteb.net”
Setelah di ubah maka langkah selanjutnya adalah kita harus meng upload
dengan perintah:

c:\> rendom.exe /upload

maka setelah perintah ini semua informasi yang kita ubah pada file XML akan
di aplikasikan pada system. Langkah selanjutnya adalah :

c:\> rendom.exe /prepare
c:\> rendom.exe /execute
c:\> rendom.exe /clean
c:\> rendom.exe /showforest
c:\> rendom.exe /end

setelah semua prose nya selesai maka system akan melakukan restart
secara otomatis, dan setelah restart nama domain telah berubah.
Tetapi yang jadi masalah adalah nama DNS nya, karna kadang
nama DNS tidak ikut berubah dikarnakan hal-hal tertentu maka, kita harus
melakukan proses yang kedua, yaitu dengan salah satu tools bantuan lagi
yaitu : “gpfixup.exe” untuk melakukan perubahan nama DNS dari yang lama
menjadi nama yang baru, dari “riset.ano.ner” menjadi “keren.manteb.net”
dengan menggunakan perintah :

C:\> gpfixup.exe /olddns:riset.ano.net /newdns:keren.manteb.net /oldnb:RISET /newnb:keren

Dan kalau sudah perintah di atas di laksanakan maka restartlah computer
anda secara manual,dan setelah itu barulah proses selesai.
Situs tutorial rendom lengkap yang ada di Microsoft.com adalah :
http://www.microsoft.com/windowsserver2003/downloads/domainrename.mspx

Backup Windows Server 2003

Backup Windows Server 2003 dengan command prompt

Backup System State:
1. Buka Command Prompt ---> Start ---> Run ---> Ketik cmd
2. Kemudian ketikkan ntbackup backup systemstate /J "Backup Server" /F C:\backup.bkf

Backup Drive:
1. Buka Command Prompt ---> Start ---> Run ---> Ketik cmd
2. Kemudian ketikkan ntbackup backup \\server-name\c$ /J "Backup Drive" /F C:\backup.bkf
3. server name adalah nama komputer atau hostname sedangkan C$ adalah drive yang ingin di backup

Rabu, 05 Mei 2010

Convert Harddrive FAT32 ke NTFS tanpa format

Convert Harddrive FAT32 ke NTFS tanpa format

Untuk Convert dari FAT32 ke NTFS tanpa format bisa menggunakan command prompt windows,
Start ---> Run ---> Ketik (cmd) ---> ketik (convert d: /fs:ntfs).
Sebgai contoh di sini hard drive d: yang ingin kita convert ke ntfs :) :

Minggu, 02 Mei 2010

Menjebol password BIOS

Password BIOS memang sangat berguna untuk melindungi komputer Anda supaya tidak ada orang lain yang dapat mengganti konfigurasi komputer Anda. Tapi password tersebut bisa menjadi malapetaka jika Anda lupa. Nah, jika Anda lupa password BIOS Anda, di bawah ini kami tampilkan default password yang aslinya memang disediakan oleh pembuatnya untuk mengantisipasi kejadian password yang terlupakan. Yang perlu Anda lakukan adalah mencoba satu per satu password tersebut sampai Anda menemukannya :-)

AWARD BIOS
01322222, 589589, 589721, 595595, 598598, AWARD SW, AWARD_SW, Award SW, AWARD PW, _award, awkward, J64, j256, j262, j332, j322, HLT, SER, SKY_FOX, aLLy, aLLY, Condo, CONCAT, TTPTHA, aPAf, HLT, KDD, ZBAAACA, ZAAADA, ZJAAADC, djonet, %øåñòü ïpîáåëîâ%, %äåâÿòü ïpîáåëîâ%

AMI BIOS
AMI, A.M.I., AMI SW, AMI_SW, BIOS, PASSWORD, HEWITT RAND, Oder

PHOENIX
BIOS, CMOS, phoenix, PHOENIX

Password lainnya yang bisa Anda cob
LKWPETER, lkwpeter, BIOSTAR, biostar, BIOSSTAR, biosstar, ALFAROME, Syxz, Wodj


Menggunakan command prompt windows

Kalau anda lupa password bios dan pusing nebak-nebak password bios atau meles untuk membuka coba aja tips berikut:
metode ini untuk mereset bios tanpa menyentuh hardwarenya. sebeLumnya anda masuk ke command.com
==> star => run => ketik cmd
setelah itu masuklah ke drive C:\ kemudian ketik DEBUG
terus ketikan kode berikut
=>70 2e
=>71 ff
Q
Perhatikan o merupakan hurur O kecil spasi juga di sertakan
setelah itu restart ulang komputer anda, maka password BIOS akan hapus, jangan kaget kalo tanggal dan jamnya kembali ke tahun pembuatannya ato tidak sesuai dengan kenyataan.

Senin, 08 Maret 2010

How To Install HTTPD PHP and MySQL OpenSUSE 11.1 x86_64

In This Tutorial, We will start to install and configure Apache Webserver, PHP and Mysql from Source / tar.gz in O/S OpenSUSE 11.1 x86_64 bit O/s
If you are searching how to install apache php and mysql for linux o/s 32bit, please click HERE

So I assume you already have OpenSUSE11 installed, up and running.
This tutorial also can be implemented in other O/S such as : Centos and Fedora or other 64bit Linux O/S.

Login into your server with root access.

Download and Extract All Packages and Dependencies

$cd /root
$vi files.sh
#!/bin/bash
# download and extract all packages and dependencies

cd /root
wget http://mirror.csclub.uwaterloo.ca/mysql/Downloads/MySQL-5.1/mysql-5.1.44...
wget http://www.alliedquotes.com/mirrors/apache/httpd/httpd-2.2.14.tar.gz
wget ftp://xmlsoft.org/libxml2/libxml2-2.7.6.tar.gz
wget http://www.ijg.org/files/jpegsrc.v8a.tar.gz
wget http://curl.haxx.se/download/curl-7.20.0.tar.gz
wget http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.3.12.tar.gz
wget http://mirror.unej.ac.id/cpan/authors/id/T/TI/TIMB/DBI-1.609.tar.gz
wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.43.tar.gz
wget http://openssl.org/source/openssl-0.9.7g.tar.gz
wget http://www.zlib.net/zlib-1.2.3.tar.gz
wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
wget http://www.php.net/distributions/php-5.3.1.tar.gz
wget ftp://ftp.cac.washington.edu/imap/imap-2007b.tar.Z

echo "Extracting All Packages "

tar -zxvf mysql-5.1.44.tar.gz
tar -zxvf httpd-2.2.14.tar.gz
tar -zxvf libxml2-2.7.6.tar.gz
tar -zxvf jpegsrc.v8a.tar.gz
tar -zxvf curl-7.20.0.tar.gz
tar -zxvf freetype-2.3.12.tar.gz
tar -zxvf DBI-1.609.tar.gz
tar -zxvf libpng-1.2.43.tar.gz
tar -zxvf openssl-0.9.7g.tar.gz
tar -zxvf zlib-1.2.3.tar.gz
tar -zxvf gd-2.0.35.tar.gz
tar -zxvf php-5.3.1.tar.gz
tar -zxvf imap-2007b.tar.Z

Chmod and Execute files.sh

$cd /root
$chmod 755 files.sh
$./files.sh

Install C compiler and Dependencies

$yast -i gcc gcc-c++ ncurses-devel pam-devel automake

Note : you can use yum, apt-get or etc to install c compiler.

Create MySQL user and Compiling MySQL Server

Create user and group mysql with yast

$yast
>> Security and Users >> User and Group Management
>> In Users Section >> Press tab to ADD a new user
>>> Input User Full Name "mysql", Username "mysql", Password and Confirm Password >> OK
>> In Group section >> Press tab to ADD a Group
>>> Input Group Name "mysql" >> OK
>> In users Section >> Edit user "mysql"
>>> In Existing Local User Choose Details Section
>>> Login Shell Change it to "/bin/false"
>>> Default Group Change it to "mysql" >> OK >> OK
>> press f9 to quit yast

Compiling MySQL Server

$cd /root
$cd mysql-5.1.37
$./configure --prefix=/usr/local/mysql \
--localstatedir=/usr/local/mysql/var \
--with-pthread --with-big-tables
$make && make install

Change mysql dir permission

$chown -R mysql.mysql /usr/local/mysql

Copy mysql cnf files from this directory below to /etc/
and change the file to my.cnf

$cd /usr/local/mysql/share/mysql
$cp my-small.cnf /etc/my.cnf

Install mysql DB

$/usr/local/mysql/bin/mysql_install_db --user=mysql

Starting mysql server

$/usr/local/mysql/bin/mysqld_safe --user=mysql &

Create mysql root password

$/usr/local/mysql/bin/mysqladmin -u root password 'new-password'

Compiling OpenSSL 0.9.7g

$cd /root/
$cd openssl-0.9.7g
$./config -fPIC
$make depend
$make install

Add /usr/local/include into ld.so.conf

$vi /etc/ld.so.conf
## add this line below ##
/usr/local/include

Reload ld.so.conf

$ldconfig

Compiling Apache/ HTTPD Web Server

$cd /root
$cd httpd-2.2.14
$./configure --prefix=/usr/local/apache2 \
--enable-so --enable-mods-shared=most \
--enable-ssl=static --with-ssl=/usr/local/ssl
$make && make install

Compiling Zlib, FreeType, GD, LibXML2,LIBJPEG, LIBPNG, CURL, DBI

$cd /root
$cd zlib-1.2.3
$./configure --shared && make && make install

$cd ..
$cd freetype-2.3.12
$./configure && make && make install

$cd ..
$cd jpeg-8a
$./configure --prefix=/usr/local --enable-shared
$make && make install

$cd ..
$cd libpng-1.2.43
$./configure && make && make install

$cd ..
$cd curl-7.20.0
$/configure && make && make install

$cd ..
$cd libxml2-2.7.6
$./configure && make && make install

$cd ..
$cd gd-2.0.35
$./configure --with-freetype=/usr/local \
--with-jpeg=/usr/local/lib \
--with-png=/usr/local/lib
$aclocal
$make && make install

$cd ..
$cd DBI-1.609
$perl Makefile.PL
$make && make install

$cd /root
$mv imap-2007b /usr/local/
$cd /usr/local/imap-2007b
$make lnp EXTRACFLAGS="-fPIC"
$mkdir include lib
$cp src/c-client/*.h include/
$cp c-client/c-client.a lib/libc-client.a
$cp c-client/osdep.h include/
$cp c-client/env_unix.h include/
$cp c-client/linkage.h include/

Compiling PHP

$cd /root
$cd php-5.3.1
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-gd=/usr/local \
--with-jpeg-dir=/usr/local/lib \
--with-zlib-dir=/usr/local \
--enable-ftp \
--with-png-dir=/usr/local/lib \
--with-freetype-dir=/usr/local \
--with-curl=/usr/local \
--with-imap=/usr/local/imap-2007b \
--with-imap-ssl=/usr/local/ssl \
--enable-mbstring
$make && make install

Copy php.ini

$cp php.ini-production /usr/local/lib/php.ini

Configure httpd.conf to support PHP

$cd /usr/local/apache2/conf/
$pico httpd.conf

### make sure this line below is already there
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php

Starting Up Apache and MySQL Webserver

$/usr/local/mysql/bin/mysqld_safe --user=mysql &
$/usr/local/apache2/bin/apachectl start

Added Apache and MySQL in Boot.local Init Script

$vi /etc/init.d/boot.local
### Add this line below into boot.local ###
/usr/local/apache2/bin/apachectl start
/usr/local/mysql/bin/mysqld_safe --user=mysql &

Create a test.php with phpinfo in file

$cd /usr/local/apache2/htdocs
$pico test.php


## save this file

$vim /usr/local/lib/php.ini (edit short_open_tag menjadi on)



Or We also can check php result from console

$php -v
PHP 5.3.1 (cli) (built: Mar 3 2010 10:07:54)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

Open a test.php from your Browser

You can try to access test.php from your browser
Example your server ip address is 10.10.10.10

Http://10.10.10.10/test.php

Setup Suse 10.2 Server/DNS

Setup Suse 10.2 Server/DNS
Setting up bind


server:~ # smart install bind

This should install 2 packages, bind and bind-chrootenv.

Now edit /etc/named.conf and change the following settings:

options {
listen-on port 53 { 192.168.0.2; 127.0.0.1; }
listen-on-v6 { none; }
allow-query { any; }
};
include "/etc/named.d/logging.conf";
include "/etc/named.d/example.org.conf";

Now a bit of security for our DNS:

server:~ # dnssec-keygen > /etc/rndc.conf

Copy the outcommented part of `/etc/rndc.conf` into `/etc/named.conf`

Now create `/etc/named.d/example.org.conf` with the following content:

zone "example.org" {
type master;
file "personal/example.org.db";
allow-transfer { none; }:
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "reverse/192.168.0.0";
allow-query { any; };
allow-transfer { none; };
};

and `/etc/named.d/logging.conf`:

logging {

channel default_file { file "/var/log/named/default.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel general_file { file "/var/log/named/general.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel database_file { file "/var/log/named/database.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel security_file { file "/var/log/named/security.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel config_file { file "/var/log/named/config.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel resolver_file { file "/var/log/named/resolver.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel xfer-in_file { file "/var/log/named/xfer-in.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel xfer-out_file { file "/var/log/named/xfer-out.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel notify_file { file "/var/log/named/notify.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel client_file { file "/var/log/named/client.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel unmatched_file { file "/var/log/named/unmatched.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel queries_file { file "/var/log/named/queries.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel network_file { file "/var/log/named/network.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel update_file { file "/var/log/named/update.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel dispatch_file { file "/var/log/named/dispatch.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel dnssec_file { file "/var/log/named/dnssec.log" versions 3 size 5m; severity dynamic; print-time yes; };
channel lame-servers_file { file "/var/log/named/lame-servers.log" versions 3 size 5m; severity dynamic; print-time yes; };

category default { default_file; };
category general { general_file; };
category database { database_file; };
category security { security_file; };
category config { config_file; };
category resolver { resolver_file; };
category xfer-in { xfer-in_file; };
category xfer-out { xfer-out_file; };
category notify { notify_file; };
category client { client_file; };
category unmatched { unmatched_file; };
category queries { queries_file; };
category network { network_file; };
category update { update_file; };
category dispatch { dispatch_file; };
category dnssec { dnssec_file; };
category lame-servers { lame-servers_file; };

};

PS: Thanks to the Gentoo Wiki for this :)

But logging will not work yet, we have to create the files and folders:

server:~ # mkdir /var/lib/named/var/log/named/
server:~ # touch /var/lib/named/var/log/named/client.log
server:~ # touch /var/lib/named/var/log/named/config.log
server:~ # touch /var/lib/named/var/log/named/database.log
server:~ # touch /var/lib/named/var/log/named/default.log
server:~ # touch /var/lib/named/var/log/named/dispatch.log
server:~ # touch /var/lib/named/var/log/named/dnssec.log
server:~ # touch /var/lib/named/var/log/named/general.log
server:~ # touch /var/lib/named/var/log/named/lame-servers.log
server:~ # touch /var/lib/named/var/log/named/network.log
server:~ # touch /var/lib/named/var/log/named/notify.log
server:~ # touch /var/lib/named/var/log/named/queries.log
server:~ # touch /var/lib/named/var/log/named/resolver.log
server:~ # touch /var/lib/named/var/log/named/security.log
server:~ # touch /var/lib/named/var/log/named/unmatched.log
server:~ # touch /var/lib/named/var/log/named/update.log
server:~ # touch /var/lib/named/var/log/named/xfer-in.log
server:~ # touch /var/lib/named/var/log/named/xfer-out.log
server:~ # chown -R named:named /var/lib/named/var/log/named/

Next start bind with `rcnamed start`. If any errors come up, you most probably forgot an `;` somewhere.

But... nobody knows, what adresses we have yet?

Now edit `/var/lib/named/personal/example.org.db`

$TTL 86400

@ IN SOA ns.example.org. your.email.example.org. (
2007020901 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Minimum
example.org. IN NS ns.example.org.
ns.example.org. IN A 192.168.0.2
example.org. IN A 192.168.0.2
mail.example.org. IN A 192.168.0.2
example.org. IN MX 10 mail.example.org.

and `/var/lib/named/reverse/192.168.0.0`:

$TTL 86400

@ IN SOA example.org. (
2007020901 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Minimum

IN NS example.org.
2 IN PTR example.org.
2 IN PTR server.example.org.

If you change and restart the name server, do not forget to increase the serial by 1!

Now we will test, if it actually works:

server:~ # rcnamed start
server:~ # nslookup example.org
Server: 192.168.0.2
Address: 192.168.0.2#53

Name: example.org
Address: 192.168.0.2

server:~ # host example.org
example.org has address 192.168.0.2
example.org mail is handled by 10 mail.example.org