mariadb在Ubuntu上的安全策略主要包括以下幾個方面:
安裝和更新
基本安全配置
- 運行安全安裝腳本:使用mysql_secure_installation腳本進行安全配置,包括設置或更改root用戶的密碼、刪除匿名用戶賬戶、禁止root用戶遠程登錄、刪除測試數據庫、啟用二進制日志、限制訪問本地文件系統的權限。
- 修改配置文件:編輯mariadb的配置文件/etc/mysql/mariadb.conf.d/50-server.cnf,進行以下修改:
- 將bind-address從127.0.0.1注釋掉或修改為0.0.0.0,以允許遠程連接。
- 修改max_connections參數以增加最大連接數。
高級安全配置
- 啟用ssl連接:配置SSL證書以加密客戶端和服務器之間的通信。
- 配置防火墻:使用ufw防火墻工具,只允許必要的端口如ssh和http,并定期檢查防火墻設置。
- 限制用戶權限:創建新的數據庫和用戶,并賦予相應的權限,避免使用root賬戶進行日常操作。
系統安全加固
- 控制系統賬戶,除了root賬戶需要登錄以外,其他賬戶應設置為禁止登錄。
- 修改口令生存期,將口令生存期設置為最小,例如7天,以減少密碼被猜測的風險。
- 設置口令復雜度,確保新建用戶時輸入的口令復雜程度,至少包含一個數字、一個小寫字母、一個大寫字母、一個特殊字符。
- 限制登錄超時,限制用戶登錄成功后的等待時間,無操作則斷開連接,防止暴力破解。
- 修改SSH遠程端口,修改SSH默認端口,以減少被自動掃描的風險。
- 禁用root登錄,通過編輯/etc/ssh/sshd_config文件,將PermitRootLogin設置為no,禁止直接通過SSH登錄root賬戶。
- 啟用公鑰登錄,確保PubkeyAuthentication設置為yes,使用密鑰對進行身份驗證,提高安全性。
- 配置防火墻,使用ufw防火墻工具,只允許必要的端口如SSH和HTTP,并定期檢查防火墻設置。
- 安裝并配置Fail2Ban,防止暴力破解攻擊。
定期審計和監控
- 通過檢查系統日志、服務狀態和安全工具,及時發現并解決潛在的安全問題。
請注意,安全性是一個持續的過程,需要不斷地監控和更新。