Problem: Users are unable to login into UMC and receive a traceback

Problem

Problem: Users are unable to login into UMC and they get the following error message:

Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/univention/management/console/base.py", line 249, in execute
    function.__func__(self, request, *args, **kwargs)
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 959, in _authentication_finished2
    self.initalize_processor(request)
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 996, in initalize_processor
    self.processor.set_credentials(**self.__credentials)
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 171, in set_credentials
    self._search_user_dn()
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 190, in _search_user_dn
    if self.lo and self._username:
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 152, in lo
    return get_machine_connection(write=False)[0]
  File "/usr/lib/pymodules/python2.7/univention/management/console/ldap.py", line 100, in get_machine_connection
    return connection()
  File "/usr/lib/pymodules/python2.7/univention/management/console/ldap.py", line 140, in _decorated
    kwargs[loarg], kwargs[poarg] = lo, po = getter()
  File "/usr/lib/pymodules/python2.7/univention/management/console/ldap.py", line 130, in getter
    conn = connection()
  File "/usr/lib/pymodules/python2.7/univention/management/console/ldap.py", line 63, in connection
    return _getMachineConnection(**kwargs)
  File "/usr/lib/pymodules/python2.7/univention/admin/uldap.py", line 147, in getMachineConnection
    lo = univention.uldap.getMachineConnection(start_tls, decode_ignorelist=decode_ignorelist, ldap_master=ldap_master)
  File "/usr/lib/pymodules/python2.7/univention/uldap.py", line 91, in getMachineConnection
    return access(host=ucr['ldap/server/name'], port=port, base=ucr['ldap/base'], binddn=ucr['ldap/hostdn'], bindpw=bindpw, start_tls=start_tls, decode_ignorelist=decode_ignorelist, reconnect=reconnect)
  File "/usr/lib/pymodules/python2.7/univention/uldap.py", line 152, in __init__
    self.__open(ca_certfile)
  File "/usr/lib/pymodules/python2.7/univention/uldap.py", line 206, in __open
    self.lo.simple_bind_s(self.binddn, self.__encode_pwd(self.bindpw))
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 879, in simple_bind_s
    res = self._apply_method_s(SimpleLDAPObject.simple_bind_s,*args,**kwargs)
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 860, in _apply_method_s
    return func(self,*args,**kwargs)
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 215, in simple_bind_s
    resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all=1,timeout=self.timeout)
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 476, in result3
    resp_ctrl_classes=resp_ctrl_classes
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 483, in result4
    ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop)
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 106, in _ldap_call
    result = func(*args,**kwargs)
INVALID_CREDENTIALS: {'desc': 'Invalid credentials'}

Solution

The password of the server should be reset:

udm computers/$(ucr get server/role) modify --dn "$(ucr get ldap/hostdn)" --set password="$(</etc/machine.secret)"
service univention-management-console-server restart
service univention-management-console-web-server restart
Mastodon