Menyiapkan server NFS dengan otentikasi berbasis Kerberos untuk klien Linux - Bagian 7

Menyiapkan server NFS dengan otentikasi berbasis Kerberos untuk klien Linux - Bagian 7

Dalam artikel terakhir dari seri ini, kami meninjau cara mengatur saham samba melalui jaringan yang mungkin terdiri dari beberapa jenis sistem operasi. Sekarang, jika Anda perlu mengatur berbagi file untuk sekelompok klien seperti Unix, Anda akan secara otomatis memikirkan Sistem File Jaringan, atau NFS Ringkasnya.

Seri RHCE: Menyiapkan NFS Server dengan Kerberos Authentication - Bagian 7

Dalam artikel ini kami akan memandu Anda melalui proses penggunaan Berbasis Kerberos otentikasi untuk NFS saham. Diasumsikan bahwa Anda sudah mengatur server NFS dan klien. Jika tidak, silakan merujuk untuk menginstal dan mengkonfigurasi server NFS - yang akan mencantumkan paket yang diperlukan yang perlu diinstal dan menjelaskan cara melakukan konfigurasi awal di server sebelum melanjutkan lebih lanjut.

Selain itu, Anda ingin mengonfigurasi Selinux dan FirewallD untuk memungkinkan berbagi file melalui NFS.

Contoh berikut mengasumsikan bahwa Anda NFS Bagikan terletak di /nfs di dalam box2:

# Semanage fcontext -a -t public_content_rw_t "/nfs (/.*)?" # restorecon -r /nfs # setsebool -p nfs_export_all_rw di # setsebool -p nfs_export_all_ro on on 

(Dimana -P Bendera menunjukkan kegigihan lintas reboot).

Akhirnya, jangan lupa untuk:

Buat Grup NFS dan Konfigurasikan Direktori Bagikan NFS

1. Buat grup yang dipanggil NFS dan tambahkan nfsnobody pengguna ke sana, lalu ubah izin dari /nfs direktori ke 0770 dan pemilik kelompoknya NFS. Dengan demikian, nfsnobody (yang dipetakan ke permintaan klien) akan memiliki izin menulis di berbagi) dan Anda tidak perlu menggunakan no_root_squash dalam /etc/ekspor mengajukan.

# GroupAdd NFS # USERMOD -A -G NFS NFSNOBODY # CHMOD 0770 /NFS # CHGRP NFS /NFS 

2. Ubah file ekspor (/etc/ekspor) sebagai berikut hanya mengizinkan akses dari Box1 menggunakan Kerberos keamanan (SEC = KRB5).

Catatan: bahwa nilai Anongid telah diatur ke Gid dari NFS grup yang kami buat sebelumnya:

Ekspor - Tambahkan Bagikan NFS
/NFS BOX1 (RW, SEC = KRB5, ANONGID = 1004) 

3. Ekspor kembali (-R) semua (-A) saham NFS. Menambahkan verbositas ke output (-v) adalah ide yang bagus karena akan memberikan informasi yang bermanfaat untuk memecahkan masalah server jika ada yang salah:

# Exportfs -arv 

4. Memulai kembali dan mengaktifkan server NFS dan layanan terkait. Perhatikan bahwa Anda tidak perlu mengaktifkan NFS-lock Dan NFS-IDMAPD karena mereka akan secara otomatis dimulai oleh layanan lain di boot:

# Systemctl restart rpcbind NFS-server NFS-LOCK NFS-IDMAP # Systemctl Aktifkan RPCBind NFS-Server 

Pengujian lingkungan dan prasyarat lainnya

Dalam panduan ini kami akan menggunakan lingkungan pengujian berikut:

  1. Mesin klien [Box1: 192.168.0.18]
  2. Server NFS / Kerberos [Box2: 192.168.0.20] (juga dikenal sebagai Pusat Distribusi Utama, atau Kdc Ringkasnya).

Catatan: itu Kerberos Layanan sangat penting untuk skema otentikasi.

Seperti yang Anda lihat, NFS server dan Kdc di -host di mesin yang sama untuk kesederhanaan, meskipun Anda dapat mengaturnya di mesin terpisah jika Anda memiliki lebih banyak yang tersedia. Kedua mesin adalah anggota mydomain.com domain.

Terakhir, tetapi tidak kalah penting, Kerberos Membutuhkan setidaknya skema dasar resolusi nama dan layanan protokol waktu jaringan untuk hadir di klien dan server karena keamanan otentikasi Kerberos sebagian didasarkan pada cap waktu tiket.

