CoreBSD Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
knowledgebase [2005/11/01 15:06] – Update ISO to 3.8 bangknowledgebase [2025/10/25 17:09] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Knowledgebase ======
  
 +===== OpenBSD Kernel Module =====
 +//author: Jim//
 +
 +Untuk dapat me//load// dan //unload// //kernel module// ketika proses development, Anda dapat mengubah //value// //securelevel//' pada //kernel state//
 +dari //1// menjadi //-1//. Modifikasi //value// tersebut dapat dilakukan pada file ///etc/rc.securelevel//. Setelah itu, Anda dapat me//load// dan //unload// //kernel modules// tanpa perlu //reboot(8)//.
 +
 +===== Administrasi Remote System dengan SSH =====
 +//author: Chiank//
 +
 +Kalau Anda mengelola puluhan //workstation// atau //server// berbasis UNIX, tentu sangat melelahkan ketika Anda harus login dan mengetikkan //password// ke setiap //remote system//. Ada beberapa cara untuk otomatisasi login tanpa password, seperti //rlogin//, menggunakan script, dsb. Tips kali ini akan menjelaskan otomatisasi login tanpa password dengan menggunakan fitur //authentication key// dari //ssh//.
 +
 +**Apa yang Anda butuhkan?**
 +  * //remote system//: Anda membutuhkan service //ssh// dalam keadaan aktif. Anda dapat menggunakan //ssh// server dari SSH (SSH.COM) atau OpenSSH. 
 +  * //administration system//: Anda membutuhkan //ssh// client.
 +
 +**Apa yang harus Anda lakukan?**
 +  * membuat //public key//
 +  * mendistribusikan //public key// ke //remote system//
 +
 +==== Membuat public key ====
 +contoh yang saya lakukan :
 +<code>
 +$ ssh-keygen -t dsa
 +Generating public/private dsa key pair.
 +Enter file in which to save the key (/home/chiank/.ssh/id_dsa):
 +Enter passphrase (empty for no passphrase):
 +Enter same passphrase again:
 +Your identification has been saved in /home/chiank/.ssh/id_dsa.
 +Your public key has been saved in /home/chiank/.ssh/id_dsa.pub.
 +</code>
 +
 +Pada contoh diatas, kita membuat file //secret key// //id_dsa//  dan //public key// //id_dsa.pub//. Karena tipe yang kita gunakan adalah //dsa// (lihat //option// //-t dsa//, //key// yang kita miliki bisa digunakan untuk ssh versi 2, sedangkan untuk ssh versi 1, gunakan option //-t rsa//.
 +
 +Ketika mendapatkan //prompt// //passphrase// Anda dapat mengosongkannya dengan menekan tombol //ENTER//, atau Anda membuat password tersendiri.\\
 + **//Perlu diingat://** //passphrase// ini berbeda dengan password yang Anda gunakan pada //remote system// tersebut.
 +
 +==== Mendistribusikan public key ke remote system ====
 +
 +Langkah selanjutnya adalah memasukkan entry //public key// ke file ''$HOME/.ssh/authorized_keys'' (untuk beberapa system dan versi  ''ssh'', file yang digunakan adalah ''$HOME/.ssh/authorized_keys2''). Langkah ini dapat dilakukan dengan berbagai cara, salah satunya dengan menggunakan ''scp'' untuk mengirimkan //public key// yang sudah dibuat tersebut ke //remote system// dan memasukkannya kedalam file ''$HOME/.ssh/authorized_keys'' atau dengan melakukan //copy & paste// menggunakan terminal (''xterm'' atau ''putty'')
 +<code>
 +$ scp ~/.ssh/id_dsa.pub [email protected]:
 +[email protected]'s password:
 +id_dsa.pub                                             100%  604     0.0KB/  00:00
 +$ ssh [email protected]
 +[email protected]'s password:
 +...
 +tb.ee $ cat id_dsa.pub >> $HOME/.ssh/authorized_keys
 +tb.ee $ rm -f id_dsa.pub
 +tb.ee $ exit
 +...
 +$ ssh [email protected]
 +tb.ee $ 
 +</code>
 +
 +===== Bikin file kosong dengan ukuran tertentu =====
 +//author: Jim//
 +
 +[[dari milis [email protected]]]
 +<code>
 +> gimana caranya bikin file kosong
 +> dng ukuran tertentu (mis 1 MB, 2 MB, 4 MB, dst nya)
 +</code>
 +
 +<code>
 +$ mkfile nnn[k|b|m] filename
 +=(/usr/ports/sysutils/mkfile)
 +</code>
 +
 +<code>
 +develbox:/tmp > mkfile 10m file10M
 +develbox:/tmp > du -sh file10M 
 +10M file10M
 +develbox:/tmp > strings file10M 
 +develbox:/tmp > 
 +</code>
 +kalau mau bikin banyak file sekaligus.. (pake tcsh :-))
 +<code>
 +develbox:/tmp > foreach i ( `jot 5` )
 +foreach? mkfile "$i"m file"$i"m
 +foreach? end
 +develbox:/tmp > du -sh file*
 +1.0M file1m
 +2.0M file2m
 +3.0M file3m
 +4.0M file4m
 +5.0M file5m
 +</code>
 +
 +===== Bikin file ISO OpenBSD =====
 +
 +Ini cara singkat untuk membuat file ISO OpenBSD untuk 3.8-RELEASE/i386.
 +
 +==== Persiapkan direktori kerja ====
 +Anggap kita akan menggunakan direktori ''$HOME'' sebagai direktori kerja
 +<code>
 +$ mkdir -p $HOME/OpenBSD/3.8/i386
 +</code>
 +
 +==== Menyiapkan file-file yang dibutuhkan ====
 +Metode berikut dapat digunakan untuk membuat file ISO untuk OpenBSD RELEASE atau //snapshot//nya. Anda dapat menggunakan program sejenis ''ftp(1)'' untuk mendownload file-file yang dibutuhkan, atau jika Anda melakukan ''make release'', set ''RELEASEDIR'' ke path yang dimaksud.
 +<code>
 +$ cd $HOME/OpenBSD/3.8/i386
 +$ ftp -n ftp://ftp.openbsd.org/pub/OpenBSD/3.8/i386/*
 +$ ls
 +CKSUM           base38.tgz      cdboot          etc38.tgz       index.txt     xetc38.tgz
 +INSTALL.i386    bsd             cdbr            floppy38.fs     man38.tgz     xfont38.tgz
 +INSTALL.linux   bsd.mp          cdemu38.iso     floppyB38.fs    misc38.tgz    xserv38.tgz
 +INSTALL.dbr     bsd.rd          cdrom38.fs      floppyC38.fs    pxeboot       xshare38.tgz
 +MD5             cd38.iso        comp38.tgz      game38.tgz      xbase38.tgz
 +</code>
 +
 +==== Membuat file ISO ====
 +Pada artikel ini, kita akan menggunakan ''mkhybrid(1)'', selain itu dapat juga digunakan ''mkisofs'' yang terdapat pada ''ports(7)''.
 +<code>
 +$ cd $HOME
 +$ sudo mkhybrid \
 +        -r \
 +        -b 3.8/i386/cdrom38.fs \
 +        -c boot.catalog \
 +        -o openbsd-x86-3.8.iso \
 +        OpenBSD/
 +</code>
 +
 +Oh, hampir saja lupa.. Alangkah baiknya jika Anda membeli CD OpenBSD asli, memasyarakatkan OpenBSD ke rekan-rekan yang lain, atau memberikan donasi ke proyek pengembangan OpenBSD, lihat http://openbsd.org/goals.html#funding
 +
 +===== SCP (secure copy) =====
 +//author: hky//
 +
 +Makin banyak daemon yang jalan, makin banyak port yang terbuka, , berarti makin banyak perhatian anda yang akan tersita untuk memastikan semuanya dalam keadaan baik baik saja. Kenapa harus menghidupkan ftpd kalau seandainya ssh dengan scp sudah bisa melakukan fungsi transfer file.
 +Memang dibandingkan ftp, dari segi kecepatan scp sedikit lebih lambat dibandingkan dengan ftp, karena ada nya process enkripsi dalam pengiriman data.
 +
 +Ok.. sekarang bagaimana menggunakan scp ?
 +<code>
 +$scp "dari" "ke" (prinsip dasar)
 +$scp /path/to/filename.php [email protected]:/var/www/ (transfer dari local ke remote)
 +$scp [email protected]:/var/www/filename.php ./ (transfer dari remote ke local)
 +$scp -r [email protected]:/var/www/* [email protected]:/srv/www/htdocs/ 
 +  (transfer seluruh isi direktori /var/www/ dari remote host 1 ke direktori /srv/www/htdocs/ remote host 2)
 +</code>
 +
 +===== Multiple session login dengan background-control dan screen =====
 +
 +Ingin lebih cepat dan efektif bekerja? nah, silahkan terapkan beberapa panduan singkat berikut untuk menghemat waktu anda ketika anda sedang //login// ke //remote-terminal//:
 +  * Install dan pelajarilah program ''screen(1)'' 
 +    * //screen// memungkinkan kita untuk menjalankan //multiple login session// didalam sistem
 +    * fitur //attach// dan //detach// memungkinkan kita untuk meletakkan/menyimpan sesi tersebut dan memanggilnya kembali apabila kita //login// kembali ke sistem (contoh: ketika tiba-tiba saja koneksi ke //remote-login// terputus, apabila kita //login// kembali ke sistem, kita dapat meminta **//screen//** untuk meletakkan proses yang terputus tadi dan melanjutkan aktivitas kembali), jangan lupa __pasang password__ agar sesi yang anda jalankan tidak bisa diambil oleh orang lain
 +    * //screen// dapat dikonfigurasikan lewat file ''.screenrc'', contoh file ini dapat anda lihat di http://dotfiles.com/
 +  * //public-key-authentication//, //ssh-agent// dan //EscapeChar//
 +    * //public-key-authentication// memudahkan kita dalam melakukan proses autentikasi, meningkatkan keamanan dengan pertukaran kunci dan sentralisasi autentikasi yang lebih baik (karena otak kita terbatas), silahkan baca  ''ssh-keygen(1)''
 +    * letakkan proses **//ssh//** kedalam background dengan menekan //~//+//CTRL-z//', panggil kembali apabila anda ingin kembali ke sistem
 +    * pelajari dan gunakan ''ssh-agent(1)'', potongan ''.profile'' berikut mungkin dapat sedikit membantu, 
 +
 +<code>
 +# ~/.profile || ~/.bash_profile
 +# load ssh key kedalam memori
 +function ssha {
 +    eval `/usr/bin/ssh-agent -s`
 +    /usr/bin/ssh-add
 +}
 +# unload ssh-key
 +function sshk {
 +    eval `/usr/bin/ssh-agent -k`
 +}
 +</code>
 +Beberapa artikel menarik yang bisa anda kunjungi: http://www.hackinglinuxexposed.com/articles
 +
 +===== Mount File ISO =====
 +//author: hky//
 +
 +<code>
 +FreeBSD
 +#mdconfig -a -t vnode -f file.iso -u 4; 
 +#mount -t cd9660 /dev/md4 /mountpointnya
 +
 +OpenBSD dan NetBSD
 +#vnconfig svnd0 file.iso 
 +#mount -t cd9660 /dev/svnd0c /mountpointnya
 +</code>
 +
 +===== Stripping comments for quick and easy viewing =====
 +
 +put this alias on your startup script:
 +
 +<code>
 +alias cstrip='sed -e '\''/^#/d'\'' -e '\''/^$/d'\'''
 +</code>
 +
 +those oneliner will strip leading # and empty character on every line it finds, run it as: cstrip <text_file_you_want_to_strip>