GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal dan Mengkonfigurasi Server NFS di Debian 11

NFS atau Network File System adalah protokol jaringan yang memungkinkan Anda memasang sistem file jarak jauh melalui jaringan. Protokol NFS menggunakan arsitektur server-client, server NFS yang menyediakan semua direktori atau partisi yang siap diakses dan di-mount, dan klien yang menggunakan protokol rpcbind untuk mengakses semua direktori dan sistem file melalui koneksi jaringan internal.

Status terkini dari protokol Sistem File Jaringan dijelaskan di bawah ini.

1. NFSv2 dan NFSv3 masih didukung oleh sistem operasi utama, tetapi untuk alasan keamanan, Anda harus membatasi akses server NFS ke jaringan lokal tepercaya. NFSv2 dan NFSv3 direkomendasikan untuk jenis penerapan kecil dan menengah.
2. Protokol NFSv4 menyediakan fitur keamanan dasar seperti otentikasi dan enkripsi, tetapi protokol ini bergantung pada Kerberos untuk bagian tersebut. Jadi, Anda perlu menambahkan konfigurasi tambahan untuk menggunakan NFSv4 dengan fitur keamanan dasar.

Untuk tutorial ini, Anda akan mempelajari cara menginstal dan mengkonfigurasi Server NFS pada Debian 11 Bullseye terbaru. Anda akan menginstal server NFS dan mengamankan akses dengan membatasi host menggunakan firewall ufw. Dan kemudian Anda akan mempelajari cara mengatur klien untuk memasang direktori dan partisi yang disediakan oleh server NFS, dan mengatur server NFS yang dipasang secara otomatis saat sistem boot melalui konfigurasi '/etc/fstab'.

Prasyarat

1. Kami akan menggunakan dua mesin berbeda pada jaringan yang sama seperti di bawah ini.
     - debian64 - 192.168.1.25 - sebagai Server NFS
     - client-debian - 192.168.1.30 - sebagai klien
2. Pengguna root atau pengguna dengan hak akses root. Pengguna ini akan digunakan untuk menginstal paket baru dan mengedit konfigurasi sistem.

Memasang dan Mengonfigurasi Server NFS

Pada awalnya, Anda akan menginstal paket server nfs dan menyiapkan direktori bersama untuk klien.

1. Jalankan perintah berikut untuk menginstal paket nfs-server.

apt install nfs-kernel-server rpcbind

Ketik 'y ' dan tekan 'Enter ' untuk melanjutkan penginstalan.

2. Sekarang buat direktori baru yang ingin Anda bagikan dengan klien. Untuk contoh ini, Anda akan membagikan dua direktori '/mnt/shared' dan '/srv/data' kepada klien. Dan jangan berbagi direktori root '/' default atau direktori '/etc'.

Buat direktori bersama baru menggunakan perintah mkdir di bawah ini.

mkdir -p /mnt/shared
mkdir -p /srv/data

Buat file baru di setiap direktori dengan menjalankan perintah echo di bawah ini.

echo "test file nfs server" > /mnt/shared/test-file.txt
echo "test file nfs server" > /srv/data/test-file.txt

Sekarang ubah kepemilikan kedua direktori bersama menjadi 'nobody:nogroup' dengan menjalankan perintah di bawah ini.

chown nobody:nogroup /mnt/shared /srv/data

Dan Anda siap untuk mengonfigurasi Server NFS.

3. Untuk mengkonfigurasi direktori bersama untuk nfs, edit konfigurasi '/etc/exports' menggunakan editor nano.

nano /etc/exports

Di bawah ini adalah beberapa contoh konfigurasi untuk beberapa skenario

Bagikan direktori untuk klien host tunggal dengan akses baca-tulis.

/mnt/shared    192.168.1.30(rw,sync,no_subtree_check)

Bagikan direktori untuk beberapa klien, termasuk grup jaringan host.

/srv/data      172.16.1.0/24(rw,sync,no_root_squash,no_subtree_check) 10.11.12.0/24(rw,no_subtree_check)

Bagikan direktori untuk satu klien dengan akses hanya baca.

/srv/data        192.168.1.30(ro)

Di bawah ini adalah contoh konfigurasi terakhir.

/mnt/shared    192.168.1.30(rw,sync,no_subtree_check)
/srv/data      172.16.1.0/24(rw,sync,no_root_squash,no_subtree_check) 10.11.12.0/24(rw,no_subtree_check)
/srv/data      192.168.1.30(ro,no_root_squash)

Simpan konfigurasi dengan menekan 'Ctrl+x tombol ', ketik 'y ', lalu tekan 'Enter ' untuk keluar.

