Senin, 01 Juni 2020

NFS

 Network File System ( NFS ) adalah protokol sistem file terdistribusi yang awalnya dikembangkan oleh Sun Microsystems (Sun) pada tahun 1984, memungkinkan pengguna pada komputer klien untuk mengakses file melalui jaringan komputer seperti halnya penyimpanan lokal diakses. NFS, seperti banyak protokol lainnya, dibangun di atas sistem Open Network Computing Remote Procedure Call (ONC RPC). NFS adalah standar terbuka yang didefinisikan dalam Request for Comments (RFC), yang memungkinkan siapa saja untuk mengimplementasikan protokol.

NFS sering digunakan dengan sistem operasi Unix (seperti Solaris , AIX , HP-UX ), macOS Apple , dan sistem operasi mirip Unix (seperti Linux dan FreeBSD ). Ini juga tersedia untuk sistem operasi seperti Acorn RISC OS , AmigaOS , Mac OS klasik , OpenVMS , MS-DOS , Microsoft Windows ,  OS / 2 ,  ArcaOS , Novell NetWare, dan IBM AS / 400 . Protokol akses file jarak jauh alternatif termasuk Server Message Block (SMB, juga disebut CIFS), Apple Filing Protocol (AFP), NetWare Core Protocol (NCP), dan sistem file OS / 400 File Server (QFileSvr.400).


SMB dan NetWare Core Protocol (NCP) lebih sering digunakan daripada NFS pada sistem yang menjalankan Microsoft Windows; AFP terjadi lebih sering daripada NFS di sistem Apple Macintosh ; dan QFileSvr.400 lebih sering muncul di sistem AS / 400 .


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 suatu client melakukan mount pada NFS export, maka diharapkan root pada client tidak 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.


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 , client dapat mengaksesnya seolah – olah file atau direktori berada pada local disk.


Hak akses:

Misalnya permission read dan write (rw). Opsi lain yang bisa dipakai di antaranya :


ro: Folder hanya bisa dibaca. klien tidak bisa mengubah dan menulis pada folder.

rw: klien dapat membaca dan menulis pada folder yang di-share.

no_root_squash: Secara default, user root pada klien yang melakukan request akan dianggap sebagai user nobody oleh server. Jika opsi ini diaktifkan, user root pada klien memiliki hak yang sama dengan user root pada server.

no_subtree_check: Secara default, server akan memeriksa apakah file yang diminta klien berada pada partisi yang sesuai. Jika opsi ini diaktifkan, server tidak melakukan pemeriksaan dan dapat mempercepat proses transfer file.

sync: Opsi untuk mencegah terjadinya file corruption.

Tidak ada komentar:

Posting Komentar