Logging failed connection attempts.

fix #362
This commit is contained in:
Antoine Nguyen
2013-01-21 13:31:16 +01:00
parent 9c70898828
commit 79ec95cf3a
2 changed files with 19 additions and 1 deletions
+4
View File
@@ -6,6 +6,7 @@ from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _
from modoboa.lib import events
from modoboa.lib.webutils import _render_to_string
from modoboa.lib.sysutils import log_warning
from modoboa.admin import views as admviews
from forms import LoginForm
from modoboa.auth.lib import *
@@ -36,6 +37,9 @@ def dologin(request):
next = reverse(admviews.domains)
return HttpResponseRedirect(next)
error = _("Your username and password didn't match. Please try again.")
log_warning(_("Failed connection attempt from %s as user %s" \
% (request.META["REMOTE_ADDR"], form.cleaned_data["username"])))
next = request.POST.get("next", None)
httpcode = 401
else:
+15 -1
View File
@@ -4,7 +4,8 @@
This module extra functions/shortcuts to communicate with the system
(executing commands, etc.)
"""
import logging
import logging.handlers
from modoboa.lib import parameters
def exec_cmd(cmd, **kwargs):
@@ -21,3 +22,16 @@ def exec_as_vuser(cmd):
exec_cmd("echo '%s' >> /tmp/vmail.log" % output)
return False
return True
def __log(msg, facility=logging.handlers.SysLogHandler.LOG_AUTH):
logger = logging.getLogger('modoboa')
logger.setLevel(logging.DEBUG)
handler = logging.handlers.SysLogHandler(address='/dev/log', facility=facility)
formatter = logging.Formatter('%(name)s: %(levelname)s %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)
return logger
def log_warning(msg):
logger = __log(msg)
logger.warning(msg)