Linux云计算学习笔记day52

6.4.2 准许或禁止端口

多个端口:表示范围 1-1024范围

[root@m01 ~]# iptables -nL

Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp
dpts:!1:1024
DROP tcp -- !10.0.0.0/24 0.0.0.0/0
Chain FORWARD (policy ACCEPT)

nc用法:
nc -l 指定监听端口
nc/telnet 连接
nc 服务端:

[root@m01 ~]# nc -l 99   >/tmp/new.txt
[root@m01 ~]# cat /tmp/new.txt
127.0.0.1   localhost localhost.localdomain localhost4
localhost4.localdomain4
::1         localhost localhost.localdomain localhost6
localhost6.localdomain6
172.16.1.5               lb01
172.16.1.6               lb02
172.16.1.7               web01
172.16.1.8               web02
172.16.1.31             nfs01
172.16.1.41             backup
172.16.1.51             db01 db01.etiantian.org
172.16.1.61             m01

nc客户端

[root@m01 ~]# cat  /etc/hostname    |nc   10.0.0.61 99

多个端口 不连续 80,433,52113,22

[root@m01 ~]# iptables -I INPUT -p tcp -m multiport ! --dport 80,443,22   -
j DROP
[root@m01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source                               destination
DROP       tcp  --  0.0.0.0/0                           0.0.0.0/0            multiport
dports  !80,443,22                                  
DROP       tcp  -- !10.0.0.0/24                       0.0.0.0/0
Chain FORWARD (policy ACCEPT)               
target     prot opt source                               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source                               destination

6.4.3 准许或禁止ping

[root@m01 ~]# ping 10.0.0.61
PING 10.0.0.61 (10.0.0.61) 56(84) bytes of data.
64 bytes from 10.0.0.61: icmp_seq=1 ttl=64 time=0.033 ms
64 bytes from 10.0.0.61: icmp_seq=2 ttl=64 time=0.062 ms
^C
--- 10.0.0.61 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.033/0.047/0.062/0.016 ms
[root@m01 ~]# ping 172.16.1.61
PING 172.16.1.61 (172.16.1.61) 56(84) bytes of data.
64 bytes from 172.16.1.61: icmp_seq=1 ttl=64 time=0.037 ms
^C
--- 172.16.1.61 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.037/0.037/0.037/0.000 ms
[root@m01 ~]# iptables -I INPUT  -p icmp   --icmp-type any   -j   DROP
[root@m01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source                                destination
DROP       icmp --  0.0.0.0/0                          0.0.0.0/0  icmptype 255
Chain FORWARD (policy ACCEPT)
target     prot opt source                               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source                               
[root@m01 ~]# ping 172.16.1.61
PING 172.16.1.61 (172.16.1.61) 56(84) bytes of data.
--- 172.16.1.61 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 1999ms
[root@m01 ~]# ping 10.0.0.61
PING 10.0.0.61 (10.0.0.61) 56(84) bytes of data.
--- 10.0.0.61 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms
[root@m01 ~]# ping 127.0.0.1
[root@m01 ~]# ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
--- 127.0.0.1 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 999ms

禁止后检测是否通畅:
可以使用
telnet
nc
nmap 进行检查

6.4.3 连接状态

NEW:已经或将启动新的连接
ESTABLISHED:已建立的连接
RELATED:正在启动的新连接
INVALID:非法或无法识别的

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

6.4.4 匹配网络限制策略(限制并发 访问的频率)

-m limit
-m limit --limit n/{second/minute/hour}:

解释:指定时间内的请求速率”n”为速率,后面为时间分别为:秒 分 时 --limit-burst [n]
解释:在同一时间内允许通过的请求”n”为数字,不指定默认为5

iptables -I INPUT -s 10.0.1.0/24 -p icmp --icmp-type 8 -m limit --limit 6/min
--limit-burst 5 -j ACCEPT

6.4.6 保存规则

Linux云计算学习笔记day52_第1张图片
image.png
Linux云计算学习笔记day52_第2张图片
image.png
Linux云计算学习笔记day52_第3张图片
image.png

7. 生产环境防火墙配置

1.逛公园: 防火墙默认的规则 默认规则都是准许 ACCEPT
2.电影院:默认规则是 拒绝DROP 凭票进入

7.1 配置允许SSH登陆端口进入

[root@m01 ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT>

7.2 允许本机回环lo接口数据流量流出与流入

1.iptables -A INPUT -i lo -j ACCEPT
2.iptables -A OUTPUT -o lo -j ACCEPT
-i input 与 INPUT链一起使用
-o output 与 OUTPUT 链一起使用

7.3 准许icmp协议通过

[root@m01 ~]# iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT

7.4 准许用户使用的端口通过 80,443

1.iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2.iptables -A INPUT -p tcp --dport 443 -j ACCEPT

7.5 允许用户与服务器建立连接

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

7.6 开启信任的IP网段**

1.iptables -A INPUT -s 10.0.0.0/24 -p all -j ACCEPT
2.iptables -A INPUT -s 172.16.1.0/24 -p all -j ACCEPT

7.7 修改默认规则

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

8. NAT表

Linux云计算学习笔记day52_第4张图片
image.png

8.1 PREROUTING

Linux云计算学习笔记day52_第5张图片
image.png

8.2 POSTROUTING

Linux云计算学习笔记day52_第6张图片
![image.png](https://upload-images.jianshu.io/upload_images/16955047-2fe82bd9f8f740db.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
Linux云计算学习笔记day52_第7张图片
image.png
Linux云计算学习笔记day52_第8张图片
image.png

9.防火墙小结

防火墙4表5链
filter表 INPUT链 实现防火墙功能
nat 表 PREROUTING实现 端口转发
nat 表 POSTROUTING链实现 共享上网

2.负载均衡 VS 反向代理区别

2.1 功能(原理)

负载均衡 lvs 请求做转发
反向代理 Nginx Haproxy 代替(代理)用户去请求,得到响应再返回给用户

Linux云计算学习笔记day52_第9张图片
image.png

2.2 4层vs7层

Linux云计算学习笔记day52_第10张图片
image.png

4层 LVS nginx(1.9) haproxy
7层 nginx haproxy

3.ARP协议

3.1 arp基础知识

DNS 域名---->ip地址 域名解析服务/系统 Domain Name Service/System
ARP ip--------->MAC地址 地址解析协议 Address Resolution Protocol

3.2 arp解析过程

  1. 发出广播消息 查询ip对应的mac地址
  2. 对应的机器会用单播的方式把自己的mac告诉对方
  3. 用户自己留1个arp缓存

3.3 arp解析过程-抓包

Linux云计算学习笔记day52_第11张图片
image.png

Linux云计算学习笔记day52_第12张图片
image.png
Linux云计算学习笔记day52_第13张图片
image.png

你可能感兴趣的:(Linux云计算学习笔记day52)