NFS的淺析和NFS搭建(包含iptables規(guī)則)

NFS(Network File System/網(wǎng)絡(luò)文件系統(tǒng))

NFS允許網(wǎng)絡(luò)中的計(jì)算機(jī)之間通過TCP/IP網(wǎng)絡(luò)共享資源。

在NFS的應(yīng)用中,本地NFS的客戶端應(yīng)用可以透明地讀寫位于遠(yuǎn)端NFS服務(wù)器上的文件,就像訪問本地文件一樣。

優(yōu)點(diǎn):

1、簡單容易掌握

2、方便快速部署簡單維護(hù)容易

3、可靠—從軟件層面上看,數(shù)據(jù)可靠性高,經(jīng)久耐用


組成:

NFS體系由NFS服務(wù)器和若干臺(tái)客戶機(jī)組成。


工作原理:

NFS服務(wù)器通過網(wǎng)絡(luò)共享目錄,客戶機(jī)將網(wǎng)絡(luò)目錄掛載在本地,通過TCP/IP網(wǎng)絡(luò)遠(yuǎn)程訪問存放在NFS服務(wù)器上的數(shù)據(jù)。

NFS就是網(wǎng)絡(luò)共享目錄,就是共享文件.服務(wù)端共享,客戶端掛載使用。


通訊過程:

1.服務(wù)端啟動(dòng)RPC服務(wù),開啟111端口。

(遠(yuǎn)程過程調(diào)用協(xié)議,是一種通過網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)程序上請(qǐng)求服務(wù),而不需要了解底層網(wǎng)絡(luò)技術(shù)的協(xié)議。)

2.啟動(dòng)NFS服務(wù),向RPC注冊(cè)端口信息。

3.客戶端啟動(dòng)RPC(portmap服務(wù)),向服務(wù)端的RPC(portmap)服務(wù)請(qǐng)求服務(wù)點(diǎn)的NFS端口

(portmap端口映射是一個(gè)服務(wù)器,將RPC程序號(hào)轉(zhuǎn)換為DARPA的協(xié)議端口號(hào),在使用RPC調(diào)用時(shí)它必須運(yùn)行。)

4.服務(wù)端的RPC(portmap)服務(wù)反饋NFS端口信息給客戶端。

5.客戶端通過獲取的NFS端口來建立和服務(wù)端的NFS連接并進(jìn)行數(shù)據(jù)的傳輸。


NFS權(quán)限設(shè)置:

rw 表示可讀寫

ro Read-only表示只能讀權(quán)限

Sync 請(qǐng)求或者寫入數(shù)據(jù)時(shí),數(shù)據(jù)同步寫入到NFS server的硬盤中后才會(huì)返回

no_root_squas 訪問nfs server共享目錄的用戶如果是root的話,它對(duì)該目錄具有root權(quán)限。這個(gè)配置原本為無盤用戶準(zhǔn)備的。用戶應(yīng)避免使用!

root_squash 對(duì)于訪問NFS server共享目錄的用戶,如果是root的話會(huì)被壓縮成為nobody用戶身份。

all_squash 不管訪問nfs server共享目錄的用戶身份如何包括root,它的權(quán)限都將被壓縮成為匿名用戶,同時(shí)他們的udi和gid都會(huì)變成nobody或nfsnobody賬戶的uid,gid。在多個(gè)nfs客戶端同時(shí)讀寫nfs server數(shù)據(jù)時(shí),這個(gè)參數(shù)很有用***可以確保大家寫入的數(shù)據(jù)的權(quán)限是一樣的。

但不同系統(tǒng)有可能匿名用戶的uid,gid不同。因?yàn)榇颂幬覀冃枰?wù)端和客戶端之間的用戶是一樣的。比如說:服務(wù)端指定匿名用戶的UID為2000,那么客戶端也一定要存在2000這個(gè)賬號(hào)才可以

anonuid 就是匿名的uid和gid。說明客戶端以什么權(quán)限來訪問服務(wù)端,在默認(rèn)情況下是nfsnobody。Uid65534.

anongid 同anongid,就是把uid換成gid而已。



配置實(shí)踐:

NFS服務(wù)端:192.168.81.54

NFS客戶端1:192.168.81.11

NFS客戶端2:192.168.81.12


yum -y install portmap nfs-utils nfs-utils-lib

service portmap start

service nfs start


vi /etc/exports

? mnt/data/mysql 192.168.81.0/24(rw,sync,no_root_squash)

vi /etc/sysconfig/nfs

? RQUOTAD_PORT=875

? LOCKD_TCPPORT=32803

? LOCKD_UDPPORT=32769

? MOUNTD_PORT=892

service nfs restart

rpcinfo -p localhost(應(yīng)該出現(xiàn)上述修改過的端口)

vi /etc/sysconfig/iptables

? # Firewall configuration written by system-config-firewall

? # Manual customization of this file is not recommended.

? *filter

? :INPUT ACCEPT [0:0]

? :FORWARD ACCEPT [0:0]

? :OUTPUT ACCEPT [0:0]

? :RH-Firewall-1-INPUT - [0:0]

? -A INPUT -j RH-Firewall-1-INPUT

? -A FORWARD -j RH-Firewall-1-INPUT

? -A RH-Firewall-1-INPUT -i lo -j ACCEPT

? -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

? -A RH-Firewall-1-INPUT -p 50 -j ACCEPT

? -A RH-Firewall-1-INPUT -p 51 -j ACCEPT

? -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

? -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT

? -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT

? -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

? -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

? -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT

? COMMIT

iptables -I INPUT -s 192.168.81.0/24 -p tcp --dport 875 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p udp --dport 875 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p tcp --dport 892 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p udp --dport 892 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p tcp --dport 32769 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p udp --dport 32769 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p tcp --dport 32803 -j ACCEPT

iptables -I INPUT -s 192.168.81.0/24 -p udp --dport 32803 -j ACCEPT

iptables -L

iptables-save > /etc/sysconfig/iptables

showmount? -e 192.168.81.54

Export list for 192.168.81.54:

/mnt/data/mysql 192.168.81.0/24

mount -t nfs 192.168.81.54:/mnt/data/mysql /var/lib/mysql

df

? Filesystem? ? ? ? ? ? ? ? ? ? 1K-blocks? ? Used Available Use% Mounted on

? /dev/mapper/VolGroup-lv_root? 18134344 4493724? 12719432? 27% /

? tmpfs? ? ? ? ? ? ? ? ? ? ? ? ? ? 502204? ? ? 0? ? 502204? 0% /dev/shm

? /dev/sda1? ? ? ? ? ? ? ? ? ? ? ? 495844? 34836? ? 435408? 8% /boot

? /dev/sr0? ? ? ? ? ? ? ? ? ? ? ? 4363088 4363088? ? ? ? 0 100% /media

? 192.168.81.54:/mnt/data/mysql? 18134400 4466176? 12747136? 26% /var/lib/mysql

客戶端:

yum -y install portmap

showmount? -e 192.168.81.54

mount -t nfs 192.168.81.54:/mnt/data/mysql /var/lib/mysql

df

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容