Centos7的firewalld配置
2024-08-27 18:37:01
红帽官方的使用文档:
常用命令
# 查看版本
[root@osboxes java]# firewall-cmd --version
0.3.
# 查看状态
[root@osboxes java]# systemctl status firewalld.service
OR
[root@osboxes java]# firewall-cmd --state
running
# 获取启用的zone
[root@osboxes java]# firewall-cmd --get-active-zones
public
interfaces: eno16777984
修改网卡的zone
firewall-cmd --permanent --zone=external --change-interface=eth0
firewall-cmd --permanent --zone=internal --change-interface=eth1
查看指定zone中开放的端口和服务
[root@osboxes java]# firewall-cmd --zone=public --list-all
public (default, active)
interfaces: eno16777984
sources:
services: dhcpv6-client mdns ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
查看系统中可用的服务
# 列出已配置好可用的服务, 位于 /usr/lib/firewalld/services/ 下
[root@osboxes java]# firewall-cmd --get-services
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https # 强制列出包含用户设置在/etc/firewalld/services/, 但尚未loaded的服务
[root@osboxes java]# firewall-cmd --get-services --permanent
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https
对指定的zone添加端口
# 不要忘记 --permanent
[root@osboxes java]# firewall-cmd --zone=public --add-port=/tcp --permanent
# OR 添加一个地址段
[root@osboxes java]# firewall-cmd --zone=public --add-port=5060-5061/udp --permanent
success
# 需要reload后才启用, 热加载
[root@osboxes java]# firewall-cmd --reload
# OR 冷加载
[root@osboxes java]# firewall-cmd --complete-reload
success
# 能看到新端口已经添加
[root@osboxes java]# firewall-cmd --zone=public --list-all
public (default, active)
interfaces: eno16777984
sources:
services: dhcpv6-client mdns ssh
ports: /tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
# 删除一个端口
firewall-cmd --permanent --zone=public --remove-port=8080/tcp
firewall-cmd --permanent --zone=public --remove-port=8080/udp
添加服务(默认端口)
firewall-cmd --zone=public --add-service=ftp --permanent
添加NAT
首先要加上ip forward
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
打开IP伪装
firewall-cmd --zone=external --add-masquerade --permanent
.内网其他机器, 要把网关配置为当前服务器
#设置网关
route add default gw 192.168.100.1 #或修改/etc/sysconf/network/network-scripts/ifcfg-网卡名
.
添加端口转发
首先要打开IP伪装
firewall-cmd --zone=external --query-masquerade # 检查是否允许伪装IP
firewall-cmd --zone=external --add-masquerade # 允许防火墙伪装IP, 记得加上 --permanent
firewall-cmd --zone=external --remove-masquerade# 禁止防火墙伪装IP
配置端口转发, 转本机端口, 转他机端口. 未填toaddr则默认本机, 未填toport则使用相同端口
# 将80端口的流量转发至8080
firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080
# 将80端口的流量转发至
firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.0.1
# 将80端口的流量转发至192.168.0.1的8080端口
firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080
.
最新文章
- python 数据类型 ---文件一
- 学C#之设计模式系列笔记(2)观察者模式
- ThinkPHP中疑难笔记
- CSS3:clip-path
- MyEclipse10优化
- Android开发-Hello World+phonegap(Cordova)
- iPhone开发 Swift - NSNotification 通知
- C# 中 static 的用法
- delphi xe5 android 开发数据访问手机端 解决乱码的办法
- QTexstStream的操作对象是QIODevice(因此QFile,QBuffer,QProcess,QTcpSocket都可以使用),或者QString
- 监控系统Opserver
- Java经典案例之-判断质数(素数)
- javascript数据类型的判断
- default activity not found的问题
- jquery-仿flash的一个导航栏特效
- ZeroMQ API(四) 套接字
- Eclipse的vim插件viPlugin的安装
- ArcGIS for JavaScript 关于路径开发的一些记录(三)
- bzoj 1927 网络流
- Linux环境下通过ODBC访问MSSql Server
热门文章
- 【Java学习系列】第1课--Java环境搭建和demo运行
- sqlserver性能调优第一步
- Java线程
- arcgis10.2.2地图服务切图具体步骤
- SuperMap iServer Ubuntu 开机自启动脚本
- 你的USB设备还安全吗?USB的安全性已从根本上被打破!
- UIView的几个layout方法
- 如何在 ASP.NET 4.6 与 IIS10 中运用 HTTP/2 ?
- Oracle逻辑结构(TableSpace→Segment→Extent→Block)
- delete语句跑了3个小时分析以及关于并行的一些知识