Linux防火墙端口问题
2019-11-06 本文已影响0人
惜小八
一.端口问题
参考:https://www.jb51.net/article/158877.htm
https://www.cnblogs.com/coding-one/p/11698271.html
在Linux服务器上启动tomcat后,在本机访问8080发现访问不了,重新启动tomcat:
如图所示表示启动成功
Centos服务器,本地和服务器ip互ping正常(本机ping服务器,服务器ping本地),但是服务器上部署好tomcat后,本机却无法通过浏览器访问服务器tomcat的8080端口.
猜测可能是Linux系统的8080端口未开放,或者端口开放了,但是防火墙屏蔽了这个端口。
1.在终端使用nc(netcat)来查看端口是否开放
1.在终端使用查看端口
nc -zvw3 192.168.1.8 8080
#192.168.1.8:要查看的主机的ip
#8080:要查看的端口
2.登陆以后
[root@myCentos /]# iptables -L -n | grep 22
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ctstate NEW
[root@myCentos /]# iptables -L -n | grep 23
[root@myCentos /]# iptables -L -n | grep 80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 ctstate NEW
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080 ctstate NEW
如图所示,8080端口手开放的,81端口是未开放的
二.查看防火墙是否屏蔽了端口
参考:https://blog.csdn.net/zll_0405/article/details/81208606
(https://www.cnblogs.com/myIvan/p/10164711.html)
1.查看防火墙是否开启
firewall-cmd --state
2.开端口命令:
firewall-cmd --add-port=80/tcp --permanent
3.重启防火墙:
systemctl restart firewalld.service
或者重新加载防火墙
firewall-cmd --reload
4.设置防火墙开机自启动
systemctl enable firewalld
命令含义:
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
1.防火墙常用操作
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 --query-port=80/tcp ##查询端口号80 是否开启:
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务,ssh/http/ftp等
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
firewall-cmd --remove-port=80/tcp --permanent ##永久移除80端口
firewall-cmd --zone=public --add-port=61001-62000/tcp --permanent . ##开放61001-62000之间的端口
firewall-cmd --list-ports ##查看已经开放的端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd ##查看帮助