mirror of https://github.com/fail2ban/fail2ban
Merge pull request #1758 from sebres/0.10-new-hostname-tags
0.10 new action tags: <fq-hostname>, <sh-hostname>pull/1770/head
commit
e7d51d1969
|
@ -69,6 +69,8 @@ TODO: implementing of options resp. other tasks from PR #1346
|
||||||
- `<ip-rev>` - PTR reversed representation of IP address
|
- `<ip-rev>` - PTR reversed representation of IP address
|
||||||
- `<ip-host>` - host name of the IP address
|
- `<ip-host>` - host name of the IP address
|
||||||
- `<F-...>` - interpolates to the corresponding filter group capture `...`
|
- `<F-...>` - interpolates to the corresponding filter group capture `...`
|
||||||
|
- `<fq-hostname>` - fully-qualified name of host (the same as `$(hostname -f)`)
|
||||||
|
- `<sh-hostname>` - short hostname (the same as `$(uname -n)`)
|
||||||
* Allow to use filter options by `fail2ban-regex`, example:
|
* Allow to use filter options by `fail2ban-regex`, example:
|
||||||
fail2ban-regex text.log "sshd[mode=aggressive]"
|
fail2ban-regex text.log "sshd[mode=aggressive]"
|
||||||
* Samples test case factory extended with filter options - dict in JSON to control
|
* Samples test case factory extended with filter options - dict in JSON to control
|
||||||
|
|
|
@ -17,7 +17,7 @@ actionstart = printf %%b "Hi,\n
|
||||||
The jail <name> has been started successfully.\n
|
The jail <name> has been started successfully.\n
|
||||||
Output will be buffered until <lines> lines are available.\n
|
Output will be buffered until <lines> lines are available.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionstop
|
# Option: actionstop
|
||||||
# Notes.: command executed once at the end of Fail2Ban
|
# Notes.: command executed once at the end of Fail2Ban
|
||||||
|
@ -28,13 +28,13 @@ actionstop = if [ -f <tmpfile> ]; then
|
||||||
These hosts have been banned by Fail2Ban.\n
|
These hosts have been banned by Fail2Ban.\n
|
||||||
`cat <tmpfile>`
|
`cat <tmpfile>`
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: Summary from `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: Summary from <fq-hostname>" <dest>
|
||||||
rm <tmpfile>
|
rm <tmpfile>
|
||||||
fi
|
fi
|
||||||
printf %%b "Hi,\n
|
printf %%b "Hi,\n
|
||||||
The jail <name> has been stopped.\n
|
The jail <name> has been stopped.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actioncheck
|
# Option: actioncheck
|
||||||
# Notes.: command executed once before each actionban command
|
# Notes.: command executed once before each actionban command
|
||||||
|
|
|
@ -21,7 +21,7 @@ norestored = 1
|
||||||
actionstart = printf %%b "Hi,\n
|
actionstart = printf %%b "Hi,\n
|
||||||
The jail <name> has been started successfully.\n
|
The jail <name> has been started successfully.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban" | <mailcmd> "[Fail2Ban] <name>: started on `uname -n`" <dest>
|
Fail2Ban" | <mailcmd> "[Fail2Ban] <name>: started on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionstop
|
# Option: actionstop
|
||||||
# Notes.: command executed once at the end of Fail2Ban
|
# Notes.: command executed once at the end of Fail2Ban
|
||||||
|
@ -30,7 +30,7 @@ actionstart = printf %%b "Hi,\n
|
||||||
actionstop = printf %%b "Hi,\n
|
actionstop = printf %%b "Hi,\n
|
||||||
The jail <name> has been stopped.\n
|
The jail <name> has been stopped.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban" | <mailcmd> "[Fail2Ban] <name>: stopped on `uname -n`" <dest>
|
Fail2Ban" | <mailcmd> "[Fail2Ban] <name>: stopped on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actioncheck
|
# Option: actioncheck
|
||||||
# Notes.: command executed once before each actionban command
|
# Notes.: command executed once before each actionban command
|
||||||
|
@ -56,7 +56,7 @@ _ban_mail_content = ( printf %%b "Hi,\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban" )
|
Fail2Ban" )
|
||||||
|
|
||||||
actionban = %(_ban_mail_content)s | <mailcmd> "[Fail2Ban] <name>: banned <ip> from `uname -n`" <dest>
|
actionban = %(_ban_mail_content)s | <mailcmd> "[Fail2Ban] <name>: banned <ip> from <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionunban
|
# Option: actionunban
|
||||||
# Notes.: command executed when unbanning an IP. Take care that the
|
# Notes.: command executed when unbanning an IP. Take care that the
|
||||||
|
|
|
@ -20,7 +20,7 @@ norestored = 1
|
||||||
actionstart = printf %%b "Hi,\n
|
actionstart = printf %%b "Hi,\n
|
||||||
The jail <name> has been started successfully.\n
|
The jail <name> has been started successfully.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionstop
|
# Option: actionstop
|
||||||
# Notes.: command executed once at the end of Fail2Ban
|
# Notes.: command executed once at the end of Fail2Ban
|
||||||
|
@ -29,7 +29,7 @@ actionstart = printf %%b "Hi,\n
|
||||||
actionstop = printf %%b "Hi,\n
|
actionstop = printf %%b "Hi,\n
|
||||||
The jail <name> has been stopped.\n
|
The jail <name> has been stopped.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actioncheck
|
# Option: actioncheck
|
||||||
# Notes.: command executed once before each actionban command
|
# Notes.: command executed once before each actionban command
|
||||||
|
@ -49,7 +49,7 @@ actionban = printf %%b "Hi,\n
|
||||||
Here is more information about <ip> :\n
|
Here is more information about <ip> :\n
|
||||||
`%(_whois_command)s`\n
|
`%(_whois_command)s`\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: banned <ip> from `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: banned <ip> from <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionunban
|
# Option: actionunban
|
||||||
# Notes.: command executed when unbanning an IP. Take care that the
|
# Notes.: command executed when unbanning an IP. Take care that the
|
||||||
|
|
|
@ -16,7 +16,7 @@ norestored = 1
|
||||||
actionstart = printf %%b "Hi,\n
|
actionstart = printf %%b "Hi,\n
|
||||||
The jail <name> has been started successfully.\n
|
The jail <name> has been started successfully.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionstop
|
# Option: actionstop
|
||||||
# Notes.: command executed once at the end of Fail2Ban
|
# Notes.: command executed once at the end of Fail2Ban
|
||||||
|
@ -25,7 +25,7 @@ actionstart = printf %%b "Hi,\n
|
||||||
actionstop = printf %%b "Hi,\n
|
actionstop = printf %%b "Hi,\n
|
||||||
The jail <name> has been stopped.\n
|
The jail <name> has been stopped.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: stopped on <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actioncheck
|
# Option: actioncheck
|
||||||
# Notes.: command executed once before each actionban command
|
# Notes.: command executed once before each actionban command
|
||||||
|
@ -43,7 +43,7 @@ actionban = printf %%b "Hi,\n
|
||||||
The IP <ip> has just been banned by Fail2Ban after
|
The IP <ip> has just been banned by Fail2Ban after
|
||||||
<failures> attempts against <name>.\n
|
<failures> attempts against <name>.\n
|
||||||
Regards,\n
|
Regards,\n
|
||||||
Fail2Ban"|mail -s "[Fail2Ban] <name>: banned <ip> from `uname -n`" <dest>
|
Fail2Ban"|mail -s "[Fail2Ban] <name>: banned <ip> from <fq-hostname>" <dest>
|
||||||
|
|
||||||
# Option: actionunban
|
# Option: actionunban
|
||||||
# Notes.: command executed when unbanning an IP. Take care that the
|
# Notes.: command executed when unbanning an IP. Take care that the
|
||||||
|
|
|
@ -17,7 +17,7 @@ norestored = 1
|
||||||
# Notes.: command executed once at the start of Fail2Ban.
|
# Notes.: command executed once at the start of Fail2Ban.
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on `uname -n`
|
actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on <fq-hostname>
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
Hi,\n
|
Hi,\n
|
||||||
|
@ -31,7 +31,7 @@ actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on `uname -n`
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionstop = if [ -f <tmpfile> ]; then
|
actionstop = if [ -f <tmpfile> ]; then
|
||||||
printf %%b "Subject: [Fail2Ban] <name>: summary from `uname -n`
|
printf %%b "Subject: [Fail2Ban] <name>: summary from <fq-hostname>
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
Hi,\n
|
Hi,\n
|
||||||
|
@ -41,7 +41,7 @@ actionstop = if [ -f <tmpfile> ]; then
|
||||||
Fail2Ban" | /usr/sbin/sendmail -f <sender> <dest>
|
Fail2Ban" | /usr/sbin/sendmail -f <sender> <dest>
|
||||||
rm <tmpfile>
|
rm <tmpfile>
|
||||||
fi
|
fi
|
||||||
printf %%b "Subject: [Fail2Ban] <name>: stopped on `uname -n`
|
printf %%b "Subject: [Fail2Ban] <name>: stopped on <fq-hostname>
|
||||||
From: Fail2Ban <<sender>>
|
From: Fail2Ban <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
Hi,\n
|
Hi,\n
|
||||||
|
@ -64,7 +64,7 @@ actioncheck =
|
||||||
actionban = printf %%b "`date`: <ip> (<failures> failures)\n" >> <tmpfile>
|
actionban = printf %%b "`date`: <ip> (<failures> failures)\n" >> <tmpfile>
|
||||||
LINE=$( wc -l <tmpfile> | awk '{ print $1 }' )
|
LINE=$( wc -l <tmpfile> | awk '{ print $1 }' )
|
||||||
if [ $LINE -ge <lines> ]; then
|
if [ $LINE -ge <lines> ]; then
|
||||||
printf %%b "Subject: [Fail2Ban] <name>: summary from `uname -n`
|
printf %%b "Subject: [Fail2Ban] <name>: summary from <fq-hostname>
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
Hi,\n
|
Hi,\n
|
||||||
|
|
|
@ -14,7 +14,7 @@ after = sendmail-common.local
|
||||||
# Notes.: command executed once at the start of Fail2Ban.
|
# Notes.: command executed once at the start of Fail2Ban.
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on `uname -n`
|
actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
@ -27,7 +27,7 @@ actionstart = printf %%b "Subject: [Fail2Ban] <name>: started on `uname -n`
|
||||||
# Notes.: command executed once at the end of Fail2Ban
|
# Notes.: command executed once at the end of Fail2Ban
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionstop = printf %%b "Subject: [Fail2Ban] <name>: stopped on `uname -n`
|
actionstop = printf %%b "Subject: [Fail2Ban] <name>: stopped on <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -23,7 +23,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = ( printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = ( printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -19,7 +19,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -19,7 +19,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -20,7 +20,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = ( printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = ( printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -19,7 +19,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -19,7 +19,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -19,7 +19,7 @@ norestored = 1
|
||||||
# Tags: See jail.conf(5) man page
|
# Tags: See jail.conf(5) man page
|
||||||
# Values: CMD
|
# Values: CMD
|
||||||
#
|
#
|
||||||
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from `uname -n`
|
actionban = printf %%b "Subject: [Fail2Ban] <name>: banned <ip> from <fq-hostname>
|
||||||
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
From: <sendername> <<sender>>
|
From: <sendername> <<sender>>
|
||||||
To: <dest>\n
|
To: <dest>\n
|
||||||
|
|
|
@ -46,7 +46,7 @@ actionban = oifs=${IFS}; IFS=.;SEP_IP=( <ip> ); set -- ${SEP_IP}; ADDRESSES=$(di
|
||||||
FROM=<sender>
|
FROM=<sender>
|
||||||
SERVICE=<service>
|
SERVICE=<service>
|
||||||
FAILURES=<failures>
|
FAILURES=<failures>
|
||||||
REPORTID=<time>@`uname -n`
|
REPORTID=<time>@<fq-hostname>
|
||||||
TLP=<tlp>
|
TLP=<tlp>
|
||||||
PORT=<port>
|
PORT=<port>
|
||||||
DATE=`LC_ALL=C date --date=@<time> +"%%a, %%d %%h %%Y %%T %%z"`
|
DATE=`LC_ALL=C date --date=@<time> +"%%a, %%d %%h %%Y %%T %%z"`
|
||||||
|
@ -119,7 +119,7 @@ logpath = /dev/null
|
||||||
|
|
||||||
# Option: sender
|
# Option: sender
|
||||||
# Notes.: This is the sender that is included in the XARF report
|
# Notes.: This is the sender that is included in the XARF report
|
||||||
sender = fail2ban@`uname -n`
|
sender = fail2ban@<fq-hostname>
|
||||||
|
|
||||||
# Option: port
|
# Option: port
|
||||||
# Notes.: This is the port number that received the login-attack
|
# Notes.: This is the port number that received the login-attack
|
||||||
|
|
|
@ -134,7 +134,7 @@ filter = %(__name__)s
|
||||||
destemail = root@localhost
|
destemail = root@localhost
|
||||||
|
|
||||||
# Sender email address used solely for some actions
|
# Sender email address used solely for some actions
|
||||||
sender = root@localhost
|
sender = root@<fq-hostname>
|
||||||
|
|
||||||
# E-mail action. Since 0.8.1 Fail2Ban uses sendmail MTA for the
|
# E-mail action. Since 0.8.1 Fail2Ban uses sendmail MTA for the
|
||||||
# mailing. Change mta configuration parameter to mail if you want to
|
# mailing. Change mta configuration parameter to mail if you want to
|
||||||
|
|
|
@ -35,6 +35,7 @@ except ImportError:
|
||||||
OrderedDict = dict
|
OrderedDict = dict
|
||||||
|
|
||||||
from .banmanager import BanManager
|
from .banmanager import BanManager
|
||||||
|
from .ipdns import DNSUtils
|
||||||
from .jailthread import JailThread
|
from .jailthread import JailThread
|
||||||
from .action import ActionBase, CommandAction, CallingMap
|
from .action import ActionBase, CommandAction, CallingMap
|
||||||
from .mytime import MyTime
|
from .mytime import MyTime
|
||||||
|
@ -306,6 +307,9 @@ class Actions(JailThread, Mapping):
|
||||||
"ipjailmatches": lambda self: "\n".join(self._mi4ip().getMatches()),
|
"ipjailmatches": lambda self: "\n".join(self._mi4ip().getMatches()),
|
||||||
"ipfailures": lambda self: self._mi4ip(True).getAttempt(),
|
"ipfailures": lambda self: self._mi4ip(True).getAttempt(),
|
||||||
"ipjailfailures": lambda self: self._mi4ip().getAttempt(),
|
"ipjailfailures": lambda self: self._mi4ip().getAttempt(),
|
||||||
|
# system-information:
|
||||||
|
"fq-hostname": lambda self: DNSUtils.getHostname(fqdn=True),
|
||||||
|
"sh-hostname": lambda self: DNSUtils.getHostname(fqdn=False)
|
||||||
}
|
}
|
||||||
|
|
||||||
__slots__ = CallingMap.__slots__ + ('__ticket', '__jail', '__mi4ip')
|
__slots__ = CallingMap.__slots__ + ('__ticket', '__jail', '__mi4ip')
|
||||||
|
|
|
@ -118,6 +118,27 @@ class DNSUtils:
|
||||||
|
|
||||||
return ipList
|
return ipList
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def getHostname(fqdn=True):
|
||||||
|
"""Get short hostname or fully-qualified hostname of host self"""
|
||||||
|
# try find cached own hostnames (this tuple-key cannot be used elsewhere):
|
||||||
|
key = ('self','hostname', fqdn)
|
||||||
|
name = DNSUtils.CACHE_ipToName.get(key)
|
||||||
|
# get it using different ways (hostname, fully-qualified or vice versa):
|
||||||
|
if name is None:
|
||||||
|
name = ''
|
||||||
|
for hostname in (
|
||||||
|
(socket.getfqdn, socket.gethostname) if fqdn else (socket.gethostname, socket.getfqdn)
|
||||||
|
):
|
||||||
|
try:
|
||||||
|
name = hostname()
|
||||||
|
break
|
||||||
|
except Exception as e: # pragma: no cover
|
||||||
|
logSys.warning("Retrieving own hostnames failed: %s", e)
|
||||||
|
# cache and return :
|
||||||
|
DNSUtils.CACHE_ipToName.set(key, name)
|
||||||
|
return name
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def getSelfNames():
|
def getSelfNames():
|
||||||
"""Get own host names of self"""
|
"""Get own host names of self"""
|
||||||
|
@ -126,12 +147,9 @@ class DNSUtils:
|
||||||
names = DNSUtils.CACHE_ipToName.get(key)
|
names = DNSUtils.CACHE_ipToName.get(key)
|
||||||
# get it using different ways (a set with names of localhost, hostname, fully qualified):
|
# get it using different ways (a set with names of localhost, hostname, fully qualified):
|
||||||
if names is None:
|
if names is None:
|
||||||
names = set(['localhost'])
|
names = set([
|
||||||
for hostname in (socket.gethostname, socket.getfqdn):
|
'localhost', DNSUtils.getHostname(False), DNSUtils.getHostname(True)
|
||||||
try:
|
]) - set(['']) # getHostname can return ''
|
||||||
names |= set([hostname()])
|
|
||||||
except Exception as e: # pragma: no cover
|
|
||||||
logSys.warning("Retrieving own hostnames failed: %s", e)
|
|
||||||
# cache and return :
|
# cache and return :
|
||||||
DNSUtils.CACHE_ipToName.set(key, names)
|
DNSUtils.CACHE_ipToName.set(key, names)
|
||||||
return names
|
return names
|
||||||
|
|
|
@ -1748,7 +1748,7 @@ class ServerConfigReaderTests(LogCaptureTestCase):
|
||||||
def _executeMailCmd(self, realCmd, timeout=60):
|
def _executeMailCmd(self, realCmd, timeout=60):
|
||||||
# replace pipe to mail with pipe to cat:
|
# replace pipe to mail with pipe to cat:
|
||||||
realCmd = re.sub(r'\)\s*\|\s*mail\b([^\n]*)',
|
realCmd = re.sub(r'\)\s*\|\s*mail\b([^\n]*)',
|
||||||
r' echo mail \1 ) | cat', realCmd)
|
r') | cat; printf "\\n... | "; echo mail \1', realCmd)
|
||||||
# replace abuse retrieving (possible no-network), just replace first occurrence of 'dig...':
|
# replace abuse retrieving (possible no-network), just replace first occurrence of 'dig...':
|
||||||
realCmd = re.sub(r'\bADDRESSES=\$\(dig\s[^\n]+',
|
realCmd = re.sub(r'\bADDRESSES=\$\(dig\s[^\n]+',
|
||||||
lambda m: 'ADDRESSES="abuse-1@abuse-test-server, abuse-2@abuse-test-server"',
|
lambda m: 'ADDRESSES="abuse-1@abuse-test-server, abuse-2@abuse-test-server"',
|
||||||
|
|
Loading…
Reference in New Issue