ipconfig、selinux、netfilter、iptables、netfilter5表5链
企业开发
2018-05-08 23:00:00
阅读次数: 2
10.11 Linux网络相关
- ifconfig 查看网卡ip(yum install net-tools)
- ip add
- ifconfig -a 可以查看到所有的网卡信息
- ifup ens33/ifdown ens33
- ifdown ens33 && ifup ens33可以down掉网卡,再重启网卡
- 增加虚拟网卡
- cd /etc/sysconfig/network-scripts
- cp ifcfg-ens33 ifcfg-ens33/:0
- vi !$
- 修改NAME=ens33:0
- 修改DEVICE=ens33:0
- 修改Ip
- mii-tool ens33 查看网卡是否插着网线,查看是否link ok
- ethtool ens33 查看网卡是否连接网线,查看最后一段的link detected:yes
- hostnamectl set-hostname aminglinux-001修改主机名
- cat /etc/hostname 主机名的配置文件
- DNS配置文件在/etc/resolv.conf
- linux,windows都有的一个文件,访问自定义域名的时候访问的是这个文件/etc/hosts
10.12 firewalld和netfilter
- selinux临时关闭命令为:setenforce 0
- 永久关闭需要编辑配置文件,vim /etc/selinux/conifg 中的,SELINUX-disabled
- getenforce 查看selinux的状态
- 临时关闭后,遇到阻断时,不会真正的阻断,会通过
- CentOs7 之前防火墙叫netfilter;CentOs 7的防火墙叫firewalld;都支持iptables命令
- 开启CentOs 7之前的防火墙netfilter
- systemctl disable firewalld
- systemctl stop firewalld
- yum install -y iptables-services
- systemctl enable iptables
- systemctl start iptables
- iptables -nvL
- 防火墙叫netfilter,iptables只是netfilter的工具。
10.13 netfilter5表5链介绍
- netfilter的5个表centos6只有前4个表,没有security表 2. filter表用于过滤包,最常用的表,有INPUT、FORWARD、OUTPUT三个链 1. INPUT:数据包进本机的数据包,检查源IP,发现可疑IP可以禁掉 2. FORWARD:判断目标地址是否是本机,如果不是本机,需要经过FORWARD链,进行操作,进行转发 3. 本机的包,出去的包,经过OUTPUT链 3. nat表用于网络地址转换,有PREROUTING、OUTPUT、POSTROUTING三个链 1. PREROUTING:用来更改数据包,进来的一刻,需要更改 2. OUTPUT:出去的包那一刻需要更改 3. POSTROUTING: 4. managle表用于给数据包做标记,几乎用不到 5. raw表可以实现不追踪某些数据包,阿铭从来不用 6. security表在centos6中并没有,用于强制访问控制(MAC)的网络规则,阿铭没用过
- 参考文章:http://www.cnblogs.com/metoy/p/4320813.html
10.14 iptables语法
- linux防火墙 --netfilter
- 数据包流向与netfilter的5个练
- PREROUTING:数据包进入路由表之前
- INPUT:通过路由表后目的地为本机
- FORWARD:通过路由表后,目的地不为本机
- OUTPUT:由本机产生,向外发出
- POSTTOUTING:发送到网卡接口之前
- iptables相关的命令和用法
- iptables -nvL 默认规则
- 重启命令为:
# service iptables restart
# cat /etc/sysconfig/iptables
保存了默认规则
# iptables -F
临时清空规则,文件中依然保存这这些规则,如果想保存当前规则保存到配置文件中去,需要执行# service iptables save
如果未保存,重启后又会加载这些规则
# iptables -t filter -nvL
等同于# iptables -nvL
不加参数默认查看的是filter表规则
# iptables -t nat -nvL
查看nat表规则
# iptables -Z
将计数器清零。实例:监控脚本,封IP,如果一段时间内没有超过一个量,再将此IP解封。
- 增加规则:
# iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP
不加-t 默认为filter表;-A表示增加一条规则,INPUT链;-s来源,IP;-p指定协议,tcp等;--sport来源端口,端口值;-d目标IP,IP;-dport目标端口,端口值;-j操作,DROP扔掉,REJECT拒绝,DROP,看都不看直接扔掉,REJECT需要检查,再判断是否拒绝
- 插入规则:
# iptables -I INPUT -p tcp --dport 80 -j DROP
- -I插入规则会插入到链表的第一行,-A增加规则会增加到链表的最后一行
- 过滤的时候是从第一条规则开始过滤,所以优先过滤第一条规则
- 删除规则:
# iptables -D INPUT -p tcp --dport 80 -j DROP
-D删除规则
- 如果记得当时规则的命令可以直接-D,但是如果忘记了当时的命令可以通过以下方式删除:首先执行
# iptables -nvL --line-number
打印出来表的行数,再执行# iptables -D INPUT 行数
# iptables -I INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
可以针对网卡进行设置规则
# iptables -P OUTPUT DROP
修改表的默认规则,OUTPUT表的DROP谨慎使用,如果将OUTPUT表的默认规则修改为DROP,这样从服务器中的数据就不能发出去,通过xshell就不能接收到任何数据,就会立刻断开。
10.15 iptables filter表小案例
扩展(selinux了解即可)
- selinux教程 http://os.51cto.com/art/201209/355490.htm
- selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK
转载自my.oschina.net/u/3803446/blog/1809253