time_out
有两种情况:
1、mongodb的配置文件中的bind_ip 默认为127.0.0.1,回环地址。此时,需要将bind_ip更改为0.0.0.0,表示接受任何IP的连接。
2、防火墙。
这里centos7有些细微差别
1.若是centos7以下版本;可以采取关闭防火墙,或者解除对27017端口限制。
2.centos7以上版本
更改防火墙设置
临时关闭防火墙systemctl stop firewalld.service
永久关闭防火墙systemctl disable firewalld.service开关机自启动设置
启动防火墙systemctl start firewalld.service
永久启动防火墙systemctl enable firewalld开关机自启动设置
防火墙是通过禁止外部机器访问达到保护系统安全的目的。
但不设置防火墙是不科学的,因此可以通过开启27017端口来实现远程访问MongoDB。
firewall-cmd --add-port=27017/tcp
firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd ##查看帮助
更多命令,使用 fire wall-cmd --help 查看帮助文件
开启80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
开启防火墙
systemctl start firewalld.service #启动防火墙
关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
重启防火墙
firewall-cmd --reload
查看防火墙状态
systemctl status firewalld.service
查看防火墙规则
iptables -L -n
1、直接关闭firewalld防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、安装 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
最后重启系统使设置生效。
引用:简书-不睡觉呀
csdn-Doflamingozzz
在此对两位表示感谢。