He creat aquest script per saber com extreure les adreces IP d'un arxiu de log.
L'script utilitza com a primer argument l'arxiu log del que volem extreure les IPs i com a segon argument l'arxiu on volem posar les ips soltes.
Si no li indiques el fitxer de sortida crea en el directori on aquestes un arxiu anomenat listaips.
L'script per extreure les adreces IP d'un arxiu
#!/bin/bash
# script programat per Ignacio Alba
# http://Aplicacionesysistemas.com
#
# si només vols extreure ip d'un arxiu :
#cat origen | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> destí
#ayuda per si no es posen paràmetres
if [ -des $1 ];llavors
fet -i "Has de dir-me quin és l'arxiu d'origen i destinació amb la sintaxi"
ressò ""
echo-e "\i[91m. / extraeip origen destí i[0m "
ressò ""
echo-e "si no poses destí crec l'arxiu i[91mlistaips i[0m en el directori on et enchemtras"
sortida
més
# readlink ens mostra el camí complet del fitxer.
origen = $(readlink -f $1)
ruta = $(pwd)
# variable en funció de si es posa o no segon paràmetre
if [ -des $2 ];llavors
gat $1 | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> listaips
fet -i " \i[92mArchivo d'origen : \i[91m $ origen i[0m "
echo-e " \i[92mArchivo destí llistat IPs: \i[91m$ruta/listaipse[0m "
més
destí = $(readlink -f $2)
gat $1 | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> $2
echo-e " \i[92mArchivo d'origen : \i[91m $ origen i[0m "
echo-e " \i[92mArchivo destí llistat IPs: \i[91$ M destí i[0m "
ser
ser
# Missatge de comiat
fet ""
ressò ""
1s del somni;echo-e "\i[92MNO oblidis visitar-nos a i[0m"
1s del somni;echo-e " \i[42m i[97m i[1mhttps://aplicacionesysistemas.com i[0m"
Com extreure les adreces IP d'un arxiu
1) Creem un nou fitxer de text anomenat extraeips.
extraeips nano
2) Enganxem el contingut de l'script (Ctrl Maj V) guardem amb Ctrl x posem S per poder guardar.
3) Donem permisos d'execució a l'script per a l'usuari (gràcies Héctor Herrera)
chmod u x extraeips
4) Executem el script
./extraeips origen destí
Exemple
./extraeips /var/log/auth.log / home / aplicacionesysistemas / Documents / listaips
o també
./extraeips origen
Exemple
./extraeips /var/log/auth.log
En aquest cas ens creés el llistat d'adreces IP en el directori on ens trobem.
Si se t'ocorre alguna manera de millorar l'script o afegir noves funcionalitats explica'ns com ho faries
Per crear aquest script he utilitzat informació de les següents pàgines.
http://www.forosdelweb.com/f41/sed-extraer-ips-archivo-log-517127/
http://es.kioskea.net/faq/bash-372
Si us ha agradat o resultat útil, Pot donar la compartir +1 a les xarxes socials, al meu m'anima molt a seguir escrivint.
Ha estat molt útil. Darrerament estic patint intents d'atac de força bruta i amb aquest script, una mica de cron i fail2ban estic parant com puc als mals.
Gràcies per l'aportació i endavant amb el bé treball +1