• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • NFS

    發表于:2007-07-04來源:作者:點擊數: 標簽:
    2005-03-13 NFS(NETWORK FILE SYSTEM)RPC SERVICE 使 LINUX 機器能共享資料 后臺進程: nfsd lockd rpciod rpc.mounted,rpc.rquotad,rpc.stad 腳本: /etc/init.d/nfs /etc/init.d/nfslock 端口: 111 需要包: nfs-utils(第一張盤) portmap (必須)(第

    2005-03-13
    NFS(NETWORK FILE SYSTEM)RPC SERVICE 使LINUX機器能共享資料
    后臺進程:
    nfsd lockd rpciod rpc.mounted,rpc.rquotad,rpc.stad
    腳本:
    /etc/init.d/nfs /etc/init.d/nfslock
    端口:
    111
    需要包:
    nfs-utils(第一張盤)
    portmap (必須)(第一張)
    配置文件:
    /etc/exports(默認無,需要自己建立)

    1。
    使用方法:
    mount -t nfs IP(域名):/目錄  本地目錄
    2。使用注意:
    用service nfs start開啟服務
    用service portmap start確保服務開啟

    校對:
    如果您確定 /etc/exports 檔設定無誤,要重新讀取其設定,只需輸入如下命令就可以了:
    exportfs -rv
    假如有錯誤的話,應該會得到提示的。
    為求確定,您最好執行:
    showmount -e localhost

    范例:
    /tmp *(rw,no_root_squash)
    /usr/src *.siyongc.domain(ro,insecure) 192.168.100.*(ro,insecure)
    /var/ftp/pub/incoming 192.168.100.24(rw,all_squash,anonuid=50,anongid=50)

    第一行,我將 /tmp 這個目錄完全分享出去了,不管客戶端來自哪里。在括號里面的‘rw’就是 Read&Write 的意思,而‘no_root_squash’呢,則是允許讓使用者具備 root 的權限,在某些特殊情況下,例如使用 bootp 登錄的無磁碟工作站,是相當好用的。因為預設情況下 NFS 會將 root 的身份 squash 為權限最低的 anonymous (nobody) 身份,而其它身份則以 client 端機器上當時擁有的 User ID 和 Group ID (指號碼的值)來建立檔案。注意哦,在進權限判斷的時候, 不是以 UserName 來作為身份依據哦,UID 和 GID 的號碼最後必須對應到 server 端的 /etc/passwd ,而非 client 那邊的。

    第二行,我將 /usr/src 這個目錄分享給以 siyongc.domain 這個 domain 做結尾或是以 192.168.100 開頭的所有機器,而無需使用 secure port (insecure),但只具備唯讀權限(ro)。這里,您要留意 " * " 的使用,在一些舊版本的 NFS 您不能用在 IP 上。不過,我這里的測試卻是可行的。

    第三行,我將 /var/ftp/pub/incoming 這個目錄只分享給 192.168.0.22 這臺機器,且具備了讀和寫的權限(rw),但在 server 上寫入的檔案,必須換成 anonymous 身份進行。但是其後的設定又將所有 anonymous 換成設定的 UID 和 GID (這里都是 ftp),這樣的安排是要確定所有存取都按指定身份進行。這個 incoming 目錄預設是不存在的,日後在討論到 FTP 服務設定時候會提到,但您可以自行用 mkdir 建立,而且為 group 和 others 加上 +w 權限以及 sgid 和 sticky bit (3777)。 


    注意:
    1。
    mount -t nfs -o bg,soft,intr rh71:/tmp /mnt/nfs
    不過,如果沒有那些 -o 參數,然後在卸載之前您將 server 的 nfs 關閉了,或是網路連線出了問題,這時候再進行 umount 的話,很可能將您的機器‘定格’在那里!小心小心~~~ 所以,最好在 mount 的時候加上 soft 參數,并且在關閉 nfs 伺服器端之前,一定要先將所有的 client 所掛載的 mount point 進行 umount 才好進行。

    2。
    預設情況下 NFS 會將 root 的身份 squash 為權限最低的 anonymous (nobody) 身份,而其它身份則以 client 端機器上當時擁有的 User ID 和 Group ID (指號碼的值)來建立檔案。注意哦,在進權限判斷的時候, 不是以 UserName 來作為身份依據哦,UID 和 GID 的號碼最後必須對應到 server 端的 /etc/passwd ,而非 client 那邊的。


    出錯檢查:
    mount: xxxxx:/yyyyyyyy, reason given by server: Permission denied
    造成這樣的原因多數是 /etc/exports 檔案沒設定好的緣故


    mount: RPC: Unable to receive; errno = Connection refused
    可能出現的問題很多,首先確定 portmap 服務是否有跑起來,可以用 rpcinfo 來檢查

    補充:2005-04-21實驗
    參數正常情況下:啟動nfs提示
    Starting NFS quotas: Cannot register service: RPC: Unable to receive; errno = Connection refused
    rpc.rquotad: unable to register (RQUOTAPROG, RQUOTAVERS, udp).
                                                               [FAILED]
    說明portmap沒有啟動起來
    手動啟動  portmap服務


    補充2:
    2005-04-24實驗
    ***關于 在NFS下對域名做限制的問題的解釋。
     
    具體配置如下:
    IP:192.168.100.103 是DNS服務器 也是NFS服務器
    其中exports文件寫法:
    /home *.cyy.net(ro,sync,no_root_squash)

    用exportfs -rv顯示如下
    exporting *.cyy.net:/home

    ping abc.cyy.net如下:
    ping abc.cyy.net
    PING abc.cyy.net (192.168.100.102) 56(84) bytes of data.
    64 bytes from 192.168.100.102: icmp_seq=1 ttl=64 time=0.050 ms


    IP:192.168.100.102 是客戶機 即abc.cyy.net
    做mount -t nfs 192.168.100.103:/home /nfs

    報錯: mount -t nfs 192.168.100.103:/home /nfs
    mount: 192.168.100.103:/home failed, reason given by server: Permission denied 


    *******

    問題的關鍵 是沒有給abc.cyy.net做反向解析,測試是否做了反向解析用
    host 192.168.100.102

    問題2,做限制的第二種方法:
    直接修改hosts.allow  hosts.deny

    操作如下:
    修改/etc/hosts.allow和/etc/hosts.deny達到限制CLIENT的目的
    /etc/hosts.allow
    portmap: .cyy.net : allow


    /etc/hosts.deny
    portmap: ALL : deny

    2005-04-23


    NFS故障解決
    1、NFSD沒有啟動起來
    首先要確認 NFS 輸出列表存在,否則 nfsd 不會啟動??捎?exportfs 命令來檢查,如果 exportfs 命令沒有結果返回或返回不正確,則需要檢查 /etc/exports 文件。
    2、mountd 進程沒有啟動
    mountd 進程是一個遠程過程調用 (RPC) ,其作用是對客戶端要求安裝(mount)文件系統的申請作出響應。mountd進程通過查找 /etc/xtab文件來獲知哪些文件系統可以被遠程客戶端使用。另外,通過mountd進程,用戶可以知道目前有哪些文件系統已被遠程文件系統裝配,并得知遠程客戶端的列表。查看mountd是否正常啟動起來可以使用命令rpcinfo進行查看,在正常情況下在輸出的列表中應該象這樣的行:
    100005 1 udp 1039 mountd
    100005 1 tcp 1113 mountd
    100005 2 udp 1039 mountd
    100005 2 tcp 1113 mountd
    100005 3 udp 1039 mountd
    100005 3 tcp 1113 mountd
    如果沒有起來的話可以檢查是否安裝了PORTMAP組件。
    rpm -qa|grep portmap
    3、fs type nfs no supported by kernel
    kernel不支持nfs文件系統,重新編譯一下KERNEL就可以解決。
    4、can't contact portmapper: RPC: Remote system error - Connection refused
    出現這個錯誤信息是由于SEVER端的PORTMAP沒有啟動。
    5、mount clntudp_create: RPC: Program not registered
    NFS沒有啟動起來,可以用showmout -e host命令來檢查NFS SERVER是否正常啟動起來。
    6、mount: localhost:/home/test failed, reason given by server: Permission denied
    這個提示是當client要mount nfs server時可能出現的提示,意思是說本機沒有權限去mount nfs server上的目錄。解決方法當然是去修改NFS SERVER咯。
    7、被防火墻阻擋
    這個原因很多人都忽視了,在有嚴格要求的網絡環境中,我們一般會關閉linux上的所有端口,當需要使用哪個端口的時候才會去打開。而NFS默認是使用111端口,所以我們先要檢測是否打開了這個端口,另外也要檢查TCP_Wrappers的設定。


    六、NFS安全
    NFS的不安全性主要體現于以下4個方面:

    1、新手對NFS的訪問控制機制難于做到得心應手,控制目標的精確性難以實現
    2、NFS沒有真正的用戶驗證機制,而只有對RPC/Mount請求的過程驗證機制
    3、較早的NFS可以使未授權用戶獲得有效的文件句柄
    4、在RPC遠程調用中,一個SUID的程序就具有超級用戶權限.

    加強NFS安全的方法:
    1、合理的設定/etc/exports中共享出去的目錄,最好能使用anonuid,anongid以使MOUNT到NFS SERVER的CLIENT僅僅有最小的權限,最好不要使用root_squash。
    2、使用IPTABLE防火墻限制能夠連接到NFS SERVER的機器范圍
    iptables -A INPUT -i eth0 -p TCP -s 192.168.0.0/24 --dport 111 -j ACCEPT
    iptables -A INPUT -i eth0 -p UDP -s 192.168.0.0/24 --dport 111 -j ACCEPT
    iptables -A INPUT -i eth0 -p TCP -s 140.0.0.0/8 --dport 111 -j ACCEPT
    iptables -A INPUT -i eth0 -p UDP -s 140.0.0.0/8 --dport 111 -j ACCEPT
    3、為了防止可能的Dos攻擊,需要合理設定NFSD 的COPY數目。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>