| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| knowledgebase [2005/10/07 02:14] – hky | knowledgebase [2025/10/25 17:09] (current) – external edit 127.0.0.1 |
|---|
| |
| ===== OpenBSD Kernel Module ===== | ===== OpenBSD Kernel Module ===== |
| ''author: Jim'' | //author: Jim// |
| |
| Untuk dapat me''load'' dan ''unload'' ''kernel module'' ketika proses development, Anda dapat mengubah ''value'' ''securelevel'' pada ''kernel state'' | 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)''. | 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 ===== | ===== Administrasi Remote System dengan SSH ===== |
| ''author: Chiank'' | //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''. | 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?** | **Apa yang Anda butuhkan?** |
| * ''remote system'': Anda membutuhkan service ''ssh'' dalam keadaan aktif. Anda dapat menggunakan ''ssh'' server dari SSH (SSH.COM) atau OpenSSH. | * //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. | * //administration system//: Anda membutuhkan //ssh// client. |
| |
| **Apa yang harus Anda lakukan?** | **Apa yang harus Anda lakukan?** |
| * membuat ''public key'' | * membuat //public key// |
| * mendistribusikan ''public key'' ke ''remote system'' | * mendistribusikan //public key// ke //remote system// |
| |
| ==== Membuat public key ==== | ==== Membuat public key ==== |
| </code> | </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''. | 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. | 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. | **//Perlu diingat://** //passphrase// ini berbeda dengan password yang Anda gunakan pada //remote system// tersebut. |
| |
| ==== Mendistribusikan public key ke remote system ==== | ==== 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}}) | 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> | <code> |
| $ scp ~/.ssh/id_dsa.pub [email protected]: | $ scp ~/.ssh/id_dsa.pub [email protected]: |
| |
| ===== Bikin file kosong dengan ukuran tertentu ===== | ===== Bikin file kosong dengan ukuran tertentu ===== |
| ''author: Jim'' | //author: Jim// |
| |
| [[dari milis [email protected]]] | [[dari milis [email protected]]] |
| develbox:/tmp > | develbox:/tmp > |
| </code> | </code> |
| kalau mau bikin banyak file sekaligus.. (pake tcsh :-) | kalau mau bikin banyak file sekaligus.. (pake tcsh :-)) |
| <code> | <code> |
| develbox:/tmp > foreach i ( `jot 5` ) | develbox:/tmp > foreach i ( `jot 5` ) |
| ===== Bikin file ISO OpenBSD ===== | ===== Bikin file ISO OpenBSD ===== |
| |
| Ini cara singkat untuk membuat file ISO OpenBSD untuk 3.4-RELEASE/i386. | Ini cara singkat untuk membuat file ISO OpenBSD untuk 3.8-RELEASE/i386. |
| |
| ==== Persiapkan direktori kerja ==== | ==== Persiapkan direktori kerja ==== |
| Anggap kita akan menggunakan direktori {{$HOME}} sebagai direktori kerja | Anggap kita akan menggunakan direktori ''$HOME'' sebagai direktori kerja |
| <code> | <code> |
| $ mkdir -p $HOME/OpenBSD/3.4/i386 | $ mkdir -p $HOME/OpenBSD/3.8/i386 |
| </code> | </code> |
| |
| ==== Menyiapkan file-file yang dibutuhkan ==== | ==== 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. | 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> | <code> |
| $ cd $HOME/OpenBSD/3.4/i386 | $ cd $HOME/OpenBSD/3.8/i386 |
| $ ftp -n ftp://ftp.openbsd.org/pub/OpenBSD/3.4/i386/* | $ ftp -n ftp://ftp.openbsd.org/pub/OpenBSD/3.8/i386/* |
| $ ls | $ ls |
| CKSUM INSTALL.linux base34.tgz comp34.tgz floppyC34.fs | CKSUM base38.tgz cdboot etc38.tgz index.txt xetc38.tgz |
| INSTALL.ata INSTALL.mbr bsd dmassage game34.tgz | INSTALL.i386 bsd cdbr floppy38.fs man38.tgz xfont38.tgz |
| INSTALL.chs INSTALL.os2br bsd.rd etc34.tgz man34.tgz | INSTALL.linux bsd.mp cdemu38.iso floppyB38.fs misc38.tgz xserv38.tgz |
| INSTALL.dbr INSTALL.pt cd34.iso floppy34.fs misc34.tgz | INSTALL.dbr bsd.rd cdrom38.fs floppyC38.fs pxeboot xshare38.tgz |
| INSTALL.i386 MD5 cdrom34.fs floppyB34.fs | MD5 cd38.iso comp38.tgz game38.tgz xbase38.tgz |
| </code> | </code> |
| |
| ==== Membuat file ISO ==== | ==== Membuat file ISO ==== |
| Pada artikel ini, kita akan menggunakan {{mkhybrid(1)}}, selain itu dapat juga digunakan {{mkisofs}} yang terdapat pada {{ports(7)}}. | Pada artikel ini, kita akan menggunakan ''mkhybrid(1)'', selain itu dapat juga digunakan ''mkisofs'' yang terdapat pada ''ports(7)''. |
| <code> | <code> |
| $ cd $HOME | $ cd $HOME |
| $ sudo mkhybrid \ | $ sudo mkhybrid \ |
| -r \ | -r \ |
| -b 3.4/i386/cdrom34.fs \ | -b 3.8/i386/cdrom38.fs \ |
| -c boot.catalog \ | -c boot.catalog \ |
| -o openbsd-x86-3.4.iso \ | -o openbsd-x86-3.8.iso \ |
| OpenBSD/ | OpenBSD/ |
| </code> | </code> |
| |
| ===== SCP (secure copy) ===== | ===== SCP (secure copy) ===== |
| ''author: hky'' | //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. | 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. |
| ===== Multiple session login dengan background-control dan screen ===== | ===== 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'': | 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) | * Install dan pelajarilah program ''screen(1)'' |
| * ''screen'' memungkinkan kita untuk menjalankan ''multiple login session'' didalam sistem | * //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 | * 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/ | * //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//, //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) | * //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 | * 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, | * pelajari dan gunakan ''ssh-agent(1)'', potongan ''.profile'' berikut mungkin dapat sedikit membantu, |
| |
| <code> | <code> |
| |
| ===== Mount File ISO ===== | ===== Mount File ISO ===== |
| ''author: hky'' | //author: hky// |
| |
| <code> | <code> |