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
0-9 ↩︎