就业第七周作业

1、解决DOS攻击生产案例:根据web日志或者或者网络连接数,监控当某个IP 并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频 率每隔5分钟。防火墙命令为:iptables -A INPUT -s IP -j REJECT

[root@Rocky8-mini test]# cat deny_hosts.sh 
#!/bin/bash

Link=100
Dir=~/nginx.access.log

awk '{print$1}' $Dir | sort | uniq -c | while read Link_Nums IPAddr;do
  if [ $Link_Nums -ge $Link ]; then
    iptables -A INPUT -s $IPAddr -j REJECT
    echo "$Link_Nums  $IPAddr" >> /tmp/reject.txt
  fi
done
[root@Rocky8-mini test]# !cat
cat /tmp/reject.txt
100  113.140.48.156
2161  117.157.173.214
100  1.177.191.161
100  118.121.41.14
100  120.195.144.116
100  122.139.5.237
5498  122.51.38.20
953  211.159.177.120
100  218.201.62.71
100  222.218.17.189
219  58.87.87.99

2、描述密钥交换的过程

假设 A B 双方进行密钥交换
(1)首先A、B双方协商生成两个公开的整数 g 和 p(大素数)
(2)A 和 B 生成隐私数据 a 和 b,两个隐私数据都小于 p。A 通过 g^a%p 此公式的运算结果,发送给B;B 通过 g^b%p 此公式的运算结果,发送给A
(3)A [(g^b %p)^a]%p 和 B [(g^a %p)^b]%p 通过计算得到结果;从而得到相同的密钥

+-------------- A B -------------+
[root@centos7 ~]# g=32
[root@centos7 ~]# p=11
+-------------- A ---------------+
[root@centos7 ~]# a=5                A 的隐私数据
[root@centos7 ~]# echo 32^5%11 | bc        # 计算公式 g^a%p
10
+--------------- B ---------------+
[root@centos7 ~]# b=8                B 的隐私数据
[root@centos7 ~]# echo 32^8%11 | bc        # 计算公式 g^b%p
1
+-------------- A ----------------+
[root@centos7 ~]# echo 1^5%11 | bc            # A 通过 B 上次传来的结果进行运算     [(g^b%p)^a]%p       
1
+--------------- B ---------------+
[root@centos7 ~]# echo 10^8%11 | bc           # B 通过 A 上次传来的结果进行运算     [(g^a%p)^b]%p
1

3、https的通信过程

(1)Client向Server发送HTTPS的连接请求
(2)Server端收到连接请求后,会向Client端回应Respond报文,报文中包含了服务器的证书(Server端的公钥信息,证书的相关信息)
(3)Client收到该证书后,会对该证书进行验证,如果有问题则提示证书存在问题的警告框。如果没有问题,那么就生成一个随机值,并用证书中的公钥对其进行加密,然后发送给Server端
(4)Server端收到这个加密后的随机值,用自己的私钥进行解密,之后Client端和Server端的通信依靠该随机值进行加密和解密。该对随机值类似于对称加密的密钥,此过程也就是安全的传送对称密钥。
(5)Client端和Server端数据的传输,用该随机值进行加密和解密,完成数据的交互。

4、使用awk以冒号分隔获取/etc/passwd文件第一列

[root@centos7 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
www:x:1002:1002::/home/www:/bin/bash
[root@centos7 ~]# awk -F: '{print$1}' /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
systemd-network
dbus
polkitd
sshd
postfix
www
posted @   wuhaolam  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示