文本处理和脚本实践

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

Disable.sh
sed -i 's/=disabled/=enabled/' /etc/selinux/config

Enable.sh
sed -i 's/=enabled/=disabled/' /etc/selinux/config

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

[root@oracle ~]# awk '/^[^#]/ {filesystem[$3]++}END{ for (i in filesystem){print i,filesystem[i]}}   ' /etc/fstab 
devpts 1
swap 1
sysfs 1
proc 1
tmpfs 1
ext4 2

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

[root@oracle ~]# echo "Yd$C@M05MB%9&Bdh7dq+YVixp3vpw" | awk 'BEGIN{FS=""}{for(i=1;i<=NF;i++) {if($i ~ /[[:digit:]]/) print $i }}'

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

vim defend.sh
ss -nat | awk -F" +|:" ‘$7 !~ “*” {print $(NF-2)}’ | awk '$1 !~ “127.0.0.1” ’ | awk ‘/1/{IP[$1]++}END{ for(i in IP){if (IP[i] >=12 ) { system( “iptables -A INPUT -s “i” -j REJECT”); system(“echo remote host with IP” i “is added into the blacklist” “>> /home/0629.log” )}}}’

crontab -e
*/5 * * * * root /home/defend.sh


  1. 0-9 ↩︎

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值