魏蓝

以梦为马

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

第七周作业

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

#!/bin/bash
NUM=100
while true; do
  ss -nt |grep -e ^[^State] | awk -F"[ :]+" '{print $4}' | sort | uniq -c | while read COUNT IP; do
    if [[ $COUNT -gt $NUM ]]; then
      iptables -A INPUT -s $IP -j REJECT
    fi
  done
done

2、描述密钥交换的过程

  1. 客户端先连上服务端
  2. 服务端生成一个随机数 s 作为自己的私钥,然后根据算法参数计算出公钥 S(算法参数通常是固定的)
  3. 服务端使用某种签名算法把“算法参数(模数p,基数g)和服务端公钥S”作为一个整体进行签名
  4. 服务端把“算法参数(模数p,基数g)、服务端公钥S、签名”发送给客户端
  5. 客户端生成一个随机数 c 作为自己的私钥,然后根据算法参数计算出公钥 C
  6. 客户端把 C 发送给服务端
  7. 客户端和服务端(根据上述 DH 算法)各自计算出 k 作为会话密钥

3、https的通信过程

HTTPS通信主要包括几个节点,发起请求、验证身份、协商秘钥、加密会话,具体流程如下(此例子只有客户端对服务端的单向验证):

1、客户端向服务端发起建立HTTPS请求。
2、服务器向客户端发送数字证书。
3、客户端验证数字证书,证书验证通过后客户端生成会话密钥(双向验证则此处客户端也会向服务器发送证书)。
4、服务器生成会话密钥(双向验证此处服务端也会对客户端的证书验证)。
5、客户端与服务端开始进行加密会话。

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

awk -F: '{print $1}' /etc/passwd

posted on   魏蓝  阅读(28)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示