溫馨提示×

MongoDB在Ubuntu上如何安全配置

小樊
62
2025-04-05 20:53:46
欄目: 云計算

在Ubuntu上安全配置MongoDB涉及多個步驟,包括啟用認證、限制網絡訪問、加密數據傳輸、創建管理員賬戶等。以下是詳細的配置指南:

1. 啟用認證

在MongoDB配置文件 /etc/mongod.conf 中添加或修改以下內容以啟用認證:

security:
  authorization: enabled

然后重啟MongoDB服務:

sudo systemctl restart mongod

2. 限制網絡訪問

編輯MongoDB配置文件 /etc/mongod.conf,在 net 部分設置 bindIp 參數來限制允許連接的IP地址。例如,只允許本地連接:

net:
  bindIp: 127.0.0.1

或者允許特定的IP地址連接:

net:
  bindIp: 192.168.1.100

保存并關閉配置文件后,重啟MongoDB服務以使更改生效:

sudo systemctl restart mongod

3. 使用SSL/TLS加密通信

生成或獲取有效的SSL證書和私鑰文件,然后在 mongod.conf 配置文件中添加以下參數:

net:
  ssl:
    mode: requireSSL
    PEMKeyFile: /path/to/your/ssl.pem
    CAFile: /path/to/your/ca.pem
    sslAllowInvalidCertificates: false

重新啟動MongoDB服務使配置生效:

sudo systemctl restart mongod

4. 創建管理員用戶

切換到MongoDB shell:

mongo

切換到 admin 數據庫:

use admin

創建一個管理員用戶并授予其root角色:

db.createUser({
  user: "yourAdminUsername",
  pwd: "yourAdminPassword",
  roles: [ { role: "root", db: "admin" } ]
})

退出MongoDB shell:

exit()

5. 啟用防火墻

使用 iptablesufw 限制允許哪些實體連接MongoDB服務器。例如,只允許本地連接:

sudo iptables -A INPUT -p tcp --dport 27017 -s 127.0.0.1 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 27017 -j DROP

或者使用 ufw

sudo ufw allow 27017/tcp
sudo ufw disable

6. 定期備份數據

定期備份MongoDB的數據以確保備份數據的完整性和可恢復性??梢允褂?mongodump 命令進行備份:

mongodump --out /path/to/backup

7. 監控和日志

啟用審計日志記錄所有用戶的操作,定期審查和分析審計日志以檢測異常行為。在 mongod.conf 中配置審計日志:

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

8. 使用Kerberos(可選)

對于企業級應用,可以考慮使用Kerberos進行認證,以提供更高的安全性。

通過以上步驟,您可以顯著提高MongoDB在Ubuntu上的安全性。請根據您的具體需求和環境調整配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女