记一次踩坑,系统扫漏洞发现有一些空密码用户,test,web,admin等,但经过查询并没有发现这些用户。用navicat远程连接的时候,填好库名,不填写用户名和密码,测试也可以连通(但不会能查询和操作)。
后来查询到,mongodb默认是连接test库,但是没有认证是无法执行命令行的。
因为mongodb默认情况下,连接和和操作是不需要授权验证的,而且连接和身份认证不同,即使设置了认证,依然可以连接到库,只是无法操作和查看任何数据。
身份认证也就是每次操作时的du.auth('username','password')的操作。
为了保证安全问题
所以mongodb要设置身份认证,
启动mongodb服务要带上-auth命令,要求操作需要认证,也可以在mongod.conf文件里修改,很多相关的博客讲过。
绑定可连接的ip,可以修改端口号防止有人尝试性连接。
修改mongod.conf里的设置ip bind_ip=localhost,172.XXX.XXX.XXX,如果可以让任何人可以连接就设置成0.0.0.0。
设置防火墙,不让公网访问或者限制ip访问。
本文记述了一次解决MongoDB安全问题的过程,发现系统存在空密码用户,通过使用Navicat进行远程连接测试,揭示了默认连接test数据库而未进行身份验证的情况。文章详细介绍了如何配置MongoDB的身份认证,包括修改配置文件、绑定IP、更改端口以及设置防火墙等措施。
1281

被折叠的 条评论
为什么被折叠?



