首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Windows 下 MySQL 安全權限硬化指南:NTFS 權限與服務帳號最小化

     編輯:MySQL 資料庫相關知識

本文說明如何在 Windows (NTFS) 環境下,透過建立專用低權限服務帳號、精細設定目錄 ACL、修改 my.ini,將 MySQL 服務攻擊面降至最低。操作前請確認完全理解 NTFS 權限變更後果。

1. 建立專用服務帳號

  • 帳號名:mysqlusr
  • 密碼:隨機生成,長度 ≥ 20 字元
  • 群組隸屬:僅加入 Guests 群組,移除所有其他群組(含 Users)

2. 目錄權限規劃 (假設路徑)

目錄用途mysqlusr 權限
D:\hosting\system\mysql程式執行檔讀取、執行、列出資料夾、讀取
D:\hosting\system\mysql\tmpdir暫存目錄修改、讀取、執行、列出資料夾、寫入
D:\hosting\MySQLDB資料庫檔案修改、讀取、執行、列出資料夾、寫入

3. 修改 MySQL 服務執行身分

  • 服務管理單元 → MySQL 服務 → 登入頁籤 → 選「此帳號」 → 輸入 mysqlusr 及密碼
  • 或使用 sc config mysql obj= ".\mysqlusr" password= "xxx"

4. 更新 my.ini 暫存目錄設定

[mysqld]
tmpdir=D:/hosting/system/MySQL/tmpdir

路徑使用正斜線或雙反斜線均可。

5. 驗證與後續維護

  • 重啟服務,確認 mysqld 以 mysqlusr 身分運行(任務管理員查看)。
  • 嘗試以 mysqlusr 登入系統,驗證無法存取非授權目錄。
  • 定期審核 ACL 是否被誤修改,密碼定期輪換。

遵循「最小權限原則」,即使 MySQL 進程被攻破,攻擊者也僅能存取 tmpdir 與資料目錄,無法橫向移動至系統核心區域。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved