tcpwraps
- tcpwraps存在两个配置文件,使用简单,在指定ip登录SSH时比较好用。
1. /etc/hosts.allow
白名单:允许访问的用户名单
2./etc/hosts.deny
黑名单:禁止访问的用户名单
示例:
在不同的配置文件中写入,可达到允许与禁止的作用
sshd : 192.168.26.0/255.255.255.0
匹配规则:
如果俩个文件同时写入相同的访问用户,则优先匹配/etc/hosts.allow
firewalld
1.简述:
- Centos7默认的防火墙是 firewall,替代了以前的 iptables
- firewall使用更加方便、功能也更加强大一些
- firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。
2.安装
firewall使用前需要安装,当然也有些系统自带firewall,所以先判断是否已安装过。
[root@vms001 ~]# rpm -qa |grep firewall
firewall-config-0.3.9-11.el7.noarch
firewalld-0.3.9-11.el7.noarch
或者执行查看版本命令:
[root@vms001 ~]# firewall-cmd --version
0.3.9
若未安装,执行yum install -y firewalld
3.使用
3.1 使用图形化界面配置防火墙命令:
[root@vms001 桌面]# firewall-config &
image
3.2 使用命令行的命令
firewall-cmd
systemctl status firewalld # 查看状态
systemctl start firewalld # 启动
systemctl stop firewalld #关闭
systemctl enable firewalld # 开机启动
systemctl disable firewalld # 取消开机启动
3.3 常用操作命令:
常用的操作命令:
firewall-cmd --add-service=mysql # 开放mysql端口
firewall-cmd --remove-service=http # 阻止http端口
firewall-cmd --list-services # 查看开放的服务
firewall-cmd --add-port=3306/tcp # 开放通过tcp访问3306
firewall-cmd --remove-port=80tcp # 阻止通过tcp访问3306
firewall-cmd --add-port=233/udp # 开放通过udp访问233
firewall-cmd --list-ports # 查看开放的端口
4.防火墙的富规则
4.1 伪装IP=端口转发
firewall-cmd --query-masquerade # 检查是否允许伪装IP
firewall-cmd --add-masquerade # 允许防火墙伪装IP
firewall-cmd --remove-masquerade# 禁止防火墙伪装IP
**将80端口的流量转发至8080**
```python
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
**将80端口的流量转发至192.168.0.1的8080端口**
```python
firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080
可以使用man命令查看富规则中的模板
man firewalld.richlanguage
查找example
其中3和5为我们常用的修改协议与端口的书写模板
协议模板示例:
Example 3
Allow new IPv4 connections from address 192.168.0.0/24 for service tftp
and log 1 per minutes using syslog
rule family="ipv4" source address="192.168.0.0/24" service name="tftp" log prefix="tftp" level="info" limit value="1/m" accept
端口模板示例:
Example 5
Forward IPv6 port/packets receiving from 1:2:3:4:6:: on port 4011 with
protocol tcp to 1::2:3:4:7 on port 4012
rule family="ipv6" source address="1:2:3:4:6::" forward-port to-addr="1::2:3:4:7" to-port="4012" protocol="tcp" port="4011"
设置为永久生效:
firewall-cmd --add-rich-rule rule family=" " --permanent永久生效
网友评论