查看日志:
SASL/GSSAPI authentication started
Error: Local error
Additional info: SASL(-1): generic failure: GSSAPI Error: Miscellaneous failure (see text) (Did not find a plugin for ccache_ops)

網(wǎng)上搜索有關(guān)GSSAPI ccache_ops未果,不得不自己動(dòng)手調(diào)試.
思路:從bind9-dyndb-ldap軟件包開始及其各依賴包逐個(gè)手動(dòng)降級(jí);或者從正常debian 9開始,修改軟件源為debian 10,逐個(gè)升級(jí).即降級(jí)/升級(jí)一個(gè),測(cè)試一次.
說明:debian系統(tǒng)是無法自動(dòng)降級(jí)的,可修改軟件源為低版或手動(dòng)下載低版deb包重裝軟件包

實(shí)際整個(gè)調(diào)試過程還是盲人摸象.krb5、ldap、sasl都是復(fù)雜的東西,問題有可能在服務(wù)端,也有可能在客戶端,也有可能配置上漏缺.
本人能力有限,也希望從源碼定位到問題位置,按日志出現(xiàn)的關(guān)鍵詞\\\’plugin for ccache_ops\\\’搜索上面三者源代碼,也僅僅搜到片言只語,不知所然.

功夫不負(fù)有心人,從各個(gè)依賴包逐個(gè)降級(jí),很幸運(yùn)定為到libsasl2-modules-gssapi-heimdal軟件包,也就是說,其它相關(guān)的軟件包都用debian 10最新版,配置文件不需更改,
只要將libsasl2-modules-gssapi-heimdal軟件包降級(jí),bind9-dyndb-ldap就正常連接到ldap數(shù)據(jù)庫.
debian 10 版本是2.1.27 dfsg-1
debian 9 版本是2.1.27~101-g0780600 dfsg-3
實(shí)際就一個(gè)文件/usr/lib/x86_64-linux-gnu/sasl2/libgssapiv2.so.2.0.25,用debian 9 版本解包直接替換掉就可.

sasl/gssapi也算比較常用的應(yīng)用,但問題是libsasl2-modules-gssapi-heimdal的2.1.27 dfsg-1版至今到debian 11還一直未更新,采用2.1.27 dfsg-1版的其它sasl/gssapi應(yīng)用都正常.
如openldap客戶端工具在2.1.27 dfsg-1版下正常,如下命令
ldapwhoami -Y GSSAPI -h 192.168.1.11
因此也確定不了2.1.27 dfsg-1版這個(gè)出錯(cuò)究竟是BUG還是這個(gè)升級(jí)版需sasl/gssapi客/服進(jìn)一步配置?
或者如我的需求bind9-dyndb-ldap SASL/GSSAPI就比較少見了,所以網(wǎng)上幾乎搜不到相關(guān)問題,也確定不了是不是bind9-dyndb-ldap問題.
該問題很平靜,所以可能深藏著.要調(diào)試bind9-dyndb-ldap很麻煩,轉(zhuǎn)個(gè)思路,自己編寫最簡(jiǎn)單的ldap/sasl/gssapi/krb5客戶端程序測(cè)試,果不其然,發(fā)現(xiàn)是使用內(nèi)存票據(jù)會(huì)出現(xiàn)該問題.
krb5客戶端可以指定票據(jù)的位置,如下
"MEMORY:krb5cc_1000" 存放在進(jìn)程內(nèi)存里
"FILE:/tmp/krb5cc_1000" 存放在臨時(shí)目錄下

krb5的票據(jù)通常是放在臨時(shí)目錄下,即如/tmp/krb5cc_1000的票據(jù)文件,openldap客戶端工具就是讀取臨時(shí)目錄下的票據(jù).
經(jīng)測(cè)試,libsasl2-modules-gssapi-heimdal 2.1.27 dfsg-1版對(duì)內(nèi)存票據(jù)有BUG,對(duì)文件票據(jù)正常.
在前篇 <Kerberos LDAP NFSv4 實(shí)現(xiàn)單點(diǎn)登錄> SSSD客戶機(jī)安裝提到libsasl2-modules-gssapi-mit和libsasl2-modules-gssapi-heimdal兩者可互相替換.
因此安裝debian 10的libsasl2-modules-gssapi-mit,對(duì)內(nèi)存票據(jù)已完全正常.mit版更主流,或許正因?yàn)橛衜it版可代替heimdal版,所以heimdal版問題很平靜.

小結(jié):
對(duì)于sasl/gssapi應(yīng)用,請(qǐng)安裝libsasl2-modules-gssapi-mit

后記:
1.對(duì)于krb5客戶端,盡量使用mit版,Kerberos本就是mit發(fā)明,更活躍.
2.我的Kerberos服務(wù)器為什么要采用heimdal版?
因?yàn)槲业哪繕?biāo)Kerberos LDAP一體,兩套密碼同步.

                                        mit                              heimdal 
-----------------------------------------------------------------------------------------------------
krb5服務(wù)器通過EXTERNAL連接ldap       不支持                                  支持
通過slapd-smbk5pwd同步密碼            不支持                                   支持

3.debian 10的bind9-dyndb-ldap配置格式有新的變化
客/服配置請(qǐng)先參考前篇<Kerberos LDAP NFSv4 實(shí)現(xiàn)單點(diǎn)登錄(續(xù)1)–dns dhcp>,然后按下面:

但請(qǐng)按Kerberos使用自己本地?cái)?shù)據(jù)庫來理解下面的配置,因?yàn)槭褂胠dap作為Kerberos后端數(shù)據(jù)庫后來理解krb5主體和ldap條目很混淆

