Konfiguracja autofs w LDAP – dla Linuxa i Solarisa
Jeśli masz serwer LDAP jako repozytorium użytkowników w swoich systemach, dobrze też posiadać serwer NFS do przechowywania katalogów domowych użytkowników. Zamiast konfigurować mapy autofs na każdym serwerze lepiej skonfigurować serwer LDAP do ich przechowywania. Zakładam, że serwer NFS (NFSHOME) oraz serwer i klient LDAP są już zainstalowane i skonfigurowane (patrz poprzednie posty).
Co należy zrobić:
1. Włączyć nis.schema
w serwerze LDAP – muszą być dostępne strukturalne klasy obiektów nisObject i nisMap oraz atrybuty nisMapEntry oraz nisMapName – schemat jest dołączony w standardowej dystrybucji OpenLDAP distribution (/etc/openldap/schema
).
2. Dodać mapę nis do serwera LDAP – dla systemu Solaris:
dn: nisMapName=auto_master,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisMap nisMapName: auto_master
dn: nisMapName=auto_home,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisMap nisMapName: auto_home
dla Linuxa – zwróć uwagę na kropki (.) zamiast podkreślników (_):
dn: nisMapName=auto.master,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisMap nisMapName: auto.master
dn: nisMapName=auto.home,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisMap nisMapName: auto.home
3. Dodać obiekty nis do serwera LDAP – w tym przypadku /home/user
zostanie zmapowane do katalogu /app/nethomes/user
na serwerze NFSHOME – ja użyłem tu symbolu wildcard (cn=*
), ale oczywiście można skonfigurować mapę dla każdego użytkownika osobno.
dn: cn=/home,nisMapName=auto_master,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisObject cn: /home nisMapEntry: auto_home -nosuid,nobrowse nisMapName: auto_master
dn: cn=*,nisMapName=auto_home,ou=service,dc=mycompany,dc=com objectClass: top objectClass: nisObject cn: * nisMapEntry: -rw,sync,quota,vers=4 NFSHOME:/app/nethomes/& nisMapName: auto_home
dla Linuxa – trzeba zamienić podkreślnik na kropkę (auto_home -> auto.home itp.)
4. Tylko dla Solarisa – dodać odpowiednie wpisy attributeMap, objectclassMap oraz serviceSearchDescriptor w profilu DUA:
dn: cn=dev,ou=profile,dc=mycompany,dc=com objectClass: DUAConfigProfile objectClass: top cn: dev
attributeMap: automount:automountKey=cn attributeMap: automount:automountInformation=nisMapEntry attributeMap: automount:automountMapName=nisMapName objectclassMap: automount:automount=nisObject objectclassMap: automount:automountMap=nisMap serviceSearchDescriptor: auto_master:ou=service,dc=capgemini,dc=com?sub?nisMapName=auto_master serviceSearchDescriptor: auto_home:ou=service,dc=capgemini,dc=com?sub?nisMapName=auto_home
5. Dodać atrybuty nisDomainObject i nisDomain to obiektu domeny – to jest opcjonalne, ale kojarzę, że miałem jakieś ostrzeżenia jeśli to nie było zdefiniowane. Poniżej pliki ldif rozszerzenia schematu oraz uzupełnionego wpisu:
dn: cn={6}nisdomain,cn=schema,cn=config objectClass: olcSchemaConfig cn: {6}nisdomain olcAttributeTypes: {0}( 1.3.6.1.1.1.1.1.30 NAME 'nisDomain' DESC 'NIS domain ' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'user defined' ) olcObjectClasses: {0}( 1.3.6.1.1.1.2.15 NAME 'nisDomainObject' DESC 'Associa tes a NIS domain with a naming context' SUP top AUXILIARY MUST nisDomain X- ORIGIN 'user defined' )
dn: dc=mycompany,dc=com objectClass: top objectClass: nisDomainObject objectClass: dcObject objectClass: domain dc: mycompany nisDomain: mycompany.com
Konfiguracja klientów w osobnych postach.
Przydatne linki:
https://community.oracle.com/thread/1914905?start=0&tstart=0
https://community.oracle.com/thread/1910088?start=0&tstart=0
http://shanit.blogspot.de/2009/03/solaris-10-autofs.html