温馨提示×

Ubuntu MongoDB如何进行网络设置

小樊
51
2025-09-23 10:10:59
栏目: 云计算

Ubuntu MongoDB网络设置指南

1. 安装MongoDB(若未安装)

首先确保Ubuntu系统已安装MongoDB,可通过以下命令快速安装:

sudo apt update
sudo apt install -y mongodb

2. 修改配置文件调整网络绑定

MongoDB的网络配置集中在/etc/mongod.conf文件中,核心参数为net.bindIp(绑定IP地址)和net.port(监听端口)。

  • 打开配置文件
    sudo nano /etc/mongod.conf
    
  • 修改bindIp
    • 若允许所有IP连接(不推荐生产环境),设置为0.0.0.0
    • 若仅允许特定IP(如局域网IP192.168.1.100)或本地连接,设置为对应IP(多个IP用逗号分隔):
      net:
        bindIp: 192.168.1.100,127.0.0.1  # 允许特定IP和本地回环
        port: 27017                      # 默认端口,可按需修改
      
  • 保存并退出:按Ctrl+XYEnter确认。

3. 重启MongoDB服务使配置生效

sudo systemctl restart mongod

可通过sudo systemctl status mongod验证服务状态(显示active (running)即为正常)。

4. 配置防火墙允许MongoDB端口

若系统启用ufw防火墙,需放行MongoDB默认端口27017

  • 允许所有IP访问(不推荐):
    sudo ufw allow 27017
    
  • 仅允许特定IP访问(推荐):
    sudo ufw allow from 192.168.1.50 to any port 27017
    
  • 验证防火墙规则
    sudo ufw status numbered
    

5. 启用认证提升安全性(生产必做)

默认情况下,MongoDB未启用认证,需通过配置文件开启并创建管理员用户:

  • 修改配置文件:在/etc/mongod.confsecurity部分添加:
    security:
      authorization: enabled
    
  • 重启MongoDB服务
    sudo systemctl restart mongod
    
  • 创建管理员用户: 连接到MongoDB shell,切换至admin数据库并创建用户(示例密码为YourStrongPassword,请替换为复杂密码):
    mongo
    use admin
    db.createUser({
      user: "admin",
      pwd: "YourStrongPassword",
      roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
    })
    exit
    

6. 测试远程连接(可选)

从另一台机器使用mongo命令测试连接(替换SERVER_IP为MongoDB服务器IP):

mongo -h SERVER_IP -u admin -p YourStrongPassword --authenticationDatabase admin

若成功进入MongoDB shell,说明网络设置生效。

关键安全提醒

  • 避免过度开放:生产环境中严禁使用bindIp: 0.0.0.0,应仅允许信任的IP地址访问。
  • 强化认证:务必启用authorization并使用强密码,避免未授权访问。
  • 定期审计:通过MongoDB日志(/var/log/mongodb/mongod.log)监控连接行为,及时发现异常。

0