半自动化多站点屏蔽恶意用户的IP(脚本)

前瞻:
用于多站点操做,基于ansible批量化操做
前提须要安装ansible且在nginx.conf中添加以下参数
include /usr/local/nginx/conf/denyIP;
在conf下建立denyIP,将屏蔽ip写入denyIP便可屏蔽
touch denyIP
由于使用的ansible因此每一个zhandian(1-6)实际上在ansible/hosts中都是包含了多个站点的nginx

#!/bin/bash
read -p "请输入须要屏蔽的IP: " forbidip
cat << EOF
----------------------------------------
|***************站点列表***************|
----------------------------------------
`echo -e "\033[35m 1)zhandian-1\033[0m"`
`echo -e "\033[35m 2)zhandian-2\033[0m"`
`echo -e "\033[35m 3)zhandian-3\033[0m"`
`echo -e "\033[35m 4)zhandian-4\033[0m"`    
`echo -e "\033[35m 5)zhandian-5\033[0m"`
`echo -e "\033[35m 6)zhandian-6\033[0m"`
EOF
read -p "请输入须要执行的站点编号:" cmd
case $cmd in
1)
        sudo /usr/bin/ansible zhandian-1 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-1 -m shell -a "sudo systemctl restart nginx";;
2)
        sudo /usr/bin/ansible zhandian-2 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-2 -m shell -a "sudo systemctl restart nginx";;
3)
        sudo /usr/bin/ansible zhandian-3 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-3 -m shell -a "sudo systemctl restart nginx";;
4)
        sudo /usr/bin/ansible zhandian-4 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-4 -m shell -a "sudo systemctl restart nginx";;
5)
        sudo /usr/bin/ansible zhandian-5 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-5 -m shell -a "sudo systemctl restart nginx";;
6)
        sudo /usr/bin/ansible zhandian-6 -m shell -a "sudo sed -i  '\$a\deny ${forbidip};'  /usr/local/nginx/conf/denyIP" && sudo ansible zhandian-6 -m shell -a "sudo systemctl restart nginx";;
*)
        echo "errpr:please in input (1,2,3,4,5,6)";;
esac
相关文章
相关标签/搜索