Repository: fail2ban/fail2ban

Issue:
WARNING 'ignoreregex' not defined
Hello there

I'm seeing this error each time I restart fail2ban:

```
WARNING 'ignoreregex' not defined in 'Definition'. Using default one: ''
```

No idea to which one filter this is referring to. Any ideas?

Here more information. Thanks!

```
$ fail2ban-client -d -v
INFO Using socket file /var/run/fail2ban/fail2ban.sock
WARNING 'ignoreregex' not defined in 'Definition'. Using default one: ''
['set', 'loglevel', 3]
['set', 'logtarget', '/var/log/fail2ban.log']
...
```

```
$ fail2ban-client -V
Fail2Ban v0.8.11
```



Discussion:
is just a warning, and already "fixed" within #858. 
@binarykitchen may be use a search before post the issue :)
issue can be closed.

I guess we better define them for all filters to close this one once and forever!

```
$> grep ignoreregex -L config/filter.d/*conf | grep -v common
config/filter.d/counter-strike.conf
config/filter.d/groupoffice.conf
config/filter.d/kerio.conf
config/filter.d/monit.conf
config/filter.d/nsd.conf
config/filter.d/portsentry.conf
config/filter.d/selinux-ssh.conf
config/filter.d/squid.conf
config/filter.d/squirrelmail.conf
config/filter.d/stunnel.conf
```

will do now

thanks guys and sorry for not searching first


Resolving patch:
diff --git a/fail2ban/client/filterreader.py b/fail2ban/client/filterreader.py
--- a/fail2ban/client/filterreader.py
+++ b/fail2ban/client/filterreader.py
@@ -71,7 +71,7 @@ def convert(self):
 				for regex in value.split('\n'):
 					# Do not send a command if the rule is empty.
 					if regex != '':
-						stream.append(["set", self._jailName, "addignoreregex", regex])		
+						stream.append(["set", self._jailName, "addignoreregex", regex])
 		if self._initOpts:
 			if 'maxlines' in self._initOpts:
 				# We warn when multiline regex is used without maxlines > 1
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -124,6 +124,9 @@
 		('/etc/fail2ban/filter.d',
 			glob("config/filter.d/*.conf")
 		),
+		('/etc/fail2ban/filter.d/ignorecommands',
+			glob("config/filter.d/ignorecommands/*")
+		),
 		('/etc/fail2ban/action.d',
 			glob("config/action.d/*.conf") +
 			glob("config/action.d/*.py")


Test patch:
diff --git a/fail2ban/tests/files/logs/apache-fakegooglebot b/fail2ban/tests/files/logs/apache-fakegooglebot
new file mode 100644
--- /dev/null
+++ b/fail2ban/tests/files/logs/apache-fakegooglebot
@@ -0,0 +1,5 @@
+# Apache 2.2
+# failJSON: { "time": "2015-01-31T14:29:44", "match": true, "host": "66.249.66.1" }
+66.249.66.1 - - - [31/Jan/2015:14:29:44 ] example.com "GET / HTTP/1.1" 200 814 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" + 293 1149 546
+# failJSON: { "time": "2015-01-31T14:29:44", "match": false, "host": "93.184.216.34" }
+93.184.216.34 - - - [31/Jan/2015:14:29:44 ] example.com "GET / HTTP/1.1" 200 814 "-" "NOT A __GOOGLE_BOT__" + 293 1149 546
diff --git a/fail2ban/tests/filtertestcase.py b/fail2ban/tests/filtertestcase.py
--- a/fail2ban/tests/filtertestcase.py
+++ b/fail2ban/tests/filtertestcase.py
@@ -1011,6 +1011,12 @@ def testTextToIp(self):
 			else:
 				self.assertEqual(res, [])
 
+	def testIpToName(self):
+		res = DNSUtils.ipToName('66.249.66.1')
+		self.assertEqual(res, 'crawl-66-249-66-1.googlebot.com')
+		res = DNSUtils.ipToName('10.0.0.0')
+		self.assertEqual(res, None)
+
 class JailTests(unittest.TestCase):
 
 	def testSetBackend_gh83(self):
diff --git a/fail2ban/tests/samplestestcase.py b/fail2ban/tests/samplestestcase.py
--- a/fail2ban/tests/samplestestcase.py
+++ b/fail2ban/tests/samplestestcase.py
@@ -141,7 +141,8 @@ def testFilter(self):
 
 	return testFilter
 
-for filter_ in filter(lambda x: not x.endswith('common.conf'), os.listdir(os.path.join(CONFIG_DIR, "filter.d"))):
+for filter_ in filter(lambda x: not x.endswith('common.conf') and x.endswith('.conf'),
+					  os.listdir(os.path.join(CONFIG_DIR, "filter.d"))):
 	filterName = filter_.rpartition(".")[0]
 	if not filterName.startswith('.'):
 		setattr(