NFS (Network File System) adalah sebuah protokol berbagi
pakai berkas melalui jaringan. NFS ini meng-share file ataupun resource melalui
network atau jaringan tanpa peduli sistem operasi yang digunakan apa. NFS
merupakan sebuah sistem berkas terdistribusi yang dikembangkan oleh Sun
Microsystems Inc. pada awal dekade 1980-an yang menjadi standar de facto dalam
urusan sistem berkas terdistribusi. NFS didesain sedemikian rupa untuk
mengizinkan pengeksporan sistem berkas terhadap jaringan yang heterogen (yang
terdiri dari sistem-sistem operasi yang berbeda dan platform yang juga
berbeda). Teknologi NFS ini dilisensikan kepada lebih dari 200 vendor komputer
dan jaringan, dan telah dibuat implementasinya pada banyak platform dan sistem
operasi, termasuk di antaranya adalah UNIX, GNU/Linux, Microsoft Windows, dan
lingkungan mainframe.
NFS dapat mengizinkan klien-klien untuk menemukan dan
mengakses berkas yang disimpan di dalam server jaringan jarak jauh. Memang,
desain awal spesifikasi NFS dikhususkan untuk penggunaan dalam jaringan lokal
(LAN) dan tidak dioptimalkan untuk penggunaan dalam WAN. Tapi, versi NFS 3 yang
digunakan saat ini dapat digunakan dalam jaringan WAN, sebaik ketika ia bekerja
di dalam LAN. Fitur-fitur yang dimiliki oleh NFS versi 3 adalah sebagai
berikut:
- Mendukung
ukuran berkas hingga satuan Terabyte, dengan menggunakan indikator ukuran
berkas hingga 64-bit (pada versi sebelumnya, hanya mengimplementasikan
indikator ukuran berkas hingga 32-bit saja, sehingga total ukuran berkas
maksimum adalah 4 gigabyte).
- Ukuran
maksimum paket data yang didukung adalah 64 Kilobyte (pada versi
sebelumnya, hanya mencapai 8 KB untuk tiap paketnya, sehingga lebih lama
dalam melakukan transfer data dari satu host ke host lainnya yang
menjalankan NFS).
- Dapat
memilih apakah hendak menggunakan protokol lapisan transport UDP atau TCP
(pada versi sebelumnya, NFS hanya menggunakan protokol lapisan transport
UDP sehingga kurang bagus diimplementasikan dalam jaringan WAN).
- Server
dapat melakukan penge-cache-an terhadap request yang dilakukan oleh
klien.
B. Implementasi Standar NFS
NFS diimplementasikan sebagai sebuah sistem client/server
yang menggunakan perangkat lunak NFS server dan NFS client yang berjalan di
atas workstation. NFS Server akan menggunakan protokol NFS untuk mengekspor
sistem berkas yang dimilikinya kepada klien NFS agar dapat dibaca ole klien,
seolah-olah sistem berkas remote tersebut merupakan sistem berkas yang dimiliki
oleh klien secara lokal. Sedangkan NFS Client Menyiapkan direktori yang dipakai
untuk menampung sharing direktori dari server, kemudian melakukan konfigurasi
pengambilan file lewat sharing dengan tempat penampungan telah
disiapkanImplementasi standar NFS biasanya seperti item-item berikut ini:
1. Server akan mengimplementasikan daemon NFS (dijalankan sebagai nfsd secara default).NFS ini akan berjalan dan memungkinkan data yang di-share tersedia dan bisa diakses oleh client
2. Administrator server berhak menentukan bagian-bagianyang di-share. Semuanya akan diletakkan di file/etc/export command exportfs.
3. Administrator security di server memungkinkan hanya client yang valid yang dapat mengakses file NFS yang di-share.
4. Konfigurasi jaringan memastikan bahwa client bisa mengakses melalui sistem firewall.. Request dari client harus ada untuk mengekspor data, biasanya menggunakan command mount.
6. Jika semua berjalan lancar, user dari client bisa melihat dan berinteraksi dengan file di jaringan seolah-olah berinteraksi di komputer sendiri.
1. Server akan mengimplementasikan daemon NFS (dijalankan sebagai nfsd secara default).NFS ini akan berjalan dan memungkinkan data yang di-share tersedia dan bisa diakses oleh client
2. Administrator server berhak menentukan bagian-bagianyang di-share. Semuanya akan diletakkan di file/etc/export command exportfs.
3. Administrator security di server memungkinkan hanya client yang valid yang dapat mengakses file NFS yang di-share.
4. Konfigurasi jaringan memastikan bahwa client bisa mengakses melalui sistem firewall.. Request dari client harus ada untuk mengekspor data, biasanya menggunakan command mount.
6. Jika semua berjalan lancar, user dari client bisa melihat dan berinteraksi dengan file di jaringan seolah-olah berinteraksi di komputer sendiri.
C. Keuntungan dari NFS
Penggunaan NFS tentunya membawa keuntungan bagi organisasi yang mengimplementasikannya , diantaranya :
- Workstation lokal
dapat menggunakan space storage yang lebih sedikit karena
data yang sering diakses oleh banyak orang atau yang memakan banyak space dapat
disimpan dalam NFS Server dan tetap dapat diakses oleh
banyak orang.
- Tidak
perlu dibuat direktori Home yang terpisah ditiap workstation.Direktori Home untuk
setiap user dapat dibuat di NFS Server dan tiap user
dapat mengaksesnya melalui jaringan.
- Penggunaan
NFS memungkinkan manajemen yang tersentralisasi. Manajemen yang tersentralisasi
ini dapat mengurangi pekerjaan administrator dalam melakukan back-up dan menambahkan
software yang digunakan banyak orang .
D. Kelemahan NFS
NFS juga memiliki beberapa kelemahan , khususnya dalam hal performa dan keamanan. Sebagai File System yang berbasiskan Network , NFS sangat sensitif terhadap kepadatan jaringan. Trafik tinggi pada jaringan dapat menurunkan performa NFS , begitu juga aktifitas yang tinggi pada storage akan mempengaruhi performa NFS. Pada NFS client terlihat lambat karena proses membaca dan menulis pada storage membutuhkan waktu yang lebih lama. Jika File System yang di ekspor sedang tidak tersedia ketika sebuah client mencoba melakukan mount , sistem dari client akan crash, meskipun permasalahan ini dapat dikurangi dengan menggunakan mount yang spesifik. Dan karena NFS itu tersentralisasi jika storage yang di-mount oleh berbagai client tiba-tiba crashkarena suatu sebab , maka tidak akan ada yang dapat mengakses storage tersebut.
NFS juga memiliki permasalahan dalam keamanannya, karena NFS
didesain dengan asumsi jaringannya itu aman. Kelemahan utama dari keamanan dari
NFS ialah NFS itu berdasarkan RPC , yang tidak lain merupakan target utama dari
serangan. Hal ini dapat menyebabkan informasi yang seharusnya tidak di-mount
menjadi terekspos di internet yang berada di dalam Firewall maupun
diluar. Meskipun berada di dalam Firewall , menyediakan akses
ke seluruh user untuk semua file memberikan resiko yang lebih tinggi
dibandingkan dengan keuntungan yang didapat. Oleh karena itu seorang
Administrator Sistem harus jeli dalam membatasi akses user dan permission untuk
file-file tertentu pada direktori atau file system yang di-mount. NFS
juga memiliki fitur yang berpotensial meningkatkan resiko keamanan. Contohnya
jika root user di suatuclient melakukan mount pada
NFS export, maka diharapkan root pada clienttidak
memiliki hak sebagai root pada file system yang
di mount. Secara default,NFS telah mencegahnya
dengan prosedur yang dinamakan root squashing ,namun apabila tidak
hati-hati bisa saja seorang Administrator menghapus prosedur tersebut.
E. Cara Kerja NFS
Ketika client ingin mengakses suatu file
melalui NFS , kernel melakukan RPC(Remote Procedure Call) melalui
TCP/UDP ke nfsd (NFS daemon) pada server. RPC ini menggunakan file
handle , nama file atau direktori yang
ingin diakses, dan user id dan grup id dari client sebagai
parameter. Parameter ini digunakan untuk menentukkan apakah client berhak
mengakses file tersebut. Untuk mencegah user yang tidak berhak membaca dan
memodifikasi file , user dan group id harus sama untuk kedua hosts. Setelah
akses diberikan , clientdapat mengaksesnya seolah – olah file atau
direktori berada pada local disk.
No comments :
Post a Comment