1)bind9-dyndb-ldap配置
/etc/bind/named.conf.ldap
//其它略

//不同體系路徑如/usr/lib/i386-linux-gnu/bind/ldap.so
dyndb "my_db_name" "/usr/lib/bind/ldap.so" {
server_id "";
directory "/var/cache/bind";
uri "ldap://127.0.0.1";
base "ou=dns,dc=ctp,dc=net";

//認(rèn)證機(jī)制
auth_method "sasl";
sasl_mech "GSSAPI";
//–v– 添加krb5主體
krb5_principal "dnsadmin@CTP.NET";
krb5_keytab "FILE:/etc/bind/krb5.keytab";
//–^–
timeout 50;
reconnect_interval 100;
};

2)ldap配置
/etc/ldap/slapd.d/cn=config/olcDatabase={1}mdb.ldif
#其它略

olcAccess: {3}to dn.subtree="ou=dns,dc=ctp,dc=net" by dn="uid=dnsadmin,cn=gssapi,cn=auth" write by * read

說明:
配置krb5主體dnsadmin寫ldap數(shù)據(jù)庫權(quán)限,如果只需讀權(quán)限,應(yīng)該不需配置;
"cn=gssapi,cn=auth"是固定格式的,用來表示是krb5條目(此處krb5條目不是指使用ldap作為Kerberos后端存放在ldap數(shù)據(jù)庫里所體現(xiàn)的條目,你可按Kerberos使用自己數(shù)據(jù)庫來理解),ldap數(shù)據(jù)庫不需創(chuàng)建存儲(chǔ)"uid=dnsadmin,cn=gssapi,cn=auth" krb5條目;
其它的名字"dnsadmin"、"dns"、"ctp"、"net"按你實(shí)際名稱填寫.

3)運(yùn)行以下命令
kadmin -l add -r –use-defaults dnsadmin
kadmin -l ext -k /etc/bind/krb5.keytab dnsadmin

使用ldap作為Kerberos后端,add命令自動(dòng)在ldap數(shù)據(jù)庫里添加krb5主體dnsadmin的條目"krb5PrincipalName=dnsadmin@CTP.NET,ou=hdkrb5,dc=ctp,dc=net"

chown bind:bind /etc/bind/krb5.keytab
chmod o-r /etc/bind/krb5.keytab
chmod g-r /etc/bind/krb5.keytab

4.其它注意事項(xiàng)
我的 krb5 ldap bind9 bind9-dyndb-ldap 一體機(jī)kdc服務(wù)器(192.168.1.11)
1)
當(dāng)/etc/resolv.conf為空
或設(shè)nameserver 127.0.0.1
或設(shè)nameserver 192.168.1.11
或設(shè)nameserver 192.168.1.xx 同kdc服務(wù)器網(wǎng)段隨便不存在的地址
bind9啟動(dòng)失敗,提示超時(shí)

假如以上述resolv.conf配置,將/etc/bind/named.conf.ldap的sasl/gssapi認(rèn)證機(jī)制改為匿名
auth_method "none";
bind9啟動(dòng)能成功,雖然匿名無法寫入ldap,但dig讀取成功;說明可能是sasl/gssapi機(jī)制的緣故.

2)
必須往/etc/resolv.conf添加和kdc服務(wù)器不同網(wǎng)段不存在的地址
如nameserver 127.0.0.2
或nameserver 192.168.2.22

sasl/gssapi認(rèn)證機(jī)制,bind9啟動(dòng)才成功,緣由不明.

更多關(guān)于云服務(wù)器域名注冊(cè),虛擬主機(jī)的問題,請(qǐng)?jiān)L問三五互聯(lián)官網(wǎng):m.shinetop.cn

贊(0)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡(luò)內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。郵箱:3140448839@qq.com。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明出處:三五互聯(lián)知識(shí)庫 » Kerberos LDAP NFSv4 實(shí)現(xiàn)單點(diǎn)登錄(續(xù)4)--SASL/GSSAPI

登錄

找回密碼

注冊(cè)

主站蜘蛛池模板: 不卡乱辈伦在线看中文字幕| 体态丰腴的微胖熟女的特征| 一本色道久久88亚洲精品综合| 免费国产va在线观看| 久久精品国产久精国产| 精品久久精品久久精品久久 | 综合欧美视频一区二区三区| 亚洲国产日韩精品一区二区三区| 国产色视频一区二区三区| 迁安市| 亚洲国产精品一二三四五| 中文字幕人妻无码一夲道| 国产精品中文字幕av| 亚洲色成人网站www永久四虎| 日本高清中文字幕一区二区三区 | 久久亚洲精品情侣| 日本熟妇XXXX潮喷视频| 在线亚洲午夜片av大片| 精精国产xxx在线观看| 中文字幕第一页亚洲精品| 夜夜躁狠狠躁日日躁视频| 国产成人亚洲老熟女精品| 国产精品免费视频不卡| 四虎成人精品在永久免费| 性中国videossexo另类| 久久碰国产一区二区三区| 老师扒下内裤让我爽了一夜| 亚成区成线在人线免费99| 毛片在线看免费| 亚洲最大日韩精品一区| 国产视频一区二区在线看| 亚洲午夜亚洲精品国产成人| 亚洲精品国产第一区二区| 亚洲中文字幕无码永久在线| 综合久久av一区二区三区| 一本精品99久久精品77| 荆门市| 国内外精品激情刺激在线| 国产久免费热视频在线观看| 陇西县| 久久久久久久久久久久中文字幕|