首頁 > 運維 > linux運維 > linux NFS服務安全加固實例分享

linux NFS服務安全加固實例分享

小云云
發布: 2018-02-24 10:14:34
原創
1630 人瀏覽過

NFS(Network File System)是 FreeBSD 支援的一種檔案系統,它允許網路中的電腦之間透過 TCP/IP 網路共用資源。不正確的配置和使用 NFS,會帶來安全性問題。

概述

NFS 的不安全性,主要體現在以下4 個面向:

  • 缺少存取控制機制

  • 沒有真正的使用者驗證機制,只針對RPC/Mount 請求進行過程驗證

  • #較早版本的NFS 可以使未授權使用者獲得有效的檔案句柄

  • 在RPC 遠端呼叫, SUID 程式具有超級使用者權限

加固方案

為有效應對以上安全隱患,推薦您使用下述加固方案。

設定共用目錄(/etc/exports)

使用 anonuid,anongid 設定共用目錄,這樣可以讓掛載到 NFS 伺服器的客戶機僅具有最小權限。不要使用 no_root_squash。

使用網路存取控制

使用 安全群組原則 或 iptable 防火牆限制能夠連線到 NFS 伺服器的機器範圍。


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
登入後複製

帳號驗證
使用 Kerberos V5 作為登入驗證系統,要求所有訪客使用帳號登錄,提高安全性。

設定NFSD 的COPY 數目

在Linux 中,NFSD 的COPY 數目定義在啟動檔案 /etc/rc.d/init.d/nfs 中,預設值為8。

最佳的 COPY 數目一般取決於可能的客戶機數目。您可以透過測試來找到 COPY 數目的近似最佳值,並手動設定此參數。

選擇傳輸協定

對於不同的網路情況,有針對地選擇 UDP 或 TCP 傳輸協定。傳輸協定可以自動選擇,也可以手動設定。

mount -t nfs -o sync,tcp,noatime,rsize=1024,wsize=1024 EXPORT_MACHINE:/EXPORTED_DIR /DIR

UDP 協定傳輸速度快,非連接傳輸時便捷,但其傳輸穩定性不如TCP,當網路不穩定或駭客入侵時容易使NFS 效能大幅降低,甚至導致網路癱瘓。一般情況下,使用 TCP 的 NFS 較為穩定,使用 UDP 的 NFS 速度較快。

  • 在機器較少,網路狀況較好的情況下,使用 UDP 協定能帶來較好的效能。

  • 當機器較多,網路情況複雜時,建議使用 TCP 協定(V2 只支援 UDP 協定)。

  • 在區域網路中使用 UDP 協定較好,因為區域網路有較穩定的網路保證,使用 UDP 可以帶來更好的效能。

  • 在廣域網路中推薦使用 TCP 協議,TCP 協定能讓 NFS 在複雜的網路環境中保持最佳的傳輸穩定性。

限制客戶機數量

修改/etc/hosts.allow /etc /hosts. deny 來限制客戶機數量。

/etc/hosts.allow
portmap: 192.168.0.0/255.255.255.0 : allow
portmap: 140.116.44.125 : allow
/etc/hosts.deny# #portmap: ALL : deny

改變預設的NFS 端口NFS 預設使用的是111 端口,使用port 參數可以改變這個端口值。改變預設連接埠值能夠在一定程度上增強安全性。

設定 nosuid 和 noexecSUID (Set User ID) 或 SGID (Set Group ID) 程式可以讓一般使用者以超過自己權限來執行。很多 SUID/SGID 可執行程式是必須的,但也可能被一些惡意的本機使用者利用,取得本不該有的權限。

盡量減少擁有者是 root,或是在 root 群組中卻擁有 SUID/SGID 屬性的檔案。您可以刪除這樣的檔案或更改其屬性,如:

使用nosuid 選項禁止set-UID 程式在NFS 伺服器上執行,可以在

/etc/exports 加入一行:

/www www.abc.com(rw, root_squash, nosuid)

使用noexec 禁止直接執行其中的二進位檔案。

相關推薦:

什麼是NFS?分享在CentOS7上實作NFS共享

Linux中ftp、nfs、ssh伺服器建置

##NFS服務簡介及使用方法

以上是linux NFS服務安全加固實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板