如何為NFS服務安全加固

2021-09-10 19:59:18 字數 1504 閱讀 9532

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

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 和 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 個方面 加固方案 為有效應對以上安全隱患,推薦您使用下述加固方案...