开放端口的方法:
方法一:命令行方式
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
查询端口是否有进程守护用如下命令grep对应端口,如80为端口号
例:netstat -nalp|grep 80
最近安装了CentOS7.3.1611之后,使用redis时,发现无法使用iptables控制Linux的端口,百度之后发现Centos 7.3使用firewalld代替了原来的iptables。下面这篇文章将给大家介绍如何在Centos 7.3中使用firewalld快速开发端口
CentOS 7 默认没有使用iptables,所以通过编辑iptables的配置文件来开启80端口是不可以的,
防火墙守护 firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。
CentOS 7 采用了 firewalld 防火墙
1.如何查询是否开启6379端口:
[root@localhost ~]# firewall-cmd --query-port=6379/tcp
no
注:no 表示端口没有开启。
2.开启6379端口:
[root@localhost ~]# firewall-cmd --add-port=6379/tcp
success
注:success 表示开启了6379端口。
我擦,今天我发现用上述方法,端口过一段时间就被禁用了,又发现一种永久开启端口的方式:
firewall-cmd --zone=public --add-port=17777/tcp --permanent
加完之后要更新
firewall-cmd --reload
这就是不系统学习带来的弊端啊,每次只学一个点,太散了,要以点带面的学习
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
3.配置firewalld-cmd