Linux防火墙操作命令,开放或关闭端口
发布网友
发布时间:2024-09-17 03:01
我来回答
共1个回答
热心网友
时间:2024-11-23 14:59
在外部访问 CentOS 中部署应用时,需要通过防火墙管理软件进行端口管理。以下是 CentOS 防火墙(firewalld)的常用命令和操作指南:
启动防火墙:systemctl start firewalld
查看防火墙状态:systemctl status firewalld
禁用防火墙,禁止开机启动:systemctl disable firewalld
停止防火墙运行:systemctl stop firewalld
使用 firewall-cmd 命令配置防火墙:
开放端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
查看已开放的端口:firewall-cmd --zone=public --list-ports
关闭端口:firewall-cmd --zone=public --remove-port=80/tcp --permanent
批量开放端口:firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
批量关闭端口:firewall-cmd --zone=public --remove-port=40000-45000/tcp --permanent
更新防火墙设置:firewall-cmd --reload
CentOS7 防火墙操作命令:
安装防火墙:yum install firewalld
配置 firewall-cmd:
查看版本:firewall-cmd --version
查看帮助:firewall-cmd --help
显示状态:firewall-cmd --state
更新防火墙规则:firewall-cmd --reload
查看已激活的 Zone 信息:firewall-cmd --get-active-zones
信任级别和 Zone 的值指定:
drop: 丢弃所有进入的包,而不给出任何响应
block: 拒绝所有外部发起的连接,允许内部发起的连接
public: 允许指定的进入连接
external: 允许受*的进入连接
dmz: 允许受*的进入连接
work: 允许受信任的计算机被*的进入连接
home: 允许受信任的计算机被*的进入连接
internal: 允许受信任的计算机被*的进入连接
trusted: 信任所有连接
开启和关闭端口:
添加端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
重新载入:firewall-cmd --reload
查看端口状态:firewall-cmd --zone=public --query-port=80/tcp
删除端口:firewall-cmd --zone=public --remove-port=80/tcp --permanent
管理服务:添加到 work zone
添加服务:firewall-cmd --zone=work --add-service=smtp
查看服务:firewall-cmd --zone=work --query-service=smtp
删除服务:firewall-cmd --zone=work --remove-service=smtp
配置 IP 地址伪装:
查看伪装状态:firewall-cmd --zone=external --query-masquerade
打开伪装:firewall-cmd --zone=external --add-masquerade
关闭伪装:firewall-cmd --zone=external --remove-masquerade
端口转发:
打开端口转发:firewall-cmd --zone=external --add-masquerade
转发 tcp 22 端口至 3753:firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=3753
转发端口数据至另一个 IP 的相同端口:firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toaddr=192.168.1.112
转发端口数据至另一个 IP 的 3753 端口:firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=3753:toaddr=192.168.1.112
使用 systemctl 管理服务:
启动服务: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