firewalld & iptables
这一波我们学习的是火墙 火墙分两种 firewalld & iptables
首先是firewalld
那么我们把firewalld启起来
下面是火墙的基本操作 显示状态 查看默认域 查看活动域 以及列出当前所默认的域中的信息,策略等
改变默认域
永久添加信任源 所有的永久操作之后要加 --reload 才能生效
添加服务 所有的添加规则 服务 源 如果不加域参数 就是加到当前的默认域中 加了参数就是加到指定的域中
包括添加端口 同时端口后要加/服务 指定服务
这里是打开伪装 并添加一个转发的策略 将22端口上的tcp请求转发到150主机的端口上 效果就是我们使用ssh服务连接这台主机的时候 他实际会连接到150
主机上
效果如下 当我们正常连接151主机 成功以后 发现其实连接的是150主机
然后我们 关掉firewalld 打开iptables
讲道理 iptables 比firewalld要专业一些 定义 操作更加清晰 但是比较不适合新手使用
iptables -nL 查看 当前的三表五链路里的策略
-F 刷新策略 如果没有service iptables save 的话 临时写的策略都会失效
这里我已经写了 只允许250主机连接151主机的ssh 别的全都reject 所以这里150主机就被refuse了
250主机则是可以的
这里-D表示删除第几条策略 -I 则是插入到第几条策略 因为iptables有一个很重要的属性 它是从上往下读取的 所以先写的策略会覆盖掉后面策略的相同部分
比如你先写拒绝所有22端口的连接
再写允许250主机连接22端口 然后实际的效果是所有人都连不上 因为 他读到前一条 拒绝所有人 就不再读后面的允许250了
但是要是换一下顺序 先写允许250主机 再写拒绝所有人 那么允许250会覆盖掉拒绝所有人中的“拒绝250”这一条 所以效果就是其他人不行 而250可以
这个 -m state 表示 第一次使用时 通过认证 那么后面就会默认通过