在Debian系統上,Apache日志文件通常位于/var/log/apache2/
目錄下,包括access.log
和error.log
。要查找惡意訪問,可以采取以下幾種方法:
cat
命令查看完整的訪問日志文件。cat /var/log/apache2/access.log
tail -f
命令實時查看日志文件的變化。tail -f /var/log/apache2/access.log
grep
命令查找特定的關鍵字或模式,例如查找錯誤信息。grep "error" /var/log/apache2/error.log
awk
、sort
和uniq
等命令統計每個IP地址的訪問次數。cat /var/log/apache2/access.log | awk '{print $1}' | sort | uniq -c | sort -nr
awk '/File does not exist/ { print $1 }' /var/log/apache2/error.log* | sort -k1n | uniq -d -c | awk '$1 > 50 {print $2}' > /tmp/malicious_ips.txt
上述命令會列出訪問次數超過50次的IP地址。for ip in $(cat /tmp/malicious_ips.txt); do
iptables -A INPUT -s $ip -j DROP
done
上述命令會遍歷/tmp/malicious_ips.txt
文件中的每個IP地址,并將它們添加到iptables的DROP規則中。