#!/bin/bash
# Shell Script To List All Top Hitting IP Address to your webserver.
# This may be useful to catch spammers and scrappers.
# ———————————————————————-
# This script is licensed under GNU GPL version 2.0 or above
# ———————————————————————-
# where to store final report?
DEST=/var/www/reports/ips

# domain name
DOM=$1

# log file location
LOGFILE=/var/logs/httpd/$DOM/access.log

# die if no domain name given
[ $# -eq 0 ] && exit 1

# make dir
[ ! -d $DEST ] && mkdir -p $DEST

# ok, go though log file and create report
if [ -f $LOGFILE ]
then
echo “Processing log for $DOM…”
awk ‘{ print $1}’ $LOGFILE | sort | uniq -c | sort -nr > $DEST/$DOM.txt
echo “Report written to $DEST/$DOM.txt”
fi

How do I run this script?

Simply run it as follows:
./script website.com
Sample output (1st coloum is counter and 2nd is IP address):

600 72.30.87.116
50 66.249.71.138
10 66.249.71.140
5 66.249.71.139
3 74.86.49.130