2018.8.23日,预习笔记,日常运维2

  1. firewalld和netfiler
  2. netfilter5表5链介绍
  3. iptables语法
  4. iptables filter语法
  5. iptables nat表应用
  6. 扩展:selinux教程 http://os.51cto.com/art/201209/355490.htm
    selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK
    iptables应用在一个网段 http://www.aminglinux.com/bbs/thread-177-1-1.html
    sant,dnat,masquerade http://www.aminglinux.com/bbs/thread-7255-1-1.html
    iptables限制syn速率 http://www.aminglinux.com/bbs/thread-985-1-1.html http://jamyy.us.to/blog/2006/03/206.html

 

一.firewalld和netfiler

0fe2c525aa1b24ce75f19bf951b8277074f.jpg

  • #setenforce 0 临时关闭selinux防火墙,重启后selinux会自动启动
  • #vi /etc/selinux/config 如下更改,永久关闭防火墙
  • 或者执行该命令:sed -i 's/^SELINUX=disabled/g'  /etc/selinux/config 也可以永久关闭selinux,同样的效果。

386e9f5e18285d4da3642381ee20329a1a4.jpg

  • #getenforce 查看防火墙是否打开

1227ff038de7f8ac46d74aa621d580c4f6a.jpg

0be06077064ba7fa6bc8fc111895c81cc8b.jpg

实验一:开启centos6的netfilter防火墙

  • #systemctl disable firewalld 关闭firewalld防火墙开机启动

20be67cc58d6bf05b8972ccbb98e9cc3f70.jpg

  • #systemctl stop firewalld 关闭firewalld防火墙

3e8f6c80e79fed9657cdea9d25c31ac742c.jpg

  • #yum install -y iptables-services 安装这个iptables命令包
  • #systemctl enable iptables && systemctl start iptables 设置开机自启动iptables服务,并打开centos6用的netfilter防火墙
  • #systemctl status iptables  查看iptables服务是否正常开启。

3be42ecb00ea2a010635d875b65e188df3f.jpg

  • #iptables -nvL 查看它的默认规则

6de698a7fc914c67053a66edf61123162de.jpg

  • centos6用netfilter防火墙,centos7用的是firewalld防火墙

 

二.netfilter5表5链介绍

1d16585c2887ae4c1ff2aa6161071ab092c.jpg

6547105214735202b5881d8f003a6bfcf3d.jpg

d0ef112967c10a00f90e7abd4f294d84acc.jpg

  • 参考文章:http://www.cnblogs.com/metoy/p/4320813.html

 

三.iptables语法

375d39c1f23c1136b84b2d0cbfcce142b60.jpg

  • #iptables 命令的一般格式为:iptables [-t table] 命令 [chain][rules][-j target]

9c11341c19d4166b288704a98e8ab2b1cb6.jpg

86c376de862cf812e2c196d3f33a7a511c0.jpg

5dc09c2e2c99dd9a05f0b3a79894e7a4b12.jpg

3b5bbfe4c8f28da02faf24f295c1973f07c.jpg

  • #iptables -nvL 查看iptables规则
  • #cat /etc/sysconfig/iptables 该文件存放着这个规则
  • #iptables -F 清空规则,不过只会清空当前iptables中设置的规则,文件里还是保存着原先的保存规则不会被清除。
  • #service iptables save 把当前规则保存到/etc/sysconfig/iptables文件里
  • #service iptables restart 重启iptables服务,会重新加载文件里保存的规则
  • #iptables -t filter -nvL

da68273da240c59d34036ff8256c71d5c47.jpg

  • #iptables -Z 可以把计数器清零
  • #iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP 写入新的规则,在最后一行,禁止该ip的数据传输
  • #iptables -I INPUT -p tcp --dport 80 -j DEOP 插入到第一行,不写ip直接写端口也是可以的,这是简写
  • #iptables -D INPUT -p tcp --dport 80 -j DEOP  删除该规则
  • #iptables -nvL --line-number 打印规则序列的编号
  • #iptables -D INPUT 7 删除第七条规则
  • #iptables -P OUTPUT DROP 

