安装nginx后一直无法从其他机器访问该机器的服务,telnet ip port查看后发现未开放80端口
[root@v10-1-241-4 sbin]# service iptable stop
Redirecting to /bin/systemctl stop iptable.service
Failed to stop iptable.service: Unit iptable.service not loaded.
iptables没有启动
firewalled也没启动,尝试手工执行开放80端口策略
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
端口开放成功,怀疑是在iptables未加载情况下手工修改了策略表导致
附:开放端口的方法
方法一:命令行方式
1. 开放端口命令: /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
2.保存:/etc/rc.d/init.d/iptables save
3.重启服务:/etc/init.d/iptables restart
4.查看端口是否开放:/sbin/iptables -L -n
方法二:直接编辑/etc/sysconfig/iptables文件
1.编辑/etc/sysconfig/iptables文件:vi /etc/sysconfig/iptables
加入内容并保存:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
2.重启服务:/etc/init.d/iptables restart
3.查看端口是否开放:/sbin/iptables -L -n
但是我用方法一一直保存不上,查阅网上发现直接修改文件不需要iptables save,重启下iptables 重新加载下配置。iptables save 是将当前的iptables写入到/etc/sysconfig/iptables。我不save直接restart也不行,所以还是方法二吧
查询端口是否有进程守护用如下命令grep对应端口,如80为端口号
例:netstat -nalp|grep 80