nfs(network file system)是 freebsd 支援的一種檔案系統,它允許網路中的計算機之間通過 tcp/ip 網路共享資源。不正確的配置和使用 nfs,會帶來安全問題。
概述
nfs 的不安全性,主要體現於以下 4 個方面:
配置共享目錄 /etc/exports
使用 anonuid,anongid 配置共享目錄,這樣可以使掛載到 nfs 伺服器的客戶機僅具有最小許可權。不要使用 no_root_squash。
使用網路訪問控制
使用 安全組策略 或 iptable 防火牆限制能夠連線到 nfs 伺服器的機器範圍。
賬號驗證
使用 kerberos v5 作為登入驗證系統,要求所有訪問人員使用賬號登入,提高安全性。
選擇傳輸協議
對於不同的網路情況,有針對地選擇 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 速度較快。
限制客戶機數量
修改 /etc/hosts.allow 和 /etc /hosts.deny 來限制客戶機數量。
/etc/hosts.allow改變預設的 nfs 埠portmap: 192.168.0.0/255.255.255.0 : allow
portmap: 140.116.44.125 : allow
/etc/hosts.deny
portmap: all : deny
nfs 預設使用的是 111 埠,使用 port 引數可以改變這個埠值。改變預設埠值能夠在一定程度上增強安全性。
配置 nosuid 和 noexec
suid (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 禁止直接執行其中的二進位制檔案。
phpMyadmin 服務安全加固
漏洞名稱 phpmyadmin 管理控制台弱口令。漏洞描述 phpmyadmin 是一款流行的資料庫管理系統,如果口令設定過於簡單,攻擊者可以登入到系統,對資料庫進行任意增 刪 改等高風險惡意操作,從而導致資料洩露或其他入侵事件發生,安全風險高。修復方案 根據通常的業務需求,資料庫管理後台主要方便地...
MySQL服務安全加固
本頁目錄 資料庫管理人員可以參考本文件進行 mysql 資料庫系統的安全配置加固,提高資料庫的安全性,確保資料庫服務穩定 安全 可靠地執行。您可以使用安騎士企業版自動檢測您的伺服器上是否存在 mysql 漏洞問題,或者您也可以自己排查您伺服器上的 mysql 服務是否存在安全問題。帳號安全 口令 檢...
Linux系統下對NFS服務安全加固的方法
nfs network file system 是 freebsd 支援的一種檔案系統,它允許網路中的計算機之間通過 tcp ip 網路共享資源。不正確的配置和使用 nfs,會帶來安全問題。概述 nfs 的不安全性,主要體現於以下 4 個方面 加固方案 為有效應對以上安全隱患,推薦您使用下述加固方案...