Externer LDAP/AD Mirror lmn 7.x

,

Hi,

Ich habe es schon mit dem binduser und mit dem global-admin probiert:

ldapsearch -LLL -D 'CN=global-admin,OU=Management,OU=GLOBAL,DC=linuxmuster,DC=lan' '(samaccountname=testnutzer)' -H ldaps://10.9.0.2 -W -b 'DC=linuxmuster,DC=lan'

VG, Dorian

Hallo Dorian,

kommt bei wbinfo -u und wbinfo -g was Gescheites raus?
Wie sieht die Ausgabe von ldbsearch --url=/var/lib/samba/private/sam.ldb aus?

Gruß
Thomas

Hi Thomas,

Bei den wbinfo Befehlen werden alle Benutzernamen ausgegeben. Bei ldbsearch alle objejte mit allen Attributen (soweit ich das beurteilen kann)
ldbsearch --url=/var/lib/samba/private/sam.ldb '(samaccountname=testnutzer)'
Gibt meinen Testnutzer aus, also das passt würde ich sagen.

VG, Dorian

Hallo zusammen,

wir hätten auch Interesse!
Wie genau setzt Ihr das „extern“ um? Das ist doch auch ein enormes Sicherheitsdingen, wenn ich einfach eine AD-Replika irgendwo „auf die Wiese“ stelle!? Wo betreibt Ihr / wie schützt Ihr die?

Danke und Gruß,
Jochen

Hi Jochen,

Wir haben das zweite AD auf einem Server, der mit Wireguard an unser internes Netz angeschlossen ist. Sämtlicher Verkehr läuft also über den Wireguard Tunnel.

VG, Dorian

Per Site-to-Site VPN

Hallo Thomas und Dorian,

merci! Makes (OPN)sense! :wink:

Viele Grüße,
Jochen

Hallo Dorian,

ja…die AD-Replizierung funktioniert. Wieso jetzt aber ldapsearch nicht klappt, kann ich dir auch nicht sagen…Fehler 49 heißt eigentlich immer „falscher Benutzer und/oder Kennwort“…da müsste man jetzt weiter schauen…

Gruß
Thomas

Hi Thomas,

Hmm komisch. Könnte das mit dem RODC zusammenhängen, ich hab gelesen, dass die Passwörter da nicht repliziert werden…?

VG, Dorian

Hallo Dorian,

ich habe mit einem RODC noch keine praktischen Erfahrungen gemacht. Wir betreiben den zweiten DC auch als ADDC…

Viele Grüße
Thomas

Hallo Dorian,

Kannst du mit kinit auf dem RODC ein Kerberos-Ticket erstellen?

Funktioniert die LDAP-Abfrage unverschlüsselt?

Gruß
Thomas

Hallo Dorian,

wie sieht die Ausgabe aus mit:
ldapsearch -LLL -D ‚CN=global-admin,OU=Management,OU=GLOBAL,DC=linuxmuster,DC=lan‘ ‚(samaccountname=testnutzer)‘ -H ldaps://10.9.0.2 -W -b ‚DC=linuxmuster,DC=lan‘ -d1

Hi Thomas,

