Szeretnék tanácsot kérni apache proxy beállításban, mert elakadtam egy feladat megoldásában.
Van két LDAP szerver (az egyik egy windows AD a másik unix openldap, de ennek alapvetően itt nincs jelentősége). Az első szerveren a felhasználók és a hozzájuk tartozó jelszavak vannak tárolva, a másodikban ugyan vannak felhasználok megegyező névvel, de nincs hozzájuk jelszó tárolva, viszont itt találhatók azok a csoportok amik alapján engedélyezném a belépést.
A két szerveren lévő felhasználónevek megegyeznek. Azaz pl, mindkét ldap-ban szerepel a „user1” felhasználó (elsőn van hozzá jelszó is), de csak a második szerveren létezik a „mygroup” csoport.
A kérdésem az, hogy láttok-e megoldást arra, hogy apache-on ilyen módon, tehát az első szerveren megtörténjen az autentikáció (felhasználónév/jelszóval), a másik szerveren pedig a csoport alapú autorizáció.
Ezzel a config -gal próbálkoztam, de látszólag, ha az első ldap-ban megtörtént autentikáció akkor az apache nem keresi tovább a csoportokat a másikban.
#LDAP URL for internal users <AuthnProviderAlias ldap ldapserver1-intern> AuthLDAPBindDN "cn=apache,ou=people,dc=acc,o=myorg" AuthLDAPBindPassword "mypassword" AuthLDAPURL ldaps://ldapserver1/ou=intern-users,dc=acc,o=myorg?uid?sub </AuthnProviderAlias> <AuthnProviderAlias ldap ldapserver2-intern> AuthLDAPBindDN "cn=apache,ou=people,dc=acc,o=myorg" AuthLDAPBindPassword "mypassword" AuthLDAPURL ldaps://ldapserver2/ou=intern-users,dc=acc,o=myorg?uid?sub </AuthnProviderAlias> <Location /> AuthBasicProvider ldapserver1-intern ldapserver2-intern AuthType Basic AuthName LDAP_Protected_Place Require ldap-group cn=mygroup,ou=intern-groups,dc=acc,o=myorg ProxyPass / http://myurl.com/ ProxyPassReverse / http://myurl.com/ </Location>
A válaszokat előre is köszönöm.
Hozzászólások
Szerintem csak egyedi megoldással lehet ezt megcsinálni, mert nem szokványos igény.
Ha nem akarsz saját Apache Auth modult fejleszteni, akkor próbáld meg external providerrel és csinálsz egy scriptet
https://github.com/haegar/mod-auth-external/wiki/ConfigApache24
https://www.server-world.info/en/note?os=Ubuntu_18.04&p=httpd&f=10
1. ldapsearch bindpw vel AD ban, mondjuk saját magára keressen rá.
- megjegyzem, hogy a password itt cleartextben közlekedik, így óvatosan, illetve mint minden inputot fontos megfelelően biztonságosan kezelni
2. (ha 1. success akkor ldapsearch mindegy milyen bindpw vel keressen a megfelelő user és group filterrel)
3. external modul számára megfelelő visszatérés
Üdv Csabka
Authentikálni Kerberosból és authorizáció LDAP-ból:
https://danieljamesscott.org/all-articles/10-articles/configuration-gui…
vagy burkold be radiusba
Köszönöm a hozzászólásokat. Azt hiszem ezek alapján tovább tudok kísérletezni.