OTRS 6.0.30 LDAP Anbindung

Allgemein Fragen, deutsche News, Ankündigungen & Events zum OTRS
Post Reply
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Hallo,

ich habe OTRS 6.0.30 auf Ubuntu 20.04 installiert.
Nun muss ich die LDAP Anbindung realisieren. Da liegt momentan mein Problem. Ich habe die Config.pm geöffnet und folgende Zeilen direkt oberhalb des Eintrages "# end of your own config options!!! " eingefügt:

#-------------------------------------#
# LDAP Konfiguration / Kunden Auth #
#-------------------------------------#
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = 'XXX';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=YYY,dc=ZZZ';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';

$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=AAA,cn=user,dc=YYY,dc=ZZZ';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'Passwort';


#--------------------------------------#
# LDAP Konfiguration / Kundendaten #
#--------------------------------------#
$Self->{CustomerUser1} = {
Name => 'LDAP Datenquelle',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
Host => 'XXX',
BaseDN => 'dc=YYY,dc=ZZZ',
SSCOPE => 'sub',
UserDN => 'cn=AAA,cn=user,dc=YYY,dc=ZZZ',
UserPw => 'Passwort',

SourceCharset => 'utf-8',
DestCharset => 'iso-8859-1',
},
CustomerKey => 'sAMAccountName',
CustomerID => 'mail',
CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown, required, storage-type
[ 'UserSalutation', 'Title', 'title', 1, 0, 'var' ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var' ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var' ],
[ 'UserLogin', 'Login', 'sAMAccountName', 1, 1, 'var' ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var' ],
[ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
# [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
# [ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
],
};


XXX = Die IP Adresse des AD Servers
YYY = Der 1. Teil des Domainnamens (bei zB. "testdomain.de" das "testdomain")
ZZZ = Der 2. Teil des Domainnamens (bei zB. "testdomain.de" das "de")
AAA = Der Username mit dem die Authentifizierung durchgeführt werden soll.
Passwort = Das spezifische Passwort des genutzten Users.

Soweit ich weiß müsste ich danach (nachdem ich die Config.pm gespeichert und den apache2 Server reloaded habe) mich als root User anmelden und unter Admin -> Kundenbenutzer dann LDAP als Backend auswählen können. Jedoch habe ich diese Option nicht. Muss ich noch irgendetwas eintragen oder aktivieren etc? Muss ich vielleicht den benötigten Port irgendwo noch eintragen?


Im SysLog finde ich folgendes:
ldap_syslog.JPG

Danke schonmal für die Hilfe

Grüße
Ulf
You do not have the required permissions to view the files attached to this post.
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: OTRS 6.0.30 LDAP Anbindung

Post by root »

Hi,

soweit ich die Fehlermeldung korrekt interpretiere will der LDAP Server eine verschlüsselte Verbindung.
Schreib doch mal statt xxx beim Host ldaps:/xxx

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

Re: OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Danke für die schnelle Antwort.
Leider war es scheinbar nicht die Lösung. Habe dann folgenden Fehler bekommen:
2ldap_syslog.JPG
Ich denke, dass der 3. Fehler nicht zu dem Fehlerbild gehört, sondern auf meine Spielereien zurückzuführen ist.


Sind denn ansonsten die Einstellungen soweit richtig? Oder muss noch irgendwo der Port oder ähnliches angegeben werden?
Kann es sein, dass es an einer Firewallfreigabe oder Ähnlichem liegt und nicht an der Config.pm?
Falls dies der Fall sein sollte muss ich nochmal den ITler vor Ort ansprechen, deshalb frage ich

Danke für die Hilfe
Grüße
Ulf
You do not have the required permissions to view the files attached to this post.
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 6.0.30 LDAP Anbindung

Post by reneeb »

Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

Re: OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Hi,

Danke.
Ich habe zwar meinen alten Code beibehalten, aber durch den Beitrag habe ich meine Fehler erkannt und getilgt. Ich habe es jetzt soweit hinbekommen.

Jetzt hätte ich aber noch eine Frage:
Im Moment sind die Kunden über LDAP verbunden und können sich im Kundenportal anmelden.

Wenn ich jetzt noch gewisse LDAP Nutzer als Agenten haben will, dann muss ich einfach nur den Code für die Agentenauthentifizierung auch noch in die Config.pm einfügen und die Konfiguration eigentlich genauso machen wie bei der Kundenanbindung, nur dass ich die Agenten AD Gruppe angebe, korrekt?

Danke für die Hilfe.
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 6.0.30 LDAP Anbindung

Post by reneeb »

Richtig.
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

Re: OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Hi,

ich habe die LDAP Anbindung für Agenten versucht.
Ich komme da jedoch nicht weiter.

Ich habe momentan folgenden Code:

Code: Select all

#___________________________Array für die verschiedenen LDAP Hosts als Backupoptionen__________________
my @ldaphosts = ('ldaps://xxx.yyy.de','ldaps://zzz.yyy.de');
#______________________________________________________________________________________________________

        #---------------------------------------#
        # LDAP Konfiguration / Agenten Auth #
        #---------------------------------------#

