Fail2ban: Hostname im Subject / Emails vom 01.01.1970

Ich habe bei fail2ban immer die Emailbenachrichtigung aktiviert und dabei zwei Aenderungen in der /etc/fail2ban/action.d/sendmail-whois-lines.conf vorgenommen:

  1. Im Betreff habe ich den Hostnamen mit aufgenommen. Dafuer habe ich die actionstart, actionstop und actionban Zeilen so abgeaendert, dass Sie wie folgt beginnen:
    printf %%b "Subject: [Fail2Ban] - `hostname -f` - <name>:

    Neu ist das `hostname -f`.

  2. Weiter gibt es das Problem, das die Mails immer am 01.01.1970 verschickt werden. Dafuer existiert auch ein Bugreport auf Github, der Bugfix ist aber auf meinen Systemen noch nicht angekommen, weswegen ich ihn von Hand eingepflegt habe. In der Zeile unter den oben bereits erwaehnten habe ich hinter den date Aufruf jeweils ein –rfc 2822 eingefuegt. Die Zeile sieht nun bei mir wie folgt aus:
    Date: `date --rfc-2822 -u +"%%a, %%d %%h %%Y %%T +0000"`

Unix Timestamp vs. Java Timestamp

Wer als Sysadmin mit Java Entwicklern zu tun hat und beide wie selbstverstaendlich ueber Timstamps reden, dann gibt es doch einen entscheidenen Unterschied. Beide Timestamps geben die Zeit seit dem 01.01.1970 00:00:00h wieder. Unix Timestamps jedoch in Sekunden, Java Timestamps in Millisekunden.

Fuer die Praxis:

  • 01.01.2014 00:00:00 als Unix Timestamp:
    user@host:~$ date -d "2014-01-01 00:00:00" "+%s"
    1388530800
    user@host:~$
  • 01.01.2014 00:00:00 als Java Timestamp:
    usaer@host:~$ echo $(date -d "2014-01-01 00:00:00" "+%s")*1000 | bc
    1388530800000
    user@host:~$