目录
一、防火墙对指定ip地址开放端口
1、前提说明
在Linux中,常见的防火墙工具是:
iptables
(在旧的系统上)firewalld
(在较新的系统上,如Fedora, CentOS 7及更高版本, 和一些其他的发行版)。
下面以firewalld
这种工具进行说明如何对指定的IP地址开放端口。
2、使用firewalld
对于使用firewalld
的系统,你可以创建一个富规则来允许特定的IP地址访问特定的端口。
(1)确保firewalld
正在运行
# 查看防火墙状态
sudo systemctl status firewalld
# 如果它没有运行,启动它
sudo systemctl start firewalld
说明:sudo 表示以普通用户的身份执行一些只有root身份才能执行的命令
(2)输入如下命令,回车运行
# 运行指定ip访问(此ip为百度查询显示出来的ip)
sudo firewall-cmd --add-rich-rule 'rule family=ipv4 source address=XX.XX.XX.XX port port=3306 protocol=tcp accept'
3、补充
(1)如何查看ip
打开百度,输入“ip地址”,进行查询。
(2)其他的一些相关命令
//查看防火墙状态
sudo firewall-cmd --list-all
//查看已开放的端口
sudo firewall-cmd --list-ports
//查询指定端口是否开启
sudo firewall-cmd --zone=public --query-port=3306/tcp
//刷新防火墙
sudo firewall-cmd --reload
//开机启动防火墙
sudo systemctl enable firewalld
//开启防火墙
sudo systemctl start firewalld
//禁止防火墙开机启动
sudo systemctl disable firewalld
//停止防火墙
sudo systemctl stop firewalld
(3)直接对所有ip开放/关闭端口
// 开放指定端口(重启生效)
// (--permanent永久生效,没有此参数重启后失效)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
// 删除指定端口(重启生效)
sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
// 重启防火墙/重新加载firewalld配置以应用更改
sudo firewall-cmd --reload