$Self->{AuthModule1} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host1'} = \@ldaphosts;
$Self->{'AuthModule::LDAP::BaseDN1'} = 'dc=YYY,dc=de';
$Self->{'AuthModule::LDAP::UID1'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::GroupDN1'} = 'CN=OTRS Agenten,CN=Users,DC=YYY,DC=de';
$Self->{'AuthModule::LDAP::AccessAttr1'} = 'member';
$Self->{'AuthModule::LDAP::UserAttr1'} = 'DN';

$Self->{'AuthModule::LDAP::SearchUserDN1'} = 'XXX@YYY.de';
$Self->{'AuthModule::LDAP::SearchUserPw1'} = 'Passwort';

        # in case you want to add always one filter to each ldap query, use
        # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
        $Self->{'AuthModule::LDAP::AlwaysFilter'} = ''; # No filter until you get it to work


    # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
   # $Self->{'AuthModule::LDAP::Params'} = {
       # port => 7389 , # Secure LDAP uses 636, normal LDAP uses 389
       # timeout => 120,
       # async => 0,
       # version => 3,
        #};

# Sync Data with OTRS DB

$Self->{AuthSyncModule1} = 'Kernel::System::Auth::Sync::LDAP';
$Self->{'AuthSyncModule::LDAP::Host1'} = \@ldaphosts;
$Self->{'AuthSyncModule::LDAP::BaseDN1'} = 'dc=YYY,dc=de';
$Self->{'AuthSyncModule::LDAP::UID1'} = 'sAMAccountName';
$Self->{'AuthSyncModule::LDAP::GroupDN'} = 'CN=OTRS Agenten,CN=Users,DC=YYY,DC=de';
$Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'member';
$Self->{'AuthSyncModule::LDAP::UserAttr'} = 'DN';

$Self->{'AuthSyncModule::LDAP::SearchUserDN1'} = 'XXX@YYY.de';
$Self->{'AuthSyncModule::LDAP::SearchUserPw1'} = 'Passwort';

#folgenden Abschnitt nur aktivieren, wenn die Agenten nach der Anmeldung auch automatisch mit der OTRS DB synchronisiert wer>
#$Self->{'AuthSyncModule::LDAP::UserSyncMap1'} = {
#        UserFirstname => 'givenName',
#        UserLastname  => 'sn',
#        UserEmail     => 'mail',
#	};

Der Vollständigkeitshalber hier auch noch mal der funktionierende Customer LDAP Code:

Code: Select all

    #-------------------------------------#
    # LDAP Konfiguration / Kunden Auth #
    #-------------------------------------#

     $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host'} = \@ldaphosts;
    $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=YYY,dc=de';
    $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';

    $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'XXX@YYY.de';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'Passwort';


#--------------------------------------#
# LDAP Konfiguration / Kundendaten #
#--------------------------------------#
$Self->{CustomerUser1} = {
Name => 'LDAP Datenquelle',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
Host => \@ldaphosts,
BaseDN => 'dc=YYY,dc=de',
SSCOPE => 'sub',
UserDN => 'XXX@YYY.de',
UserPw => 'Passwort',
#Lösung der Umlautprobleme bei Passwörtern
SourceCharset => 'utf-8',
DestCharset => 'iso-8859-1',
},
CustomerKey => 'sAMAccountName',
CustomerID => 'mail',
CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown, required, storage-type
[ 'UserSalutation', 'Title', 'title', 1, 0, 'var' ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var' ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var' ],
[ 'UserLogin', 'Login', 'sAMAccountName', 1, 1, 'var' ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var' ],
[ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
# [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
# [ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
],
};


Wenn ich nun versuche mich am Agentenportal mit dem User xxx@xxx.de anzumelden, funktioniert es nicht. wenn ich mich versuche nur mit dem User xxx anzumelden, dann funbktioniert es auch nicht und ich bekomme in dem Systemlog folgenden Error:
LDAP_Agentenanbindung.JPG
Im Apache2 Error.log steht folgendes:

Code: Select all

ERROR: OTRS-CGI-32 Perl: 5.30.0 OS: linux Time: Tue Feb 16 12:02:06 2021

 Message: No UserID found for 'XXX@YYY.de'!

 RemoteAddress: IP Adresse
 RequestURI: /otrs/index.pl

 Traceback (259482):
   Module: Kernel::System::User::UserLookup Line: 975
   Module: Kernel::System::Auth::Auth Line: 247
   Module: Kernel::System::Web::InterfaceAgent::Run Line: 248
   Module: ModPerl::ROOT::ModPerl::Registry::opt_otrs_bin_cgi_2dbin_index_2epl::handler Line: 38
   Module: (eval) (v1.99) Line: 207
   Module: ModPerl::RegistryCooker::run (v1.99) Line: 207
   Module: ModPerl::RegistryCooker::default_handler (v1.99) Line: 173
   Module: ModPerl::Registry::handler (v1.99) Line: 32
Nun frage ich mich woran es liegt. Der xxx User ist in der Gruppe "OTRS Agenten". Kann es sein, dass das leerzeichen bei dem Gruppennamen störend ist? Es wurde in dem Samba-System die Domänen-Gruppe OTRS Agenten angelegt. Das ist so korrekt oder?

Habe ich sonst etwas in dem Code falsch? Ich wundere mich nur, da das Customer LDAP Backend funktioniert und das Agenten Backend nicht.

Danke für die erneute Hilfe.

Grüße
Ulf
You do not have the required permissions to view the files attached to this post.
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

Re: OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Hi,

ich habe mittlerweile herausgefunden, dass die besagte config bei mir an der Testumgebung funktioniert. Die Testumgebung ist mit Active Directory.

Nun ist aber scheinbar das produktiv genutzte ein Samba System und kein AD (war mir bis eben auch nicht klar)
Gibt es bezüglich dieses Samba Systems notwendige Änderungen?

danke vielmals
Grüße
Ulf
Metalhead88
Znuny newbie
Posts: 45
Joined: 19 Jan 2021, 14:06
Znuny Version: 6.29
Real Name: Ulf Nordmann

Re: OTRS 6.0.30 LDAP Anbindung

Post by Metalhead88 »

Ich habe das Problem gelöst. Danke

Es lag daran, das beim LDAP die CN nicht Users sondern Groups hieß.
Danke
Post Reply