美文网首页
selinux和awk练习

selinux和awk练习

作者: jamas | 来源:发表于2020-03-15 21:39 被阅读0次

1、编写脚本selinux.sh,实现开启或禁用SELinux功能

#!/bin/bash
#
while read -p "please input 'enable' to enable selinux or 'disable' to disable selinux : " word;do
        case $word in
        enable)
                setenforce 1
                sed -ir 's/^SELINUX=.*/SELINUX=enforcing/' /etc/selinux/config
                ;;
        disable)
                setenforce 0                                                                                              
                sed -ir 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
                ;;
        *)
                exit
                ;;
        esac
done

2、统计/etc/fstab文件中每个文件系统类型出现的次数

awk '/^[^#]/{fs[$3]++}END{for(i in fs){print i,fs[i]}}' /etc/fstab

3、提取出字符串Yd$C@M05MB%9&Bdh7dq+YVixp3vpw中的所有数字

echo "Yd$C@M05MB%9&Bdh7dq+YVixp3vpw" | awk '{gsub(/[^0-9]/,"");print $0}'

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

#!/bin/bash
#
while true;do
        ss -tn | awk -F " +|:" '/^[^State]/{ip[$(NF-2)]++}END{for(i in ip){if(ip[i] > 100){print i}}}' > /test/reject_ip
        while read ip;do
                iptables -A INPUT -s $ip -j REJECT
        done < /test/reject_ip                                                                                            
        sleep 300
done

相关文章

网友评论

      本文标题:selinux和awk练习

      本文链接:https://www.haomeiwen.com/subject/cizbehtx.html