ldap_url_parse_ext(ldaps://10.1.1.11)
ldap_create
ldap_url_parse_ext(ldaps://10.1.1.11:636/??base)
Enter LDAP Password:
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP 10.1.1.11:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.1.1.11:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
attempting to connect:
connect success
ldap_open_defconn: successful
ldap_send_server_request
ber_scanf fmt ({it) ber:
ber_scanf fmt ({i) ber:
ber_flush2: 87 bytes to sd 3
ldap_result ld 0x55e509d49070 msgid 1
wait4msg ld 0x55e509d49070 msgid 1 (infinite timeout)
wait4msg continue ld 0x55e509d49070 msgid 1 all 1
** ld 0x55e509d49070 Connections:
* host: 10.1.1.11  port: 636  (default)
  refcnt: 2  status: Connected
  last used: Wed Dec  8 09:54:01 2021


** ld 0x55e509d49070 Outstanding Requests:
 * msgid 1,  origid 1, status InProgress
   outstanding referrals 0, parent count 0
  ld 0x55e509d49070 request count 1 (abandoned 0)
** ld 0x55e509d49070 Response Queue:
   Empty
  ld 0x55e509d49070 response count 0
ldap_chkResponseList ld 0x55e509d49070 msgid 1 all 1
ldap_chkResponseList returns ld 0x55e509d49070 NULL
ldap_int_select
read1msg: ld 0x55e509d49070 msgid 1 all 1
ber_get_next
ber_get_next: tag 0x30 len 98 contents:
read1msg: ld 0x55e509d49070 msgid 1 message type bind
ber_scanf fmt ({eAA) ber:
read1msg: ld 0x55e509d49070 0 new referrals
read1msg:  mark request completed, ld 0x55e509d49070 msgid 1
request done: ld 0x55e509d49070 msgid 1
res_errno: 49, res_error: <80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 47, v1db1>, res_matched: <>
ldap_free_request (origid 1, msgid 1)
ldap_parse_result
ber_scanf fmt ({iAA) ber:
ber_scanf fmt (}) ber:
ldap_msgfree
ldap_err2string
ldap_bind: Invalid credentials (49)
        additional info: 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 47, v1db1
ldap_free_connection 1 1
ldap_send_unbind
ber_flush2: 7 bytes to sd 3
ldap_free_connection: actually freed

Jup

Nein, da erlaubt er den Bind nicht:

ldap_url_parse_ext(ldap://10.1.1.11)
ldap_create
ldap_url_parse_ext(ldap://10.1.1.11:389/??base)
Enter LDAP Password:
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP 10.1.1.11:389
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.1.1.11:389
ldap_pvt_connect: fd: 3 tm: -1 async: 0
attempting to connect:
connect success
ldap_open_defconn: successful
ldap_send_server_request
ber_scanf fmt ({it) ber:
ber_scanf fmt ({i) ber:
ber_flush2: 87 bytes to sd 3
ldap_result ld 0x55b805cad070 msgid 1
wait4msg ld 0x55b805cad070 msgid 1 (infinite timeout)
wait4msg continue ld 0x55b805cad070 msgid 1 all 1
** ld 0x55b805cad070 Connections:
* host: 10.1.1.11  port: 389  (default)
  refcnt: 2  status: Connected
  last used: Wed Dec  8 09:55:07 2021


** ld 0x55b805cad070 Outstanding Requests:
 * msgid 1,  origid 1, status InProgress
   outstanding referrals 0, parent count 0
  ld 0x55b805cad070 request count 1 (abandoned 0)
** ld 0x55b805cad070 Response Queue:
   Empty
  ld 0x55b805cad070 response count 0
ldap_chkResponseList ld 0x55b805cad070 msgid 1 all 1
ldap_chkResponseList returns ld 0x55b805cad070 NULL
ldap_int_select
read1msg: ld 0x55b805cad070 msgid 1 all 1
ber_get_next
ber_get_next: tag 0x30 len 54 contents:
read1msg: ld 0x55b805cad070 msgid 1 message type bind
ber_scanf fmt ({eAA) ber:
read1msg: ld 0x55b805cad070 0 new referrals
read1msg:  mark request completed, ld 0x55b805cad070 msgid 1
request done: ld 0x55b805cad070 msgid 1
res_errno: 8, res_error: <BindSimple: Transport encryption required.>, res_matched: <>
ldap_free_request (origid 1, msgid 1)
ldap_parse_result
ber_scanf fmt ({iAA) ber:
ber_scanf fmt (}) ber:
ldap_msgfree
ldap_err2string
ldap_bind: Strong(er) authentication required (8)
        additional info: BindSimple: Transport encryption required.
ldap_free_connection 1 1
ldap_send_unbind
ber_flush2: 7 bytes to sd 3
ldap_free_connection: actually freed

VG, Dorian

Hallo Dorian,

der Fehler ist der gleiche, als wenn man ein falsches Kennwort eingibt. Der ldap_bind auf den RODC funktioniert nicht. Evtl. muss man auch hier, wie beim samba-tool drs show-repl mit -U global-admin den SASL Benutzer mitgeben…wäre ein Versuch wert.

Viele Grüße
Thomas

Hi Thomas,

Wie mache ich das? Also den SASL Benutzer mitgeben?
Bin leider nicht so ein riesen Profi mit diesem ganzen AD Kram…

VG, Dorian

Hi Dorian,

überprüf mal, ob die Bind-User in der AD-Gruppe „Allowed RODC
Password Replication Group“ sind…

samba-tool group listmembers „Allowed RODC Password Replication Group“

Gruß
Thomas

Hi Thomas,

Nein, die Gruppe ist leer. Soll ich sie da mal hinzufügen?
Und was ist mit allen anderen Usern? Können die sich dann überhaupt authentifizieren?

VG, Dorian

Hi Dorian,

füg die mal hinzu und teste mal, ob es dann funktioniert.

Zumindest dieser Anleitung nach müssen alle Benutzer, die den RODC benutzen dürfen in dieser Gruppe sein…

Gruß
Thomas

1 „Gefällt mir“

Hi Thomas,

Hmm ok. Vielleicht nehme ich dann einfach einen normalen DC, das scheint mir einfacher zu sein…
Weil so müsste ich ja wirklich jeden Nutzer in diese Gruppe hinzufügen, oder nicht?

VG, Dorian

Auch das Hinzufüge in die Gruppe hat leider nicht geholfen. Die Änderung wurde aber erfolgreich repliziert