实验一:添加默认规则,只能访问22端口

a651735ea19d59f17e32a9803970abb9ab2.jpg

0b1378bd07197459af13de911781b85b0cb.jpg

557916ff597b16b838dcb3990d925b737bd.jpg

 

四.iptables filter表小案例

fdcbc2b2bcb9f7d4376c72cc294546d07eb.jpg

案例一:把80,22,21端口放行,但是22端口要指定端口,只有这个ip段的可以访问,其他全部拒绝。

  • #vim  /usr/local/sbin/iptables.sh ,添加下图内容

3299c8cf1db65caa114da8798c0c679352e.jpg

4d4239d76e9b6ec8b2a16e4e9e7b16fd186.jpg

  • #sh /usr/local/sbin/iptables.sh 执行一下该配置

案例二:ICMP示例,禁ping。

83e83dcede43ba1a050604443a58a92b69b.jpg

  • #iptables -I INPUT -p icmp --icmp-type 8 -j DEOP

让其他机器包括本机无法ping通,但是自己可以ping出去。

d6db846c0280eaa97a50300b24dd75f3a17.jpg

 

五.iptables nat表应用

ee7bc797ef6c41a9bccf761ebbc9cee05e8.jpg

afdd44b4d086af3d90381d70233306a66e5.jpg

3f7c27a01a5271dcbeb25fa260efd9e7d9f.jpg

  • 案例一:
  • A机器两块网卡,一块是外网,一块网卡是lan区段(内网),B机器添加一个网卡lan区段(内网)
  • A机器使用命令#ifconfig ens37 192.168.100.1/24给lan区段内网网卡设置临时ip,重启即失效
  • B机器使用命令#ifconfig ens37 192.168.100.100/24给lan区段内网网卡设置临时ip,重启即失效
  • 完成网卡ip设置后,满足AB机器内网可以相互ping通内网网卡ip地址
  • 检测不能ping通外网
  • 需求一:让B机器可以连接外网,就想当于一个小路由器的功能
  • 修改内核参数,开启内核转发
  • # cat /proc/sys/net/ipv4/ip_forward 查看一下该文件,如果是0的话,执行下条命令
  • #echo "1" >!$ 添加内容1,打开端口转发
  • 添加该规则:#iptables -t net -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE   定义一条规则,让这个ip可以上网,做一个欺骗
  • B机器设置一个网关,执行命令:#route add default gw 192.168.100.1
  • ping 一下A机器公网网卡ip地址,检测是否可以和公网通信
  • B机器设置一个DNS,执行命令:#nameserver 119.29.29.29 
  • ping一下公网119.29.29.29,可以ping通,则可以ping通外网www.baidu.com 了
  • 需求二:C机器只能和A机器通信,让C机器可以直接连通B机器的22端口,(端口映射)
  • A机器,执行命令:#echo “1” > /proc/sys/net/ipv4/ip_forward 打开端口转发,因为前面已经打开过了,现在不用再执行该命令
  • A机器,执行命令:#iptables -F 清空一下规则
  • A机器,添加规则:#iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22   把进去的包,做端口转发
  • A机器,添加规则:# iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130 把回来的包,做端口转发
  • B机器,#route add default gw 192.168.100.1 设定网关。因为前边已经设定过了,现在可以不用再执行该命令
  • 使用xshell远程登陆一下A机器的ip地址192.168.133.130,就可以远程连接到B机器上192.168.100.100
  • 并且B机器也可以和外网通信的

 

六.扩展:selinux教程

  • selinux教程 http://os.51cto.com/art/201209/355490.htm
  • selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK
  • iptables应用在一个网段 http://www.aminglinux.com/bbs/thread-177-1-1.html
  • sant,dnat,masquerade http://www.aminglinux.com/bbs/thread-7255-1-1.html
  • iptables限制syn速率 http://www.aminglinux.com/bbs/thread-985-1-1.html http://jamyy.us.to/blog/2006/03/206.html

 

转载于:https://my.oschina.net/u/3912766/blog/1933895

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值