Hämta alla ip-adresser som besökt dig ur dina apacheloggar

Har du någon gång behövt hämta ut alla ip-adresser som besökt din web? Det har jag. Så här gjorde jag:

egrep '(([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' /var/log/httpd/*access*log | awk '{ print $2 }' | sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 | uniq > access_logged_ips.txt

Easy peasy så sparas alla dina unika besökare i filen access_logged_ips.txt. Notera att dina loggar kan matcha något annat än /var/log/httpd/*access*log, det här exemplet kommer från en webserver med Red Hat på.

  1. Jag såklart’s avatar

    Och om du vill veta vad dom heter så kan du köra den här:

    for a in `cat access_logged_ips.txt`*; do echo -n ”$a – ” ; host $a | head -n 1 | awk ‘{print $2}’; done > access_logged_ips_with_hostnames.txt

    Svara

  2. micke’s avatar

    Trevligt, men med min host måste jag köra awk ‘{print $5}’

    Svara

Reply

E-postadressen publiceras inte. Obligatoriska fält är märkta *

*

Switch to our mobile site

Page optimized by WP Minify WordPress Plugin