From 16c812a2badc5f5f25b9d35ea7c5c4483cd69524 Mon Sep 17 00:00:00 2001 From: pdiogoantunes Date: Tue, 11 Apr 2017 10:57:19 +0200 Subject: [PATCH] =?UTF-8?q?ajout=20compare=20requ=C3=AAtes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TipsShell.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/TipsShell.md b/TipsShell.md index bfef5b9f..18ca8437 100644 --- a/TipsShell.md +++ b/TipsShell.md @@ -254,6 +254,18 @@ tr '\n' ' ' | cut -d':' -f2 | echo -n "$(cat <&0)"; echo = $(groups $user); done eval "awk '\$1 > $SEUIL {printf \"\\033[1;31m\" \$1 \" \" \$2 \"\\033[0m \\n\"; next;};{printf \$1 \" \" \$2 \"\\n\";}'" ~~~ +## Comparer les requêtes effectués dans access.log + +Les différentes requêtes sont comparés aux nombres de caractères différent. La variable SEUIL est la limite de caractères différents pour 2 requêtes. + +~~~{.bash} +SEUIL=20; i=1; lastline=; cat access.log | sed 's/.*\] \(.*\)\" [0-9]\{3\}.*$/\1\"/' | \ +(while read line; do diff=$(cmp -bl <(echo "$lastline") <(echo "$line") 2>/dev/null | wc -l); \ +(( diff < SEUIL )) && { i=$((i+1)); } || { echo "$i $line"; i=1; }; lastline="$line"; done) +~~~ + +Si on veut les adresses IPs, ou simplement trier le access.log avant l'analyse, il faut modifier après le : cat acccess.log | + # Process ## Un processus par rapport à une socket/port