Opsi yang harus Anda ketahui:

  • rw :mengizinkan akses baca dan tulis untuk server dan klien NFS ke volume/direktori.
  • ro :izinkan akses hanya-baca untuk klien.
  • sinkronisasi :membalas permintaan hanya setelah perubahan telah dilakukan ke penyimpanan yang stabil. Opsi ini diaktifkan secara default.
  • tidak sinkron :memungkinkan server NFS melanggar protokol NFS dan membalas permintaan sebelum perubahan apa pun yang dibuat oleh permintaan itu dilakukan ke penyimpanan stabil.
  • subtree_check :izinkan dan aktifkan pemeriksaan subpohon. Opsi ini diaktifkan secara default.
  • no_subtree_check :menonaktifkan pemeriksaan subpohon, yang memiliki implikasi keamanan ringan, tetapi dapat meningkatkan keandalan dalam beberapa keadaan.
  • root_squash :Memetakan permintaan dari uid/gid 0 ke uid/gid anonim. Perhatikan bahwa ini tidak berlaku untuk uid atau gid lain yang mungkin sama sensitifnya, seperti bin pengguna atau staf grup.
  • no_root_sqash :menonaktifkan root squashing. Opsi ini terutama berguna untuk klien tanpa disk.

4. Selanjutnya, restart layanan nfs-server untuk menerapkan konfigurasi baru menggunakan perintah di bawah ini.

systemctl restart nfs-server

Sekarang periksa dan verifikasi layanan nfs-server menggunakan perintah berikut.

systemctl is-enabled nfs-server
systemctl status nfs-server

Dan Anda akan mendapatkan output yang sama seperti di bawah ini.

Seperti yang dapat dilihat, layanan nfs-server 'diaktifkan' dan akan berjalan secara otomatis saat sistem dinyalakan. Dan status nfs-service saat ini adalah 'active (exited)', yang berarti layanan sedang berjalan, tetapi systemd tidak dapat menemukan daemon untuk dipantau.

Mengamankan Server NFS dengan Firewall UFW

Untuk tahap ini, Anda akan menginstal firewall ufw dan membatasi akses ke server NFS untuk host dan jaringan tertentu saja.

1. Jalankan perintah apt di bawah ini untuk menginstal paket ufw.

apt install ufw

Ketik 'y ' dan tekan 'Enter ' untuk mengonfirmasi dan melanjutkan penginstalan.

2. Jika semua instalasi selesai, tambahkan layanan SSH ke aturan firewall ufw menggunakan perintah di bawah ini.

ufw allow ssh

3. Selanjutnya, jalankan perintah ufw di bawah ini untuk menambahkan host atau jaringan ke firewall ufw Anda.

Izinkan host dengan alamat IP '192.168.1.30 ' untuk mengakses server NFS.

ufw allow from 192.168.1.30 to any port nfs

Izinkan blok jaringan untuk mengakses server NFS.

ufw allow from 172.16.1.0/24 to any port nfs
ufw allow from 10.11.12.0/24 to any port nfs

4. Setelah itu, aktifkan ufw firewall menggunakan perintah berikut.

ufw enable

Ketik 'y ' dan tekan 'Enter ' untuk memulai dan mengaktifkan firewall ufw.

Sekarang periksa status firewall ufw menggunakan perintah di bawah ini.

ufw status

Dan Anda akan melihat output serupa seperti di bawah ini.

Seperti yang dapat dilihat, status firewall ufw adalah 'aktif', dan layanan NFS pada port default '2049' tersedia pada daftar aturan.

Menyiapkan Klien NFS

Untuk langkah ini, Anda akan mengonfigurasi klien untuk mengakses direktori dan partisi bersama di server NFS.

1. Pertama, instal 'nfs-common ' paket menggunakan perintah apt di bawah ini.

apt install nfs-common

Ketik 'y ' dan tekan 'Enter ' untuk mengonfirmasi dan melanjutkan penginstalan.

2. Setelah instalasi selesai, buat direktori baru untuk direktori mount.

mkdir -p /nfs/shared; mkdir -p /nfs/data

3. Untuk me-mount direktori atau partisi nfs dari server NFS, jalankan perintah mount di bawah ini.

mount 192.168.1.25:/mnt/shared /nfs/shared
mount 192.168.1.25:/srv/data /nfs/data

Perintah mount dasar untuk mengakses NFS adalah dengan menentukan alamat IP server NFS '192.168.1.25' dengan direktori mount jalur '/mnt/shared' dan '/srv/data' dan jalur target di sisi klien '/nfs /shared' dan direktori '/nfs/data'.

4. Selanjutnya, jalankan perintah berikut untuk memverifikasi bahwa pemasangan NFS berhasil.

df -h

Selain itu, Anda dapat memeriksa file yang baru saja Anda buat di atas dengan menjalankan perintah berikut.

cat /nfs/shared/test-file.txt
cat /nfs/data/test-file.txt

Di bawah ini adalah output yang akan Anda dapatkan.

Seperti yang terlihat, Anda telah berhasil memasang server NFS ke direktori '/nfs/shared' dan '/nfs/data', dan Anda akan dapat membaca file yang baru saja Anda buat di atas.

