【轉】mysql安全基線設置


一、禁用local-infile選項 | 訪問控制

禁用local_infile選項會降低攻擊者通過SQL注入漏洞器讀取敏感文件的能力

編輯Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置local-infile參數為0,並重啟mysql服務: 
``` 
local-infile=0
 ```

二、刪除'test'數據庫 | 服務配置

測試數據庫可供所有用戶訪問,並可用於消耗系統資源。刪除測試數據庫將減少mysql服務器的攻擊面。

登陸數據庫執行以下SQL語句刪除test數據庫:
```
DROP DATABASE test;
flush privileges;
```

三、確保沒有用戶配置了通配符主機名 | 身份鑒別

避免在主機名中只使用通配符,有助於限定可以連接數據庫的客戶端,否則服務就開放到了公網

復制代碼
執行SQL更新語句,為每個用戶指定允許連接的host范圍。
1.  登錄數據庫,執行`use mysql;` ;
2.  執行語句`select user,Host from user where Host='%';`查看HOST為通配符的用戶;
3.  刪除用戶或者修改用戶host字段,刪除語句:`DROP USER 'user_name'@'%';` 。更新語句:`update user set host = <new_host> where host = '%';`。
4.  執行SQL語句:
```
OPTIMIZE TABLE user;
flush privileges;
```
復制代碼

 

四、禁用symbolic-links選項 | 服務配置

禁用符號鏈接以防止各種安全風險

編輯Mysql配置文件/etc/my.cnf,在[mysqld] 段落中配置`symbolic-links=0`,5.6及以上版本應該配置為`skip_symbolic_links=yes`,並重啟mysql服務。

 

五、修改默認3306端口 | 服務配置

避免使用熟知的端口,降低被初級掃描的風險

編輯/etc/my.cnf文件,[mysqld] 段落中配置新的端口參數,並重啟mysql服務:
```
port=3506 
```

 

六、為Mysql服務使用專用的最低特權帳戶 | 訪問控制

使用最低權限帳戶運行服務可減小MySQL天生漏洞的影響。受限帳戶將無法訪問與MySQL無關的資源,例如操作系統配置。

使用非root和非sudo權限用戶啟動Mysql服務

 

七、禁止使用--skip-grant-tables選項啟動Mysql服務 | 訪問控制

使用此選項,會導致所有客戶端都對所有數據庫具有不受限制的訪問權限。

編輯Mysql配置文件/etc/my.cnf,刪除skip-grant-tables參數,並重啟mysql服務

 

八、確保配置了log-error選項 | 安全審計

啟用錯誤日志可以提高檢測針對mysql和其他關鍵消息的惡意嘗試的能力,例如,如果錯誤日志未啟用,則連接錯誤可能會被忽略。

編輯Mysql配置文件/etc/my.cnf,在[mysqld_safe] 段落中配置log-error參數,<log_path>代表存放日志文件路徑,如:/var/log/mysqld.log,並重啟mysql服務: 
```
log-error=<log_path>
```

九、確保log-raw選項沒有配置為ON | 安全審計

當log-raw記錄啟用時,有權訪問日志文件的人可能會看到純文本密碼。

編輯Mysql配置文件/etc/my.cnf,刪除log-raw參數,並重啟mysql服務

十、確保MYSQL_PWD環境變量未設置 | 身份鑒別

mysql_pwd環境變量的使用意味着mysql憑證的明文存儲,極大增加mysql憑據泄露風險。

刪除系統環境變量中Mysql密碼(MYSQL_PWD)配置

十一、匿名登陸檢查 | 身份鑒別

檢查Mysql服務是否允許匿名登陸

登陸Mysql數據庫,執行以下命令刪除匿名帳戶:
```
 delete from user where user='';
flush privileges;
```

作者:涼生墨客 本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
https://www.cnblogs.com/heruiguo/p/12103405.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM