NFS (Network File System) Sun Microsystems adalah struktur sistem file terdistribusi berbasis RPC yang memungkinkan perangkat jaringan untuk menggunakan server yang menjalankan NFS melalui jaringan sebagai drive lokal mereka.
Berikut adalah panduan langkah demi langkah untuk menyiapkan dan mengonfigurasi server NFS di mesin Linux.
Apa itu Sistem File Jaringan?
Sistem file NFS memiliki empat protokol. Saat server siap, server akan memberitahukan portmap (server yang mengubah protokol menjadi nomor port) dari port yang akan digunakan dan memberikan nomor program RPC yang dikontrol.
Saat menggunakan sistem Linux tertanam, sangat mudah untuk mem-boot perangkat Anda melalui berbagi file NFS melalui jaringan alih-alih memulainya langsung dari perangkat penyimpanan (flash NAND, eMMC, MMC, dll.).
Meskipun lebih jarang, Anda mungkin juga ingin memasang NFS share dan melakukan berbagi file menggunakannya setelah sistem boot, bahkan jika Anda tidak mem-boot sistem Anda langsung dari NFS share. Agar kedua skenario berfungsi, Anda harus terlebih dahulu menginstal server NFS di komputer yang sedang Anda kembangkan.
Cara Menginstal NFS di Linux
Jika Anda menggunakan Sistem berbasis Debian seperti Ubuntu atau Linux Mint, Anda harus menginstal nfs-kernel-server paket sebagai berikut:
sudo tepat Install nfs-kernel-server
Di ArchLinux:
sudo pacman -S nfs-utils
Di Fedora, CentOS, dan RHEL:
sudo dnf -y Install nfs-utils
Di akhir proses, server NFS Anda akan berjalan secara otomatis. Namun, pada titik ini, ia belum mengetahui direktori mana di komputer Anda yang ingin Anda bagikan melalui jaringan. Oleh karena itu, tidak menyediakan berbagi apa pun secara default.
Anda dapat membuka beberapa direktori di server yang sama untuk memungkinkan berbagi jaringan dengan otorisasi dan batasan yang berbeda.
Mengkonfigurasi Server NFS di Linux
Untuk berbagi direktori apa pun melalui server NFS, Anda perlu mengonfigurasi pengaturan terkait direktori di /etc/exports mengajukan. Buka file dengan editor teks pilihan Anda. Pastikan untuk menambahkan awalan sudo ke perintah.
sudo vim /etc/ekspor
Anda mungkin bertanya-tanya apa arti opsi pemetaan yang Anda lihat di sini:
- root_squash: Menandai sudo pengguna klien resmi sebagai bukan pengguna dan grup di NFS
- no_root_squash: Nonaktifkan root squashing
- all_squash: Tidak seperti root_squash, ini memungkinkan semua pengguna dipetakan sebagai pengguna dan grup bukan siapa-siapa. Biasanya digunakan untuk akses publik.
- no_all_squash: Kebalikan dari all_squash; opsi ini adalah default
Ketika sistem di luar rentang IP yang Anda izinkan di file /etc/exports di server NFS mencoba mengakses sumber daya yang relevan, server NFS akan menolak permintaan tersebut.
Anda mungkin menerima pesan "akses ditolak oleh server" saat memasang pada sistem tertanam Anda. Pesan kesalahan yang mirip dengan berikut ini akan muncul di akhir /var/log/syslog file di komputer tempat server NFS berjalan:
rpc.mountd[1041]: permintaan pemasangan yang ditolak dari192.168.2.2untuk /home/contoh/casper/target (/home/contoh/casper/target): host yang tak tertandingi
Ketika Anda melihat pesan log host yang tidak cocok seperti di atas, Anda harus memperluas bagian IP/Netmask dari aturan yang relevan di file /etc/exports atau menggunakan asterisk (*) karakter khusus jika Anda ingin memberikan akses ke semua alamat IP.
Anda harus memulai ulang layanan NFS setelah melakukan modifikasi pada /etc/exports mengajukan:
sudo service nfs-kernel-server restart
Atau, jika distro Anda dikirimkan dengan systemctl, jalankan perintah berikut:
sudosistemctlmengulang kembalinfs-server.melayani
Anda juga dapat memberikan -r parameter ke exportfs perintah sehingga membagikan ulang direktori yang telah mengubah pengaturan apa pun yang terkait dengan pembagian:
sudo exportfs -r
Memperbaiki Masalah Latensi Pemasangan
Saat Anda menggunakan protokol NFS versi 4 dan yang lebih tinggi di server Anda, mungkin ada penundaan hingga 15 detik selama proses pemasangan sisi klien dalam skenario operasi tradisional dengan konfigurasi default NFS server. Masalah ini mungkin muncul di beberapa versi Debian, Fedora, dan Ubuntu.
Jika Anda mengalami kelambatan pemasangan yang serupa, Anda dapat periksa file log sisi server (/var/log/syslog, /var/log/messages) untuk pesan log yang mirip dengan berikut ini:
... RPC: AUTH_GSS waktu panggilan habis
Pesan ini menunjukkan bahwa otentikasi Kerberos gagal dan waktu habis. Anda mungkin tidak memerlukan protokol Kerberos untuk otentikasi keamanan pada jaringan di lingkungan Anda. Bahkan jika Anda berada di jaringan yang dikonfigurasi dengan cara ini, setidaknya dengan sistem Linux tertanam Anda, Anda tidak perlu mengaktifkan otentikasi Kerberos.
Meskipun alternatif untuk menjalankan layanan GSSD dengan NFS untuk memperbaiki masalah telah ditawarkan, pendekatan ini tidak memiliki dampak yang sama di semua distribusi dan versi paket, dan oleh karena itu, paling rasional untuk mengatasi masalah ini dari akar.
Anda harus memblokir (atau memasukkannya ke daftar hitam) rpcsec_gss_krb5 modul kernel dari pemuatan pada sistem Linux tempat server NFS dijalankan.
Agar opsi ini berlaku setiap kali Anda me-restart komputer Anda, buat file baru ditelepon /etc/modprobe.d/nfs-gss-blacklist.conf dan tambahkan baris berikut ke dalamnya:
daftar hitam rpcsec_gss_krb5
Setelah Anda menyimpan file dan mem-boot ulang sistem, masalah latensi pemasangan akan hilang.
Mengapa Menggunakan Server NFS?
NFS sederhana dan terjangkau untuk diatur. Hal ini memungkinkan untuk manajemen terpusat, yang mengurangi kebutuhan untuk perangkat lunak tambahan dan ruang penyimpanan pada PC pengguna individu. Pada satu mesin, beberapa pengguna dapat berbagi ruang disk yang sama. Mereka dapat menempatkan disk ini di atas sistem file mereka untuk memperluas ruang penyimpanan.
Berbagi NFS memungkinkan program yang membutuhkan banyak ruang penyimpanan untuk dikelompokkan pada satu server. Ini dapat menghasilkan penghematan ruang disk yang besar. Sementara versi NFS sebelumnya rentan, versi yang lebih baru telah memperkenalkan tingkat perlindungan tambahan, termasuk otentikasi Kerberos.
Namun, ada beberapa kelemahan juga. NFS telah ditemukan melambat dalam beberapa kasus selama lalu lintas jaringan yang padat. Berbagi dengan Windows dimungkinkan, tetapi mungkin memerlukan beberapa aplikasi pihak ketiga. Tapi ini bukan praktik yang sangat masuk akal dalam hal keamanan. Jika konfigurasi tidak benar, akses tidak sah dapat terjadi.
Berbagi Sistem File Menjadi Mudah di Linux Menggunakan NFS
Mengetahui masalah keamanan dan menemukan solusi adalah salah satu tugas paling penting dari administrator sistem. Penting untuk mengetahui prosedur keamanan untuk semua sistem berbagi file dan alat manajemen dan bukan hanya NFS.