Verifikasi Akses Baca dan Tulis ke Server NFS

Untuk tahap ini, Anda akan memverifikasi akses baca dan tulis ke direktori server NFS.

1. ubah direktori kerja menjadi '/nfs/shared', periksa file yang tersedia di direktori tersebut, dan tampilkan konten file tersebut menggunakan perintah seperti di bawah ini.

cd /nfs/shared
ls

cat test-file.txt

Selanjutnya, buat file baru menggunakan perintah echo di bawah ini.

echo "This file from nfs-client" > client.txt
cat client.txt

Jika Anda dapat membuat file 'client.txt', akses tulis ke direktori NFS '/nfs/share' berhasil, seperti yang dijelaskan dalam konfigurasi di bawah ini.

/mnt/shared    192.168.1.30(rw,sync,no_subtree_check)

2. Selanjutnya, pada konfigurasi yang telah Anda buat di atas, cline hanya memiliki akses untuk membaca direktori NFS '/nfs/data', seperti yang Anda lihat pada konfigurasi di bawah ini.

/srv/data        192.168.1.30(ro,no_root_squash)

Ubah direktori kerja menjadi '/nfs/data', periksa file di dalamnya, periksa file yang tersedia di direktori tersebut, dan tampilkan konten file tersebut menggunakan perintah seperti di bawah ini.

cd /nfs/data
ls

cat test-file.txt

Selanjutnya, jika Anda ingin membuat file baru, Anda akan mendapatkan error 'Read-only file system'. Karena Anda hanya memiliki izin untuk 'hanya-baca' seperti yang dijelaskan pada konfigurasi teratas.

echo "This is a file from client to data" > client-data.txt

Di bawah ini adalah output serupa yang akan Anda dapatkan.

Izin baca dan tulis dicocokkan dengan konfigurasi server NFS saat ini.

Pasang NFS saat boot

Untuk tahap ini, Anda akan mempelajari cara me-mount direktori/partisi NFS pada boot/startup sistem melalui konfigurasi '/etc/fstab'.

1. Edit '/etc/fstab' konfigurasi menggunakan editor nano.

nano /etc/fstab

Ubah detail alamat IP, direktori bersama, dan direktori pemasangan jalur dengan milik Anda, lalu tempel konfigurasi.

192.168.1.25:/mnt/shared        /nfs/shared   nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0
192.168.1.25:/srv/data          /nfs/data     nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0

Simpan konfigurasi dengan menekan 'Ctrl+x ' dan ketik 'y ', lalu tekan 'Enter ' untuk keluar.

2. Selanjutnya, verifikasi '/etc/fstab ' konfigurasi sudah benar dengan menggunakan perintah berikut.

Umount semua direktori mount menggunakan perintah di bawah ini.

umount -R /nfs/shared
umount -R /nfs/data

Jalankan perintah berikut untuk memasang semua sistem file yang tersedia pada file konfigurasi '/etc/fstab'.

mount -a

Pastikan Anda tidak memiliki kesalahan.

Sekarang jalankan perintah berikut untuk menampilkan semua sistem file yang terpasang.

df -h

Jika konfigurasi Anda benar, Anda akan melihat server NFS dipasang ke direktori target seperti yang dijelaskan pada konfigurasi '/etc/fstab'.

3. Anda dapat mem-boot ulang mesin klien dan login kembali, lalu verifikasi kembali menggunakan perintah seperti di bawah ini.

df -h

Dan Anda akan melihat server NFS secara otomatis munted pada sistem boot pada mesin klien melalui file '/etc/fstab'.

Kesimpulan

Selamat! Anda telah berhasil menginstal NFS Server pada Debian 11 Bullseye terbaru. Selain itu, Anda telah berhasil mengamankan penerapan Server NFS menggunakan firewall ufw, menyiapkan mesin klien NFS, dan menyetel pemasangan otomatis menggunakan konfigurasi '/etc/fstab'. Untuk langkah selanjutnya, Anda mungkin juga tertarik dengan protokol NFSv4, yang menyediakan mekanisme keamanan seperti enkripsi dan otentikasi melalui server Kerberos.


Debian
  1. Cara menginstal dan mengkonfigurasi Server OpenVPN di Debian 10

  2. Cara menginstal dan mengkonfigurasi buruh pelabuhan di Debian 11

  3. Bagaimana menginstal dan mengkonfigurasi Proxy Squid di Debian 11

  1. Cara Menginstal dan Mengkonfigurasi Server VNC di Debian 10

  2. Cara Menginstal dan Mengkonfigurasi Mariadb 10 di Debian 11

  3. Cara menginstal dan mengkonfigurasi MongoDB 5 di Debian 11

  1. Cara Menginstal dan Mengonfigurasi Server NFS di Ubuntu 20.04

  2. Cara Menginstal dan Mengonfigurasi Server NFS di Ubuntu 18.04

  3. Cara menginstal dan mengkonfigurasi Redis 6 di Debian 11