Untuk mengatur resolusi nama, kami akan menggunakan /etc/host File di klien dan server:

File Host - Tambahkan DNS untuk domain
192.168.0.18 Box1.mydomain.com Box1 192.168.0.20 Box2.mydomain.com box2 

Di dalam RHEL 7, Chrony adalah perangkat lunak default yang digunakan untuk NTP sinkronisasi:

# yum instal chrony # systemctl mulai chronyd # systemctl aktifkan chronyd 

Untuk memastikan Chrony sebenarnya menyinkronkan waktu sistem Anda dengan server waktu Anda mungkin ingin mengeluarkan perintah berikut dua atau tiga kali dan pastikan offset semakin dekat ke nol:

# Pelacakan Chronyc 
Sinkronisasi Waktu Server dengan Chrony

Menginstal dan Mengkonfigurasi Kerberos

Untuk mengatur Kdc, Instal paket berikut pada keduanya server Dan klien (Hilangkan paket server di klien):

# yum update && yum instal krb5-server krb5-workstation pam_krb5 

Setelah diinstal, edit file konfigurasi (/etc/krb5.conf Dan /var/Kerberos/krb5kdc/kadm5.ACL) dan ganti semua contoh contoh.com (huruf kecil dan huruf besar) dengan mydomain.com sebagai berikut.

Sekarang buat Kerberos database (harap dicatat bahwa ini mungkin memakan waktu beberapa saat karena memerlukan beberapa tingkat entropi di sistem Anda. Untuk mempercepat, saya membuka terminal lain dan berlari ping -f localhost selama 30-45 detik):

# kdb5_util create -s 
Buat database Kerberos

Selanjutnya, aktifkan Kerberos melalui Firewall dan mulai / aktifkan layanan terkait.

Penting: NFS-Secure Harus dimulai dan diaktifkan pada klien juga:

# firewall-cmd --permanent --add-service = kerberos # systemctl start krb5kdc kadmin nfs-secure # systemctl aktifkan krb5kdc kadmin nfs-secure 

Selanjutnya, menggunakan Kadmin.lokal alat, buat prinsip admin untuk root:

# Kadmin.lokal # addPrinc root/admin 

Dan tambahkan Kerberos Server ke database:

# addprinc -randkey host/box2.mydomain.com 

Sama dengan NFS Layanan untuk kedua klien (Box1) dan server (box2). Harap dicatat bahwa di tangkapan layar di bawah ini saya lupa melakukannya Box1 Sebelum berhenti:

# addPrinc -randkey nfs/box2.mydomain.com # addprinc -randkey nfs/box1.mydomain.com 

Dan KELUAR dengan mengetik berhenti dan menekan enter:

Tambahkan Kerberos ke NFS Server

Kemudian dapatkan dan cache tiket tiket Kerberos untuk root/admin:

# Kinit root/admin # klist 
Cache Kerberos

Langkah terakhir sebelum benar -benar menggunakan Kerberos sedang disimpan ke keytab file (di server) Prinsipal yang berwenang menggunakan otentikasi Kerberos:

# Kadmin.Lokal # ktadd host/box2.mydomain.com # ktadd nfs/box2.mydomain.com # ktadd nfs/box1.mydomain.com 

Akhirnya, pasang berbagi dan lakukan tes tulis:

# mount -t nfs4 -o sec = krb5 box2: /nfs /mnt # echo "halo dari tecmint.com "> /mnt /salam.txt 
Mount NFS Bagikan

Mari sekarang unmount bagian, ganti nama keytab File di klien (untuk mensimulasikannya tidak ada) dan mencoba memasang berbagi lagi:

# Umount /mnt # mv /etc /krb5.keytab /etc /krb5.keytab.Orig 
Mount Unmount Kerberos NFS Bagikan

Sekarang Anda dapat menggunakan NFS Berbagi dengan Berbasis Kerberos autentikasi.

Ringkasan

Dalam artikel ini kami telah menjelaskan cara mengatur NFS dengan Kerberos autentikasi. Karena ada lebih banyak topik daripada yang dapat kita bahas dalam satu panduan, jangan ragu untuk memeriksa dokumentasi Kerberos online dan karena Kerberos agak sulit untuk sedikitnya, jangan ragu untuk memberikan catatan kepada kami menggunakan formulir di bawah ini Jika Anda mengalami masalah apa pun atau memerlukan bantuan dengan pengujian atau implementasi Anda.