Jeder kennt sie, oder jeder hat zumindest schon mal davon gehört. Die allerseits beliebte (oder auch nicht) DSGVO.
Wer Kunden hat die Log-File-Auszuege wuenschen weiß wie muehsam es ist diese zu anonymisieren.
Ich habe mir daher eine kleine function für die ~/.bashrc geschrieben.

function anonym ()
        {
        if [ "${1:0:2}" == "-h" ]||[ "${1:0:2}" == "-?" ]
                then
                echo $1
                echo -e "\033[0;32mReinis ${FUNCNAME[0]} V1.0\033[0m"
                echo "${FUNCNAME[0]} /Pfad/Datei"
                echo -e "Anonymisiert gueltige IP-Adressen und"
                echo -e "E-Mail-Adressen."
                echo -e "Liefert XXX.XXX.XXX.XXX fuer IP-Adressen aus und"
                echo -e "Liefert xxx@xxx.TLD fuer E-Mail-Adressen aus."
                return
        fi
        if [ "$1" == "" ]
                then
                cat -|zless|sed -r 's/([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})/® &/g'|sed -r 's/ (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/ XXX.XXX.XXX.XXX/g'|sed -r 's/(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/XXX-XXX-XXX-XXX/g'|sed -r 's/</< /g'|sed -r 's/[[:graph:]]*@[[:graph:]]*\./xxx@xxx\./g'|sed -r 's/< /</g'|sed -r 's/ XXX/XXX/g'|sed -r 's/® //g'|sed -r 's/®//g'
        else
                zless $(echo "$*")|sed -r 's/([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})/® &/g'|sed -r 's/ (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/ XXX.XXX.XXX.XXX/g'|sed -r 's/(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\-(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/XXX-XXX-XXX-XXX/g'|sed -r 's/</< /g'|sed -r 's/[[:graph:]]*@[[:graph:]]*\./xxx@xxx\./g'|sed -r 's/< /</g'|sed -r 's/ XXX/XXX/g'|sed -r 's/® //g'|sed -r 's/®//g'
        fi
}

Die Funktion ist natuerlich auf meine Beduerfnisse angepasst und muss eventuell für andere Logs angeglichen werden. (Ich berate gerne bei Bedarf.)
Die Anwendung sieht in etwa so aus.

echo 'das ist < > eine IP192.168.0.1 und das ist eine email g^ibt_s@gar.net eine IP <78-212-12-11> und noch eine email ausser <!#$%&’*+-/=?^_`.{|}~@example.com> und das ist mit subdomain tester@sub.domain.com und eine Zahl 344.55.16.1'|anonym
das ist < > eine IPXXX.XXX.XXX.XXX und das ist eine email xxx@xxx.net eine IP <XXX-XXX-XXX-XXX> und noch eine email ausser <xxx@xxx.com> und das ist mit subdomain xxx@xxx.com und eine Zahl 344.55.16.1

LG Reini
https://call4wall.at/LB.html

Verfasst von ®eini123

Categories:

Schreibe einen Kommentar

Noch keine Reaktion

Neue Themen im Forum
Powertop nach "Linux-Bibel",...Hallo miteinander, um meinen Stromverbrauch zu drosseln habe ic … Weiterlesen
Newbiefragen zum NetzwerkHallo! Die (freien) Tage habe ich es mal wieder gewagt, einen d … Weiterlesen
Debian Update 12.9Zitat von Zaniah am 13. Januar 2025, 9:47 Uhr Kleiner Nachtrag: m … Weiterlesen
Kategorien im Wiki
WIKI-Beiträge des Monates

Die Beiträge des Monates finden Sie im Kalender unter den blau markierten Tageszahlen.

September 2023
M D M D F S S
 123
45678910
11121314151617
18192021222324
252627282930  
Archive