Ich dieses Skript für, wie man die IP-Adresse von einer Log-Datei zu extrahieren erstellt.
Das Skript als erstes Argument verwendet die Protokolldatei Ihnen, die IP-Adressen extrahieren möchten und als zweites Argument die Datei, wo wir ips verlieren wollen.
Wenn Sie keinen der Ausgabedatei im Verzeichnis erstellt, wo eine Datei mit dem Namen dieser listaips.
Das Skript, um die IP-Adresse einer Datei zu extrahieren
#!/bin/bash
# Drehbuch von Ignacio Alba programmiert
# http://Aplicacionesysistemas.com
#
# wenn Sie wollen, um eine Datei zu extrahieren ip :
#Katze Herkunft | Griff -oi "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|Art >> Reiseziel
#help wenn keine Parameter eingestellt werden
wenn [ -von $1 ];dann
echo -e "Sie müssen mir sagen, was der Quell- und Zieldatei mit der folgenden Syntax"
Echo ""
echo-e "\und[91m. / extraeip Quelle Ziel e[0m "
Echo ""
echo-e "wenn Sie Ziel gesetzt Ich denke, die e[91mlistaips und[0m in dem Verzeichnis, in dem Sie enchemtras"
ausgang
sonst
# read zeigt den vollständigen Pfad der Datei.
origin = $(readlink -f $1)
path = $(pwd)
# Variabel in Abhängigkeit davon, ob oder nicht erhält zweiten Parameter
wenn [ -von $2 ];dann
Katze $1 | Griff -oi "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|Art >> listaips
echo -e " \und[92Quelle mArchivo : \und[91m $ home e[0m "
echo-e " \und[92mArchivo Destination-IP-Liste: \und[91m $ path / listaips e[0m "
sonst
destino = $(readlink -f $2)
Katze $1 | Griff -oi "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|Art >> $2
echo-e " \und[92Quelle mArchivo : \und[91m $ home e[0m "
echo-e " \und[92mArchivo Destination-IP-Liste: \und[91$ M Ziel und[0m "
sein
sein
# Abschiedsbotschaft
Echo ""
Echo ""
Schlaf 1s;echo-e "\und[92Bitte besuchen Sie uns MnO e[0m"
Schlaf 1s;echo-e " \und[42m e[97m e[1mhttps://aplicacionesysistemas.com e[0m"
Als Extrakt IP-Adressen aus einer Datei
1) Erstellen Sie eine neue Textdatei namens extraeips.
nano extraeips
2) Fügen Sie den Inhalt des Skripts (Strg Mayus V) halten mit Strg S, um x Wir speichern.
3) Wir Ausführungsberechtigungen für das Skript für den Anwender (Dank Hector Herrera)
chmod u x extraeips
4) Führen Sie das Skript
./extraeips Quelle Ziel
Beispiel
./extraeips /var/log/auth.log / home / aplicacionesysistemas / Documentos / listaips
oder auch
./extraeips Herkunft
Beispiel
./extraeips /var/log/auth.log
In diesem Fall erstellen wir eine Liste von IP-Adressen in dem Verzeichnis, wo wir sind.
Wenn Sie wissen, irgendeine Weise, um das Skript zu verbessern oder neue Funktionen zu denken sagen Sie uns, wie Sie es
Um dieses Skript zu erstellen Ich verwendete Informationen von den folgenden Seiten.
http://www.forosdelweb.com/f41/sed-extraer-ips-archivo-log-517127/
http://es.kioskea.net/faq/bash-372
Wenn Sie mochte oder nützliches Ergebnis, Können Sie die compartirlo geben +1 über soziale Netzwerke, meine ermutigt mich sehr weiterschreiben.
Es war sehr nützlich. In letzter Zeit leide ich unter Brute-Force-Angriffsversuchen und mit diesem Skript, ein bisschen cron und fail2ban Ich halte die Bösen auf, so gut ich kann.
Vielen Dank für den Beitrag und machen Sie mit der guten Arbeit weiter +1