Hello,
SAMBA auth-ot szeretnék LDAP-ból. A talált leírások nem igazán segítettek - a lényeg: nem kell domain, nincs szükség csoport meg miegyéb kezelésre, annyit kellene megoldani, hogy egy share-hez a hozzáférést a SAMBA egy LDAP lekérdezés alapján dönti el, hogy mehet e.
Próbáltam kerülő úton: Samba -> PAM -> LDAP, de ez sem működik, pedig egyszerűnek tűnik.
/etc/pam_ldap.conf-ban bármit állítok (pl: ldap szerver IP címét), arra nem reagál.
A /etc/libnss-ldap.conf-ot használja, oda ezeket írtam - amik relevánsak:
host 10.2.1.243
uri ldap://10.2.1.243/
base o=Bigyo
pam_filter objectclass=organizationalPerson
pam_login_attribute uid
az LDAP-hoz anon hozzáférés van, és _nem_openldap_, hanem NDS (Novell).
Az ldap modul a szervertől az alábbi filterrel kérdez:
(&(uid=hegeduse)(objectClass=posixAccount))
(ezt a tcpdump alapján szedtem ki)
amire term. nincs találat, mivel nincs ilyen objectclass.
Mit kellene tennem, hogy működjön?
(objectClass=organizationalPerson lenne a helyes szűrő - de hová írjam, hogy legyen hatása?)
Köszi:
a.
- 3748 megtekintés
Hozzászólások
a sambaban allitsd be
/etc/samba/smb.conf:
ldap admin dn = cn=admin,dc=domain,dc=hu
ldap delete dn = no
# ldap filter = (&(uid=%u)(objectClass=sambaSamAccount))
ldap group suffix = ou=groups
ldap machine suffix = ou=machines
ldap passwd sync = yes
# ldap replication sleep = 1000
# ldap ssl = off
ldap suffix = dc=domain,dc=hu
# ldap timeout = 5
ldap user suffix = ou=people
passdb backend = ldapsam:ldap://127.0.0.1
- A hozzászóláshoz be kell jelentkezni
hello,
bocs, de ezeken már túl vagyok.
Azt írtam, h anon hozzáférés van, de ez azt jelenti, hogy nincs admin, tehát az admin dn nem játszik.
Amikor azt írtam, hogy nincs szükség csoport, meg miegyéb kezelésére, akkor arra gondoltam, hogy nem kell jelszó sync, sem user felvitel, törlés, csoport felvitel, törlés, stb...
Az is jó lenne, ha közvetlen a Samba auth-olna az LDAP-ból, de az összes példa azt feltételezi, hogy egyben DC lesz a gép, holott erre nincs szükség.
Amúgy így néz ki a konfig:
workgroup = WORKGROUP
server string = %h server (Samba %v)
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 9
panic action = /usr/share/samba/panic-action %d
encrypt passwords = true
passdb backend = ldapsam:ldap://10.2.1.243
ldapsam:trusted = yes
ldap suffix = o=IT
ldap user suffix = ou=Group
ldap group suffix = ou=Group
obey pam restrictions = yes
invalid users = root
socket options = TCP_NODELAY
domain logons = no
enable privileges = yes
local master = no
domain master = no
log level = 3 passdb:5 auth:10
Az LDAP fa adott, az attributumok miatt ua. a user és a group suffix. "dc" nincs a fában. Ha állítunk be admin cn-t, akkor annak admin jogok kellenek a fában is, és egyböl létrehozza ezt az objektumot: cn=$HOST,o=$SUFFIX, de ezt _sem_ akarjuk, nem csak hogy szükség nincs rá, hanem lehetőség sem.
Kicsit talán fura a helyzet, de ez van, ezt kellene megoldani valahogy, emiatt gondoltam arra, h PAM-on keresztül autholok LDAP-ból. De az meg tök más filter-attributummal kérdez, mint amit beállítok a konfigban.
Egyéb ötlet?
Köszi:
a.
- A hozzászóláshoz be kell jelentkezni
Ez a lényeg:
"az LDAP-hoz anon hozzáférés van, és _nem_openldap_, hanem NDS (Novell)."
Milyen verziójú az NDS?
Milyen OS alatt fut? (netware vagy linux + verzió)
A felhasználók "UNIX profilja" létezik-e az NDS-ben?
( ha létrehozod akkor elméletileg a posixAccount entry-nek is létre kellene jönnie, ha úgy különben az NDS séma tartalmazza )
libnss-ldap:
nss_map_objectlass, nss_map_attribute :-)
( itt tudod megmondani neki hogy a "posixAccount" és társai helyett mit olvasson... )
- A hozzászóláshoz be kell jelentkezni
Hello,
Milyen verziójú az NDS?
igazából nem NDS, hanem eDirectory :)
Annyira nem vágom, hétfőn megkérdem.
Milyen OS alatt fut?
Netware
A felhasználók "UNIX profilja" létezik-e az NDS-ben?
nem, de IMHO nem is kell, hogy létezzen.
Más auth-ok mennek annélkül is, pl apache-ldap (HTTP auth), vagy írtunk már alkalmazást is (PHP), ami LDAPból auth-ol - ott meg lehetett adni a filter-t, és úgy működik.
libnss-ldap:
nss_map_objectlass, nss_map_attribute :-)
ehh...
pedig ezt néztem, de most, h be akartam kopizni ide, akkor vettem észre, h bebénáztam, és elírtam a paramétert:
nss_map_objectclass organizatnioalPerson user
helyett ez lesz vszínüleg a helyes:
nss_map_objectclass organizationalPerson user
Nna, ezt kipróbálom,
köszi:
a.
- A hozzászóláshoz be kell jelentkezni
hello,
bocs, közben rájöttem, h mgsem jó a libnss-ldap.conf ilyen jellegű beállítása, mivel ugyan hibás volt a string, de mágsem azt kérdezte az ldap "kliens" a szervertől, hanem maradt a Posix attributum.
Sőt:
# grep posixAccount libnss-ldap.conf
#
bár lehet, h default a posixAccount, és explicit meg kéne valamit adni. :)
Mindegy, késő van :))
Egyéb ötlet?
köszi:
a.
- A hozzászóláshoz be kell jelentkezni
Miután az ldap-ot beállítottad, és működik is a kliensen (mondjuk felhasználói belépés - login), akkor a
samba ldap auth a következővel megy tökéletesen:
ldap admin dn = cn=Manager,dc=domain,dc=hu
ldap suffix = dc=valami, dc=domain,dc=hu
passdb backend = ldapsam:ldap://valami.domain.hu
idmap backend = ldap:ldap://valami.domain.hu
ldap group suffix = ou=Group
ldap user suffix = ou=People
ldap machine suffix = ou=People
ldap passwd sync = yes
security = user
A secrets.tdb-ben benne kell lennie a helyes Manager passwd-nek (!).
És persze a az objectclass : sambaSamAccount az ldapfában benne köll lenni!
(sambaLMpassword, sambaNTpassword, sambaSID, sambaAcctflags)
- A hozzászóláshoz be kell jelentkezni
hello,
és működik is a kliensen
mit értesz kliens alatt? ahol fut a samba?
(mondjuk felhasználói belépés - login)
de én kimondottan nem _akarom_ a login-t LDAP-ból, csak a SAMBA auth-oljon LDAP-ból.
Semmi más.
köszi:
a.
- A hozzászóláshoz be kell jelentkezni
Kliens alatt értem azokat a gépeket, akik a samba-t igénybeveszik.
Mondjuk egy Windows.
Lehet samba-t külön ldap-ból, akkor csak a samba-t konfigurálod ldap-ra. Természetesen az alap ldap beállításokat (slapd.cfg, ldap.cfg) meg kell tenni a samba szerveres gépen, majd CSAK a samba-t ráálítani az előbb ismertetett módon.
- A hozzászóláshoz be kell jelentkezni