ldapユーザーを使用するようにSolarisを構成しました。 LDAP サーバーは Samba4 DC で、クライアントは Solaris 11.4 です。
このコマンドでサーバーに「登録」しました。
ldapclient manual \
-a credentialLevel=proxy \
-a authenticationMethod=sasl/gssapi \
-a proxyDN=cn=proxyldap,cn=Users,dc=mydom,dc=priv \
-a proxyPassword=******* \
-a defaultSearchBase=dc=mydom,dc=priv \
-a debugLevel=6 \
-a domainName=mydom.priv \
-a "defaultServerList=10.3.0.4" \
-a attributeMap=group:userpassword=unixUserPassword\
-a attributeMap=group:gidnumber=gidNumber \
-a attributeMap=passwd:cn=cn \
-a attributeMap=passwd:gidnumber=gidNumber \
-a attributeMap=passwd:uidnumber=uidNumber \
-a attributeMap=passwd:homedirectory=homeDirectory \
-a attributeMap=passwd:loginshell=loginShell \
-a attributeMap=shadow:userpassword=unixUserPassword \
-a objectClassMap=group:posixGroup=group \
-a objectClassMap=passwd:posixAccount=user \
-a serviceSearchDescriptor=passwd:dc=mydom,dc=priv?sub \
-a serviceSearchDescriptor=group:dc=mydom,dc=priv?sub
設定がOKに戻りました。
Fingerが動作し、Solarisでユーザー「pino」を検索します。
finger pino
Login name: pino In real life: pino
Directory: /home/pino Shell: /bin/bash
Never logged in.
No unread mail
No Plan.
ldaplistはエラーを返します!
ldaplist passwd
ldaplist: libsldap.so.1 internal error
ldaplist -a sasl/GSSAPI passwd
ldaplist: (standalone auth error)
Configuration syntax error: Unable to set parameter from a client in __ns_ldap_setParam()
getent passwdは機能しますが、50%しか機能しません。
getent passwd |grep pino
pino:x:3000014:100:pino:/home/pino:/bin/bash
getent passwd pino
IDが機能しません
id pino
id: invalid user name: "pino"
私は何を見逃していますか?
/etc/nsswitch.conf 問題ありません
cp /etc/nsswitch.ldap /etc/nsswitch.conf
答え1
解決策/解決方法が見つかりましたが、50%しか完了していません。
この設定を有効にすると(暗号化されていないgssapi強力な認証を可能にするSamba)、すべてのコマンドが正常に動作します(ldaplist ok、id ok、su ok)。
ldapclient -v manual \
-a credentialLevel=proxy \
-a authenticationMethod=simple \
-a proxyDN=cn=proxyldap,cn=Users,dc=mydom,dc=priv \
-a proxyPassword=******* \
-a defaultSearchBase=dc=mydom,dc=priv \
-a debugLevel=6 \
-a domainName=mydom.priv \
-a "defaultServerList=10.3.0.4" \
-a attributeMap=group:userpassword=unixUserPassword\
-a attributeMap=group:gidnumber=gidNumber \
-a attributeMap=passwd:cn=cn \
-a attributeMap=passwd:gidnumber=gidNumber \
-a attributeMap=passwd:uidnumber=uidNumber \
-a attributeMap=passwd:homedirectory=HomeDirectory \
-a attributeMap=passwd:unixhomedirectory=unixHomeDirectory \
-a attributeMap=passwd:loginshell=loginShell \
-a attributeMap=passwd:gecos=gecos \
-a attributeMap=shadow:userpassword=unixUserPassword \
-a objectClassMap=group:posixGroup=group \
-a objectClassMap=passwd:posixAccount=user \
-a objectClassMap=shadow:shadowAccount=user \
-a serviceSearchDescriptor=passwd:dc=mydom,dc=priv?sub \
-a serviceSearchDescriptor=group:dc=mydom,dc=priv?sub
しかし、Sambaで強力な認証を有効にし、Solarisでgssapi認証を有効にするには..
ldapclient -v manual \
-a credentialLevel=proxy \
-a authenticationMethod=sasl/gssapi \
-a proxyDN=cn=proxyldap,cn=Users,dc=mydom,dc=priv \
-a proxyPassword=******* \
-a defaultSearchBase=dc=mydom,dc=priv \
-a debugLevel=6 \
-a domainName=mydom.priv \
-a "defaultServerList=10.3.0.4" \
-a attributeMap=group:userpassword=unixUserPassword\
-a attributeMap=group:gidnumber=gidNumber \
-a attributeMap=passwd:cn=cn \
-a attributeMap=passwd:gidnumber=gidNumber \
-a attributeMap=passwd:uidnumber=uidNumber \
-a attributeMap=passwd:homedirectory=HomeDirectory \
-a attributeMap=passwd:unixhomedirectory=unixHomeDirectory \
-a attributeMap=passwd:loginshell=loginShell \
-a attributeMap=passwd:gecos=gecos \
-a attributeMap=shadow:userpassword=unixUserPassword \
-a objectClassMap=group:posixGroup=group \
-a objectClassMap=passwd:posixAccount=user \
-a objectClassMap=shadow:shadowAccount=user \
-a serviceSearchDescriptor=passwd:dc=mydom,dc=priv?sub \
-a serviceSearchDescriptor=group:dc=mydom,dc=priv?sub
すべての戻りエラー。良い解決策はstarttlsを使用することですが、私はsaslを使用したいと思います。 ProxyldapユーザーのためにSambaサーバーにサブジェクトを作成しました。
#!/bin/sh
NAME=proxyldap
SERV=ldap
HOST=solaris11
DOMAIN=mydom.priv
samba-tool user delete $NAME
samba-tool user create $NAME 22unix33AA@@@@
net ads enctypes set $NAME 24
samba-tool spn add $SERV/$DOMAIN $NAME
samba-tool spn add $SERV/$HOST.$DOMAIN $NAME
samba-tool domain exportkeytab $HOST.keytab --principal=$SERV/$DOMAIN
samba-tool domain exportkeytab $HOST.keytab --principal=$SERV/$HOST.$DOMAIN
Solarisのkrb5.keytabにタブをコピーしました。
(echo rkt solaris1.keytab; echo wkt /etc/krb5/krb5.keytab )|ktutil
644 (echo rkt solaris2.keytab; echo wkt /etc/krb5/krb5.keytab )|ktutil
しかし、何も動作しません。はっきりしたり、何もない。私は何を見逃していますか? ATM 私はこの悲しい解決を受け入れます。より良い解決策を知っている人がいる場合は、提案してください。その答えを最終的な解決策として受け入れます。