MongoDB在Linux上的网络配置主要涉及修改配置文件、设置防火墙及启用认证,步骤如下:
-
修改配置文件
找到配置文件/etc/mongod.conf,编辑net部分:- 允许所有IP连接:设置
bindIp: 0.0.0.0。 - 允许特定IP连接:设置为具体IP(如
192.168.1.100)或IP列表,用逗号分隔。 - 修改端口(可选):默认
27017,可自定义(需与防火墙一致)。
- 允许所有IP连接:设置
-
重启MongoDB服务
sudo systemctl restart mongod # Systemd系统 # 或 sudo service mongod restart # SysVinit系统 -
配置防火墙
- UFW(推荐):
sudo ufw allow 27017/tcp # 允许端口流量 sudo ufw reload # 重新加载规则 - Iptables:
sudo iptables -A INPUT -p tcp --dport 27017 -j ACCEPT sudo service iptables save # 保存规则(部分系统需执行)
- UFW(推荐):
-
启用身份验证(推荐)
- 创建管理员用户:
mongo use admin db.createUser({ user: "admin", pwd: "your_password", roles: ["root"] }) - 修改配置文件启用认证:
security: authorization: enabled - 重启服务生效:
sudo systemctl restart mongod
- 创建管理员用户:
-
验证配置
- 检查监听状态:
sudo netstat -tuln | grep 27017 # 查看端口监听情况 - 远程连接测试:
mongo -u admin -p your_password --authenticationDatabase admin --host <服务器IP> --port 27017
- 检查监听状态:
安全建议:
- 避免将
bindIp设为0.0.0.0,优先限制为特定IP。 - 定期更新MongoDB版本,修复安全漏洞。
- 使用SSL/TLS加密连接(生产环境必选)。
参考来源: