Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. TRAFFIC_COUNT=$(netstat -an | grep :443 | wc -l)
  4. TODAYS_DATE=$(TZ=EST date)
  5.  
  6. #Activates 'Under Attack' firewall option inside CloudFlare via API
  7. CLOUDFLARE_ATTACK_MODE()
  8. {
  9. $(curl -sX PATCH "https://api.cloudflare.com/client/v4/zones/<redacted>/settings/security_level" -H "X-Auth-Email: email@email.com" -H "X-Auth-Key: <redacted>" -H "Content-Type: application/json" --data '{"value":"under_attack"}')
  10. }
  11.  
  12. #Sends alert to sysops via AWS SNS message describing connection count and incident date/time
  13. SEND_SNS_MESSAGE()
  14. {
  15. /usr/bin/aws sns publish --topic-arn "arn:aws:sns:us-east-1:<redacted>:Amazon_Alerts" --message "Website being hit with $TRAFFIC_COUNT connections: Activating cloudflare attack mode! $TODAYS_DATE"
  16. }
  17.  
  18. if [ "$TRAFFIC_COUNT" -ge 10000 ]; then
  19. CLOUDFLARE_ATTACK_MODE
  20. SEND_SNS_MESSAGE
  21. sleep 20s
  22. service httpd restart
  23. else
  24. exit
  25. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement