Pages

Tampilkan postingan dengan label Netwotk Operating System. Tampilkan semua postingan
Tampilkan postingan dengan label Netwotk Operating System. Tampilkan semua postingan

Sabtu, 26 Januari 2013

Pengenalan Remote Access DIal-In User Service

Pengenalan

Remote Access (pada sebagian literatur AuthenticationDial-In User Service, yang sering disingkat menjadi RADIUS, adalah sebuah protokol keamanan komputer yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan. RADIUS didefinisikan didalam RFC 2865 dan RFC 2866, yang pada awalnya digunakan untuk melakukan autentikasi terhadap akses jaringan jarak jauh (remote) dengan menggunakan koneksi dial-up.

RADIUS kini telah diimplementasikan untuk melakukan autentikasi terhadap akses jaringan secara jarak jauh dengan menggunakan koneksi selain dial-up, seperti halnya Virtual Private Networking (VPN), access point nirkabel, switch Ethernet, dan perangkat lainnya.

RADIUS mula-mula dikembangkan oleh perusahan Livingston. Pada awal pengembangannya, RADIUS menggunakan port 1645, yang ternyata bentrok dengan layanan “datametrics”. Sekarang, port yang dipakai RADIUS adalah port 1812. Berikut ini adalah RFC (Request For Comment) yang berhubungan dengan RADIUS:

  • RFC 2865 : Remote Authentication Dial-In User Service (RADIUS)
  • RFC 2866 : RADIUS Accounting
  • RFC 2867 : RADIUS Accounting for Tunneling
  • RFC 2868 : RADIUS Authentication for Tunneling
  • RFC 2869 : RADIUS Extensions
  • RFC 3162 : RADIUS over IP6
  • RFC 2548 : Microsoft Vendor-Specific RADIUS Attributes
Karakteristik

Beberapa karakteristik dari RADIUS adalah sebagai berikut:
  • Berbasis UDP Protocol
  • Bisa ditempatkan dimana saja di internet dan dapat membuat autentikasi (PPP, PAP, CHAP, MS-CHAP, EAP) antara Network Access Server (NAS) dan server itu sendiri
  • RADIUS menggunakan Remote Access Server (RAS) Secure ID untuk membuat autentikasi yang kuat dalam pengontrolan akses
Struktur paket data RADIUS bisa digambarkan sebagai berikut:
Paket Data RADIUS

Code, memiliki panjang satu oktet dan digunakan untuk membedakan tipe pesan RADIUS yang dikirimkan pada paket. Kode-kode tersebut (dalam desimal) antara lain:
1. Access-Request
2. Access-Accept
3. Access-Reject
4. Accounting-Request
5.Accounting-Response
11.Access-Challenge
12. Status-Server
13. Status-Client
255. Reserved


Identifier, Memiliki panjang satu oktet dan bertujuan untuk mencocokkan permintaan.

Length, Memiliki panjang dua oktet, memberikan informasi mengenai panjang paket.

Authenticator, Memiliki panjang 16 oktet, digunakan untuk membuktikan balasan dari RADIUS server, selain itu digunakan juga untuk algoritma password.

Attributes, Berisikan informasi yang dibawa pesan RADIUS. Setiap pesan dapat
membawa satu atau lebih atribut. Contoh atribut RADIUS: nama pengguna, password, CHAP-password, alamat IP access point (AP), pesan balasan.


Cara Kerja


RADIUS menggunakan konsep AAA (AuthenticationAuthorizationAccounting). Konsep tersebut dapat digambarkan sebagai berikut:
Aliran Data Pada RADIUS
  • Access Reject
    User ditolak aksesnya ke semua sumberdaya dalam jaringan. Penyebabnya bisa termasuk kegagalah untuk menyediakan indentifikasi yang tepat atau nama akun yang salah/tidak aktif
  • Access Challenge
    Permintaan informasi tambahan dari user, seperti password alteernatif, PIN, token atau kartu.
  • Access Accept
    User diberikan akses masuk. Begitu User ter-autentifikasi, server RADIUS akan sering mengecek agar User hanya menggunakan sumberdaya sesuai dengan yang diminta. Misalnya User hanya boleh mengakses fasilitas hotspot, dan tidak untuk menggunakan printer. Informasi tentang User dalam database bisa disimpan secara lokal dalam server RADIUS atau disimpan dalam tempat penyimpanan eksternal seperti LDAP atau Active Directory
Proses Authentication 
    Proses autentikasi diperlukan ketika Anda mempunyai kebutuhan untuk membatasi siapa saja yang diperbolehkan masuk ke dalam jaringan remote access milik Anda. Untuk memenuhi kebutuhan tersebut, pengguna yang ingin mengakses sebuah jaringan secara remote harus diidentifikasi terlebih dahulu. Pengguna yang ingin masuk ke dalam jaringan pribadi tersebut perlu diketahui terlebih dahulu sebelum bebas mengakses jaringan tersebut. Pengenalan ini bertujuan untuk mengetahui apakah pengguna tersebut berhak atau tidak untuk mengakses jaringan.
    Analoginya sederhananya adalah seperti rumah Anda. Apabila ada orang yang ingin berkunjung ke rumah Anda, kali pertama yang akan dilakukan oleh pemilik rumahnya adalah mengidentifikasi siapa yang ingin datang dan masuk ke dalamnya. Jika Anda tidak mengenal orang tersebut, bisa saja Anda tolak permintaannya untuk masuk ke rumah Anda. Namun jika sudah dikenal, maka Anda mungkin akan langsung mempersilakannya masuk. Demikian juga dengan apa yang dilakukan oleh perangkat remote accessterhadap pengguna yang ingin bergabung ke dalam jaringan di belakangnya.
    Pada umumnya, perangkat remote access telah dilengkapi dengan sebuah daftar yang berisikan siapa-siapa saja yang berhak masuk ke jaringan di belakangnya. Metode yang paling umum digunakan untuk mengenali pengakses jaringan adalah dialog Login dan Password. Metode ini juga didukung oleh banyak komponen lainnya, seperti metodechallenge dan responsemessaging support, dan enkripsi, tergantung pada protokol sekuriti apa yang Anda gunakan.
Proses Authorization
    Proses authorization merupakan langkah selanjutnya setelah proses autentikasi berhasil. Ketika pengguna yang ingin mengakses jaringan Anda telah dikenali dan termasuk dalam daftar yang diperbolehkan membuka akses, langkah berikutnya Anda harus memberikan batasan hak-hak apa saja yang akan diterima oleh pengguna tersebut.
    Analogi dari proses ini dapat dimisalkan seperti peraturan-peraturan yang tertempel di dinding-dinding rumah Anda. Isi dari peraturan tersebut biasanya akan membatasi para pengunjung agar mereka tidak dapat dengan bebas berkeliling rumah Anda. Tentu ada bagian yang privasi di rumah Anda, bukan? Misalnya setiap pengunjung rumah Anda tidak diperbolehkan masuk ke ruang kerja Anda. Atau setiap pengunjung harus membuka alas kakinya ketika memasuki ruangan ibadah di rumah Anda. Atau setiap pengunjung hanya diperbolehkan masuk sampai teras rumah.
    Semua itu merupakan peraturan yang dapat dengan bebas Anda buat di rumah Anda. Begitu juga dengan apa yang terjadi pada proses pengamanan jaringan remote accessAnda. Perlu sekali adanya batasan untuk para pengguna jaringan remote karena Anda tidak akan pernah tahu siapa yang ingin masuk ke dalam jaringan Anda tersebut, meskipun telah teridentifikasi dengan benar. Bisa saja orang lain yang tidak berhak menggunakan username dan password yang bukan miliknya untuk mendapatkan akses ke jaringan Anda.
    Bagaimana untuk membatasi masing-masing pengguna tersebut? Banyak sekali metode untuk melakukan pembatasan ini, namun yang paling umum digunakan adalah dengan menggunakan seperangkat atribut khusus yang dirangkai-rangkai untuk menghasilkanpolicy tentang hak-hak apa saja yang dapat dilakukan si pengguna. Atribut-atribut ini kemudian dibandingkan dengan apa yang dicatat di dalam database.
    Setelah dibandingkan dengan informasi yang ada di database, hasilnya akan dikembalikan lagi kepada fasilitas AAA yang berjalan pada perangkat tersebut. Berdasarkan hasil ini, perangkat remote access akan memberikan apa yang menjadi hak dari si pengguna tersebut. Apa saja yang bisa dilakukannya dan apa saja yang dilarang sudah berlaku dalam tahap ini.
    Database yang berfungsi untuk menampung semua informasi ini dapat dibuat secara lokal di dalam perangkat remote access atau router maupun dalam perangkat khusus yang biasanya disebut dengan istilah server sekuriti. Di dalam server sekuriti ini biasanya tidak hanya informasi profil penggunanya saja yang ditampung, protokol sekuriti juga harus berjalan di sini untuk dapat melayani permintaan informasi profil dari perangkat-perangkat yang berperan sebagai kliennya. Pada perangkat inilah nantinya attribute-value (AV) dari pengguna yang ingin bergabung diterima dan diproses untuk kemudian dikembalikan lagi menjadi sebuah peraturan oleh fasilitas AAA tersebut.
    Metode authorization biasanya dilakukan dalam banyak cara. Bisa dilakukan dengan caraone-time authorization yang memberikan seluruh hak dari si pengguna hanya dengan satu kali proses authorization. Atau bisa juga dilakukan per service authorization yang membuat pengguna harus diotorisasi berkali-kali ketika ingin menggunakan layanan tertentu. Authorization juga bisa dibuat per pengguna berdasarkan daftar yang ada di server sekuriti, atau kalau protokolnya mendukung otorisasi bisa diberlakukan per group pengguna. Selain itu, jika keamanan server memungkinkan, Anda dapat memberlakukan aturan-aturan otorisasi berdasarkan sistem pengalamatan IPIPX, dan banyak lagi
Proses Accounting
    Proses accounting dalam layanan koneksi remote access amat sangat penting, apalagi jika Anda membuat jaringan ini untuk kepentingan komersial. Dalam proses accounting ini, perangkat remote access atau server sekuriti akan mengumpulkan informasi seputar berapa lama si pengguna sudah terkoneksi, billing time (waktu start dan waktu stop) yang telah dilaluinya selama pemakaian, sampai berapa besar data yang sudah dilewatkan dalam transaksi komunikasi tersebut. Data dan informasi ini akan berguna sekali untuk pengguna maupun administratornya. Biasanya informasi ini akan digunakan dalam melakukan proses auditing, membuat laporan pemakaian, penganalisisan karakteristik jaringan, pembuatan billing tagihan, dan banyak lagi. Fasilitas accounting pada jaringan remote access umumnya juga memungkinkan Anda untuk melakukan monitoring terhadap layanan apa saja yang digunakan oleh pengguna. Dengan demikian, fasilitas accounting dapat mengetahui seberapa besar resource jaringan yang Anda gunakan. Ketika fasilitas AAA diaktifkan pada sebuah perangkat jaringan remote access, perangkat tersebut akan melaporkan setiap transaksi tersebut ke keamanan server. Tergantung pada protokol sekuriti apa yang Anda gunakan, maka cara melaporkannya pun berbeda-beda. Setiap record accounting akan mempengaruhi nilai-nilai atribut dari proses AAA yang lain seperti authentication dan authorization. Semua informasi yang saling terkait ini kemudian disimpan di dalam database server sekuriti atau jika memang diperlukan, kumpulan informasi ini dapat disimpan di server khusus tersendiri. Biasanya server khusus billing diperlukan jika penggunanya sudah berjumlah sangat banyak. Berikut ini adalah contoh cara kerja RADIUS:
    1. Sebuah Wireless Node (WN) / Supplicant dengan alamat IP 192.168.10.30 dan IP yang telah terdaftar dalam pemfilteran MAC ADDRESS meminta akses ke wireless network atau Access Point (AP).
    2. Access Point (AP) akan menanyakan identitas Supplicant. Tidak ada trafik data selain Client yang diperbolehkan sebelum Supplicant terautentikasi. Dalam hal ini,Access point bukanlah sebuah autentikator, tetapi access point berisi autentikator.

    3. Setelah nama-pengguna dan password dikirim, proses autentikasi dimulai. Autentikator mengenkapsulasi kembali pesan ke dalam format RADIUS, dan mengirimnya ke RADIUS server. Selama proses autentikasi, autentikator hanya menyampaikan paket antara Supplicant dan RADIUS server. Setelah proses autentikasi selesai, RADIUS server mengirimkan pesan sukses (atau gagal, apabila proses autentikasinya gagal.) Apabila proses autentikasi sukses, Supplicantdiperbolehkan untuk mengakses wireless LAN dan/atau internet.

    4. Jika nama Supplicant tidak terautentifikasi, maka radius server akan mengirim pesan gagal. Dan proses authentifikasi tidak berjalan atau gagal.
Contoh Implementasi

RADIUS umumnya digunakan oleh ISP (Internet Service Provider) atau penyedia layanan internet untuk melakukan Authentication (pembuktian keaslian pengguna), Authorize(mengatur pemberian hak/otoritas) dan Accounting (mencatat penggunaan layanan yang digunakan).

RADIUS menjalankan sistem administrasi pengguna yang terpusat. Sistem ini akan mempermudah tugas administrator. Dapat kita bayangkan berapa banyak jumlah pelanggan yang dimiliki oleh sebuah ISP, dan ditambah lagi dengan penambahan pelanggan baru dan penghapusan pelanggan yang sudah tidak berlangganan lagi.

Apabila tidak ada suatu sistem administrasi yang terpusat, maka akan merepotkan administrator dan tidak menutup kemungkinan ISP akan merugi atau pendapatannya berkurang.

Dengan sistem ini pengguna dapat menggunakan hotspot di tempat yang berbeda-beda dengan melakukan autentikasi ke sebuah RADIUS server.

Selasa, 27 November 2012

Membuat Raid dan LVM di Ubuntu

MEMBUAT RAID LEVEL 1

membuat RAID level 1 di RHEL6 dan membuat partisi LVM
untuk kasus ini saya menggunakan software vmware yang sudah diinstall RHEL 6 didlammnya:

sebelum memulai mengcreate RAID kita harus paham terlebi dahulu dasar-dasar tentang teori RAID !!!
disini saya gak membahas pancang tentang teory RAID, klo ada yang belum paham tentang teory RAID bisa dicari di www.google.co.id,

klo dari dasar teory RIAD ada level 0, level 1, level 1+0, level 5 dan level 6
klo menurut pengetahuan gw yg selama ini gw pelajari dapat di simpulkan ada 3 metode,

  1. RAID level 0 striping adalah terdiri dari 1 atau lebih harddisk yang disatukan namun tidak ada haridsk redundant, klo menurut performance kecepatan raid level 1 lebih bagus namun jika ada salah satu hardisk yang rusak maka data-data yang ada didalamnya akan hancur
  2. kedua RAID level 1 dan 1+0 striping mirroring misal raid 1 harus mempunyai hardisk 2 hardisk yang pertama sebagai striping dan yang kedua sebagai mirroring jika salah satu hardisk ada yang rusak maka data masih aman karena masih memiliki mirror hardisk sebagai redundant begitu juga raid level 1+0 minimal memiliki 4 hardisk atau lebih harus ganjil jika 4 hardisk terpasang maka 2 hardisk sebagai striping dan 2 hardisk sebagai mirroring sebagai redundant nya jelas sekali bahwasanny metode mirroring memakan setengah space hardisk sebagai redundant ny, raid level 10 lebih boros hardisk sebagai redundant tetapi dari segi performance lebih bagus dibandingan raid level 5 dan 6.
  3. RAID level 5 dan 6 parity adalah menggunakan logika XOR di matematika, raid level 5 minimal menggunakan 3 hardisk atau lebih, misal menggunakan 3 hardisk jika hardisk yang akan terpakai space haridisk adalah 2 hardisk yang 1 hardisk lagi menjadi sebagai redundant parity, jika menggunakan 4 hardisk maka space yang tersedia 3 hardisk yang 1 nya sebagai  redundant parity dan begitu seterusnya, untuk raid level 6 tidak jauh beda dengan raid level 5 hanya hanya level 6 mempunya 2 parity beda dengan level 5 yang mempunya 1 parity, minimal penggunaan hardisk untuk level 6 adalah 4 hardisk atau lebih, untuk penggunakan redundant raid level 5 dan 6 lebih sedikit dibandingkan dengan raid level 10, tetapi performance kurang bagus dibandingan raid level 1 dan level 0

untuk selanjutnya kita akan membuat percobaan dengan menggunkan 2 hardisk virtual
device hardisk yaitu /dev/sdd dan /dev/sde

langkah pertama kita buat raid level 1 dengan perintah sebagai berikut

perintah untuk membuat raid level=1
dengan perintah sebagai berikut

# mdadm --create /dev/md2  --level=1 --raid-devices=2 /dev/sdd /dev/sde



 setelah berhasil mengcreate raid level 1 coba kita lihat status raid nya dengan perintah sebagai berikut

# mdadm --detail /dev/md2


Proses pembuatan RAID level 1 sudah berhasil !!!
jika ingin membuat raid 5 minimal mempunyai 3 hardisk dan rubah perintah perintahnya menjadi:


# mdadm --create /dev/md2  --level=5 --raid-devices=5 /dev/sdd /dev/sde  /dev/sdf

 

PEMBUATAN LVM

Setelah selesai membuat raid level 1 maka selanjutnya membuat Logical Volume Manager untuk penjelasan lengkap tentang LVM bisa di searching di www.google.co.id :D

Nah sekarng kita mempunyai device /dev/md2 yang nantinya akan dijadikan LVM, untuk device /dev/sdd dan /dev/sde sudah tidak diperlukan lagi dalam proses ini,

 prosedur dalam pembuat lvm ada 3 cara yaitu: 
  •  Buat Physical Volume
  •  Buat Volume Group
  •  Buat partisi LVM
1. Create physical group
dengan menuliskan perintah seperti ini

# pvcreate /dev/md2

  
2. Create volume group
dengan menuliska perintah


# vgcreate  vraid /dev/md2


keterangan:
vgcreate   : perintah untuk membuat volume group
vraid        : nama volume group
/dev/md2 : nama device dari physical volume yang sudah dibuat

untuk melihat status volume group bisa menggunakan perintah

# vgdisplay -v vraid




sebelum kita membuat lvm perhatikan PE size dan Total PE pada gambar diatas, Total hardisk yang kita ingin buat lvm adalah 5GB, pada display diatas terdapat angka Total PE 1279 dan PE Size 4.00 MB jika dikonfert dari PE ke GB 1279 di kali 4.00MB totalnya 5116 MB sekitaran 5 GB,

3. Create lvm
 dengan menuliskan perintah


# lvcreate -l 1279 vraid -n lvmraid








keterangan:
lvcreate : perintah untuk membuat lvm
-l          : free size PE
vraid     : nama volume group
-n         : membuat nama lvm 

setelah selesai membuat lvm maka kita lihat statusnya

# lvdisplay /dev/vraid/lvmraid

pembuatan lvm sudah selesai !!!

ups tapi tidak cukup sampai disini saja, setelah kita membuat lvm maka  filesystem untuk bisa mount ke dalam folder yang nanti bisa dipakai untuk menyimpan data.


MEMBUAT FILE SYSTEM DAN MOUNT POINT

sebelum kita membuat filesystem di lvm kita buat dulu directory di /home/lvmdata

# mkdir /home/lvmdata
# mkfs.ext4 /dev/vraid/lvmraid
# mount /dev/vraid/lvmraid /home/lvmdata
# df -h






Source : Daniel Supangkat blog





Rabu, 08 Februari 2012

Proses booting di linux


Tahapan - tahapan sehingga Operating System Ubuntu (linux) dapat berjalan ialah sebagai berikut :
- Saat pertama dihidupkan komputer akan membaca Bios terlebih dahulu, salah satunya kan  membaca media yang akan digunakan untuk booting, misalnya Ubuntu kita menggunakan harddisk
- Kemudian komputer membaca MBR (Master Boot Record) yaitu sektor pertama dari Hard Disk yang berisi program untuk melakukan kontrol terhadap proses booting{mxc}
- Ubuntu secara default menggunakan GRUB (Grand Unified Bootloader) untuk proses bootingnya
- Grub membaca konfigurasi sistem kemudian meload OS yang di tunjuk baik secara otomatis maupun manual
- Proses selanjutnya Kernel Linux akan di load kedalam memori
- Kemudian kernel menjalankan perintah - perintah Init seperti melakukan mounting terhadap pastisi root, eksekusi file system dan service - service
- Proses Init ini merupakan indux dari semua proses prosedur boot di linux.
- Naskah init tersimpan di /etc/inittab, berisi Run Level mana yang akan dieksekusi

Selesai cukup singkat bukan, itu kenapa proses booting di Linux jauh lebih cepat dari OS Windows atau yang lainnya

Selasa, 18 Oktober 2011

Hak akses file di Linux dan konfigurasinya


GNU/Linux merupakan salah satu sistem operasi yang cukup aman (secure).
Seorang user dapat memproteksi file-filenya dan dapat menentukan user mana
saja yang dapat mengakses, membaca, dan merubah file tersebut. Saat sebuah
file dibuat dan disimpan oleh user, maka secara otomatis kepemilikannya
(owner) adalah user yang bersangkutan.

Terdapat tiga macam hak akses dari sebuah file, yaitu:

·        Read: mengizinkan user lain untuk membaca isi dari file tersebut tetapi user lain tidak dapat melakukan perubahan isi file.
·        Write: mengizinkan kepada user lain untuk dapat membaca dan melakukan perubahan terhadap isi file, termasuk menghapusnya.
·        Execute: mengizinkan user lain dapat mengeksekusi/menjalankan file (biasanya berupa script atau program).

Pemberian hak akses kepada user dapat dilakukan secara individu (one by one)
oleh pemilik file. Pemberian hak akses kepada user lain seperti di atas masih dapat dilakukan jika jumlah user masih terjangkau. Namun bagaimana halnya
jika jumlah user telah mencapai ratusan atau bahkan ribuan dalam sebuah
perusahaan. Sungguh bukan sebuah ide yang baik jika harus diberikan hak akses
satu per satu kepada user yang jumlahnya ribuan tadi. Masalah tersebut ternyata
telah terpikirkan oleh developer GNU/Linux dengan menciptakan manajemen
group yang di dalamnya dapat mencakup banyak user.

Setiap file yang ada di dalam distro linux mempunyai atribut, salah satunnya adalah hak akses, hak akses mempunyai kewenangan untuk membedakan kepemilikan (owner) dari file tersebut dalam hal membaca/mengakses file, mengubah isi file, atau mengekseskusi file. Berlaku juga untuk direktori. Selain hak akses yang dimiliki oleh sebuah file, sistem file GNU/linux juga mengenal tiga buah mode akses terhadap direktori atau file.

Adapun ketiga mode akses tersebut, yaitu:

·        Owner : hak akses user pemilik direktori atau file.
·        Group : hak akses group tempat user tersebut berada.
·        Other : hak akses setiap user selain pemilik direktori atau file.

Berikut rincian penjelasan mode akses dan hak akses terhadap sebuah file atau
direktori GNU/Linux :


Penjelasan :
• Tanda “-” pertama merupakan tipe file tersebut yang berarti file biasa.
• 3 tanda berikutnya “rw-” merupakan atribut hak akses yang dimiliki oleh owner file yang
berarti dapat membaca dan mengubah file
• 3 tanda berikutnya “r--” merupakan atribut hak akses yang dimiliki oleh group dari pemilik
file yang berarti hanya baca saja.
• 3 tanda terakhir “r--” merupakan atribut hak akses untuk other/pengguna lain yang berarti
hanya baca saja.




Hak akses terhadap file juga dapat dikonversikan ke dalam bilangan biner dan
desimal seperti yang tampak pada tabel 3.1 berikut.

Tabel 4.1 Mode Akses

Berikut aturan konversi hak akses owner, group, dan other dari huruf ke
bilangan biner dan desimal. Konversi ini nantinya akan berguna saat manajemen
user pada bab selanjutnya.


Gambar 4.2 Konversi hak akses

Berikut contoh penerapannya:

Hak Akses Nilai Arti
-rw------- 600 = Pemilik memiliki hak akses baca dan tulis, sedangkan orang lain tidak memiliki hak akses apapun. Set dengan hak akses ini supaya file anda tidak dapat dibaca orang lain, biasanya digunakan untuk file-file dokumen
-rw-r--r—644 = Pemilik memiliki hak akses baca dan tulis sedangkan orang lain hanya dapat membaca saja. Gunakan hak akses ini jika anda ingin orang lain dapat membaca file anda
-rw-rw-rw- 666 = Dengan hak akses ini, orang lain juga akan dapat membaca dan merubah file anda
-rwx------ 700 = Pemilik dapat membaca, menulis dan menjalankan file ini, hak akses ini yang biasanya digunakan untuk menjalankan program
-rwxr-xr-x 755 = Pemilik memiliki hak akses baca, tulis dan menjalankan file ini, sedangkan orang lain hanya dapat membaca dan menjalankan file tersebut
drwx------ 700 =   Hanya pemilik yang dapat mengakses, membaca dan menulis pada direktori tersebut. Setiap direktori harus memiliki hak akses x untuk dapat diakses
drwxr-xr-x 755 = Isi direktori ini hanya dapat dirubah oleh pemilik, tetapi orang lain dapat membaca isi direktori tersebut

Ø Menggunakan Perintah chmod
Untuk menggunakan chmod, perintahnya adalah:


# chmod hakakses namafile
misalnya:
# chmod 644 coba.txt
perintah tersebut akan mengubah hak akses file coba.txt menjadi seperti berikut:
-rw-r--r-- 1 postgres postgres 41527 Jul 12 2001 coba.txt

Untuk mengganti hak akses sebuah direktori beserta dengan isinya, gunakan parameter R, dengan parameter tersebut, chmod akan dijalankan secara rekursif, misalnya seluruh file yang ada pada direktori /home/user/public_html akan dirubah hak aksesnya menjadi 755, maka perintahnya adalah sebagai berikut:
# chmod R 755 /home/user/public_html

Ø Menggunakan Perintah chown
Perintah chown digunakan untuk mengganti pemilik sebuah file, perintah ini hanya dapat digunakan oleh user root. Perintah ini hanya dapat digunakan oleh user root. Perintahnya adalah sebagai berikut:
# chown namauser.namagrup namafile
misalnya:
# chown user.user coba.txt

perintah chown juga dapat digunakan dengan menggunakan parameter R, contohnya adalah sebagai berikut:

# chown R apache.apache /var/www/html

Ø Perintah chattr
Seringkali secara tidak sengaja kita menghapus atau mengedit sebuah file penting, di dalam Linux tidak ada fasilitas undelete, jadi file yang telah terhapus tidak dapat dikembalikan lagi.
Perintah (program) chattr digunakan untuk melindungi sebuah file sehingga tidak akan dapat dihapus ataupun dirubah dengan perintah apapun. Perintah chattr memberikan atribut i pada file yang dilindungi, perintahnya:
# chattr +i namafile
misal:
# chattr +i penting.txt
setelah perintah tersebut dijalankan, gunakan perintah ls - l untuk melihat hasilnya.
jika suatu ketika file ini akan diedit atau dihapus, terlebih dahulu atribut diatas harus dilepas, untuk melepasnya gunakan perintah berikut:
# chattr i namafile







Untuk lebih jelasnya, sebagai contoh kita buat sebuah file dengan menggunakan perintah nano di terminal. Contoh :
maxilian@ubuntu:~$ nano
kemudian isikan sembarang dalam file tersebut.

Kemudian simpan file tersebut dengan menekan ctrl+x dan isikan nama file. Dalam contoh saya akan menggunakan nama coba. Masih dari terminal ketikkan perintah :
maxilian@ubuntu:~$ ls -l
untuk melihat atribut dari file tersebut.


Hak akses dari sebuah file/direktori dapat juga dirubah dengan 2 cara :

1.     Menggunakan mode alphabet

chmod [ugoa] [= + -] [rwx] File(s)
chmod [ugoa] [= + -] [rwx] Dir(s)
Ket :
– u : user/pemilik
– g : group/kelompok
– o : others/lainnya
– a : all/semua
contoh :
maxilian@ubuntu:~$ chmod u+x,g+w coba

hak akses pada file coba yang semula -rw-r--r-- berubah menjadi -rwxrw-r-- karena pada hak
akses owner di tambahkan atribut eksekusi (x) dan pada group di tambahkan atribut
ubah/tulis (w).

2.     Menggunakan angka octal
r : 4
w : 2
x : 1

jika r saja maka nilainya 4
jika w saja maka nilainya 2
jika x saja maka nilainya 1

Sehingga jika file ingin dirubah atributnya menjadi rwx maka total nilainya adalah 4+2+1 = 7. begitu seterusnya apabila mengubah atribut yang lain.

Contoh :
– file coba tadi yang mempunyai atribut -rwxrw-r-- akan kita rubah menjadi -rwxrwxrwx.
Nilai atributnya menjadi 7 untuk owner, group dan others dari perhitungan rwx = 4+2+1 = 7, sehingga perintahnya menjadi : chmod 777 -R coba



Penjelasan :

Digit pertama untuk owner, digit kedua untuk group dan yang ketiga untuk others, sedangkan -R merupakan mode rekursif

Sabtu, 15 Oktober 2011

PS AUX pada Linux


 Proses adalah Program yang sedang dieksekusi. Setiap kali menjalankan suatu program, Sistem UNIX melakukan suatu fork, yaitu melakukan beberapa urutan operasi untuk membuat suatu proses konteks dan kemudian mengeksekusi program tersebut dalam konteks yang sudah dibuat. Oleh karena itu kita harus menguasai Manajemen Proses Linux. Manajemen Proses Linux adalah salah satu hal yang sangat penting yang harus dikuasai oleh seorang Teknisi Komputer. Kenapa? Karena selain kita mengetahui proses di Windows, kita harus tahu proses di Linux dan dengan penguasaan manajemen prose ini kita bisa mengetahui proses apa saja yang running pada setiap user. Atau dalam suatu jaringan juga kita bisa melakukan controlling terhadap proses setiap client.

      Dalam Manajemen proses beberapa hal penting yang harus dikuasai, yaitu :
1. Mengetahui proses yang terjadi Linux
2. Dapat melakukan proses controlling terhadap proses di Linux
3. Menghentikan proses yang tidak dibutuhkan dan mengurangi performa Linux

Untuk itu kita harus mempelajari Manajemen Proses pada Linux. Perintah inti dari proses manajemen proses di Linux adalah :
1. ps
2. kill


Sebelum kita mempelajari mengenai perintah ps, dan kill, kita harus mengetahui sedikit demi sedikit mengenai proses, jenisnya, dll. OK Check it out!


Tipe-tipe Proses dalam Linux

Tipe-tipe proses dalam Linux, dibagi ke dalam 3 bagian, yaitu :

  1. Interactive : Proses yang diprakarsai oleh sebuah shell dan berjalan dalam foreground dan background. seperti : terminal, software running, dll.
  2. Batch        : Sebuah seri dari proses-proses yang dijadwalkan untuk dieksekusi pada suatu waktu tertentu, proses batch ini juga tidak berhubungan dengan terminal, tapi menunggu dieksekusi secara sekuensial.
  3. Daemon    : Proses yang diinisialisasi saat booting  untuk membentuk suatu fungsi-fungsi sistem yang dibutuhkan, bila tidak ada request maka akan berada pada keadaan idle, seperti : LPD, NFS, dan DNS.

IDENTITAS PROSES


Berikut adalah beberapa identitas dari Proses yang ada di Linux :
1. PID ( Proccess ID )
   adalah pengenalan unik suatu proses, dimana digunakan untuk menentukan proses-proses mana yang di bawa saat suatu aplikasi dijalankan atau melakukan proses pengiriman signal, mengubah, dan menunggu proses lainnya. PID sendiri  merupakan bilangan 32 bit yang dibatasi oleh Linux dari range 0-32767 untuk menjamin kompatibilitas dengan UNIX tradisional.

2. Credentials ( Mandat )
    adalah Pengaturan akses yang dipengaruhi oleh User ID dan Group ID. Jadi kita dapat mengatur hak akses atau Credetials setiap user, group, dll.

3. Personality
    adalah sebuah hal yang cukup jarang ditemukan dalam sistem UNIX, namun sangat berpengaruh dalam proses system call dan pengiriman signal dari suatu aplikasi.

Status Proses yang dikenali dalam Linux

1. Task Running             : Proses yang siap untuk dieksekusi CPU
2. Task Interruptable      : Proses yang menunggu sebuah kondisi. Interupsi, Sinyal dan aktifitas lain akan mem
                                        bangunkan proses.
3. Task Uninterruptable  : Proses yang sedang sleep, dan tidak dapat di interrupt oleh signal.
4. Task Stopped            : Proses yang dihentikan
5. Task Zombie              : Proses telah berhenti, namun masih memiliki struktur data di task_struct di task
                                        vektor dan masih memegang sumber daya yang tidak digunakan lagi.

PERINTAH PS


Perintah atau command ps (process status) di gunakan untuk menampilkan informasi proses yang sedang berjalan termasuk nomor PID (Process Identification Number) dari proses tersebut. Proses atau biasa disebut task akan berjalan jika ada sebuah aplikasi yang sedang dijalankan, setiap proses yang berjalan oleh system diberi nomor PID yang unik.




Syntak dasar dari perintah ps adalah
ps [option]
Jika anda menggunakan perintah ps tanpa diikuti option apapun, maka akan ditampilkan output standart dari perintah ps tersebut yang terdiri dari PID, TTY, TIME, dan CMD
contoh:
arie@natty:~$ ps
  PID TTY          TIME CMD
 1815 pts/0    00:00:00 bash
 1869 pts/0    00:00:00 ps
1. Memulai menggunakan perintah ps
Ketikkan perintah berikut untuk menampilkan semua prosess yang sedang berjalan
ps -aux | less
Contoh
arie@natty:~$ ps -aux | less

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2920  1812 ?        Ss   02:49   0:00 /sbin/init
root         2  0.0  0.0      0     0 ?        S    02:49   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    02:49   0:00 [ksoftirqd/0]
root         6  0.0  0.0      0     0 ?        S    02:49   0:00 [migration/0]
root         7  0.0  0.0      0     0 ?        S    02:49   0:00 [migration/1]
root         8  0.0  0.0      0     0 ?        S    02:49   0:00 [kworker/1:0]
root         9  0.0  0.0      0     0 ?        S    02:49   0:00 [ksoftirqd/1]
root        10  0.0  0.0      0     0 ?        S    02:49   0:00 [kworker/0:1]
root        11  0.0  0.0      0     0 ?        S<   02:49   0:00 [cpuset]
root        12  0.0  0.0      0     0 ?        S<   02:49   0:00 [khelper]
root        13  0.0  0.0      0     0 ?        S<   02:49   0:00 [netns]
root        15  0.0  0.0      0     0 ?        S    02:49   0:00 [sync_supers]
root        16  0.0  0.0      0     0 ?        S    02:49   0:00 [bdi-default]
root        17  0.0  0.0      0     0 ?        S<   02:49   0:00 [kintegrityd]
root        18  0.0  0.0      0     0 ?        S<   02:49   0:00 [kblockd]
root        19  0.0  0.0      0     0 ?        S<   02:49   0:00 [kacpid]
root        20  0.0  0.0      0     0 ?        S<   02:49   0:00 [kacpi_notify]
root        21  0.0  0.0      0     0 ?        S<   02:49   0:00 [kacpi_hotplug]
root        22  0.0  0.0      0     0 ?        S<   02:49   0:00 [ata_sff]
root        23  0.0  0.0      0     0 ?        S    02:49   0:00 [khubd]
..........
option -a akan menampilkan semua user yang sedang menjalankan proses, option -u berfungsi untuk menampilkan semua proses ylain yang sedang berjalan, option -x berfungsi untuk menampilkan proses yang tidak dikontrol oleh terminal (tty) seperti daemon yang dijalankan saat booting.
2. Menampilkan semua proses yang sedang berjalan pada sistem
ps -A
contoh :
arie@natty:~$ ps -A
  PID TTY          TIME CMD
    1 ?        00:00:00 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 ksoftirqd/0
    6 ?        00:00:00 migration/0
    7 ?        00:00:00 migration/1
    9 ?        00:00:00 ksoftirqd/1
   10 ?        00:00:00 kworker/0:1
   11 ?        00:00:00 cpuset
   12 ?        00:00:00 khelper
   13 ?        00:00:00 netns
   15 ?        00:00:00 sync_supers
   16 ?        00:00:00 bdi-default
   17 ?        00:00:00 kintegrityd
   18 ?        00:00:00 kblockd
   19 ?        00:00:00 kacpid
   20 ?        00:00:00 kacpi_notify
   21 ?        00:00:00 kacpi_hotplug
   22 ?        00:00:00 ata_sff
   23 ?        00:00:00 khubd
........
Atau gunakan perintah berikut
ps -e

3. Melihat semua proses yang berjalan kecuali root
ps -U root -u root -N

contoh:
arie@natty:~$ ps -U root -u root -N
  PID TTY          TIME CMD
  611 ?        00:00:00 rsyslogd
  615 ?        00:00:00 dbus-daemon
  658 ?        00:00:00 avahi-daemon
  659 ?        00:00:00 avahi-daemon
  834 ?        00:00:00 xrdp
 1097 ?        00:00:00 gnome-session
 1147 ?        00:00:00 ssh-agent
 1150 ?        00:00:00 dbus-launch
 1151 ?        00:00:00 dbus-daemon
 1156 ?        00:00:00 gconfd-2
 1165 ?        00:00:00 gnome-keyring-d
 1170 ?        00:00:00 gnome-settings-
 1175 ?        00:00:00 gvfsd
 1179 ?        00:00:09 compiz
......
4.Menampilkan proses yang sedang dijalankan oleh user tertentu
ps -u user

contoh :
arie@natty:~$ ps -u arie
  PID TTY          TIME CMD
 1097 ?        00:00:00 gnome-session
 1147 ?        00:00:00 ssh-agent
 1150 ?        00:00:00 dbus-launch
 1151 ?        00:00:00 dbus-daemon
 1156 ?        00:00:00 gconfd-2
 1165 ?        00:00:00 gnome-keyring-d
 1170 ?        00:00:00 gnome-settings-
 1175 ?        00:00:00 gvfsd
 1179 ?        00:00:10 compiz
 1183 ?        00:00:00 pulseaudio
 1195 ?        00:00:00 gvfs-fuse-daemo
 1255 ?        00:00:00 nautilus
 1261 ?        00:00:00 polkit-gnome-au
 1262 ?        00:00:00 bluetooth-apple
 1263 ?        00:00:00 zeitgeist-datah
......
5. Menampilkan proses yang sedang berjalan dalam bentuk bagan
pstree
contoh:
pstree


PERINTAH KILL
    Perintah kill adalah salah satu perintah daasar Linux yang digunakan untuk menghentikan atau mematikan proses yang sedang berjalan pada Sistem Operasi Linux / UNIX. perintah ini sangat penting karena dengan memahami perintah ini kita bisa mengetahui mana proses yang mengganggu performa, tidak dibutuhkan, dll.

Contoh perintah Kill :

$ kill <sinyal> <pid>
PID adalah nomor proses yang akan di hentikan. Tidak tahu PID proses mana yang akan dihentikan? Cobalah bereksperimen dengan perintah:
ps aux | grep <myusername>