在CentOS上對MySQL進行安全加固是一個重要的步驟,以確保數據庫的安全性和穩定性。以下是一些常見的安全加固措施:
sudo sed -i 's/^port = 3306/port = 3307/' /etc/my.cnf
bind-address
為127.0.0.1
,并確保root用戶只能本地登錄。sudo sed -i 's/^bind-address = 127.0.0.1/bind-address = 127.0.0.1/' /etc/my.cnf
sudo sed -i 's/^skip-networking/skip-networking/' /etc/my.cnf
DELETE FROM mysql.user WHERE User='';
FLUSH PRIVILEGES;
RENAME USER 'root'@'localhost' TO 'new_root'@'localhost';
FLUSH PRIVILEGES;
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
ALTER USER 'admin'@'localhost' IDENTIFIED BY 'StrongPassword!';
FLUSH PRIVILEGES;
SET GLOBAL validate_password.policy = MEDIUM;
SET GLOBAL validate_password.length = 8;
sudo yum install mysql-audit-plugin
sudo systemctl enable mysql-audit
sudo systemctl start mysql-audit
sudo sed -i 's/^log_error = /log_error = \/var\/log\/mysql\/error.log/' /etc/my.cnf
sudo sed -i 's/^general_log = /general_log = 1/' /etc/my.cnf
sudo sed -i 's/^general_log_file = /general_log_file = \/var\/log\/mysql\/general.log/' /etc/my.cnf
sudo firewall-cmd --permanent --zone=public --add-port=3307/tcp
sudo firewall-cmd --reload
mysqldump
或其他備份工具定期備份數據庫。mysqldump -u root -p --all-databases > /backup/all_databases.sql
sudo yum update mysql-server
通過以上步驟,可以顯著提高CentOS上MySQL的安全性。請根據實際情況調整配置,并定期檢查和更新安全設置。