本章將提供有關 SunTM Enterprise Authentication Mechanism(企業辯證機制,SEAM)產品的一般性概觀。其中包含下列主題﹕
SEAM 發行版是藉由支援 Kerberos V5 辯證、私密、及整合,專門設計來改善系統的安全性。由於增加了允許單一網路在使用 kerberized 登入機制時簽入,以及提供 kerberized NFSTM 服務等項目,因此安全防護的功效大有改善。
本發行版包括下列內容﹕
密鑰分配中心 (KDC)
KDC 服務
kadmind 及 krb5kdc
KDC 管理公用程式
kadmin、kadmin.local、及 gkadmin
kpropd
Kerberos 公用程式
kdestroy、kinit、klist、及 kpasswd
Kerberized 公用程式及常駐程式
ftp、rcp、rlogin、rsh、及 telnet
ftpd、rlogind、rshd、及 telnetd
說明文件包括下列內容﹕
SEAM 安裝及發行注意事項 (即本文件)
線上援助頁
必須在系統上安裝 Solaris 2.6 或 2.7 發行版之後才能執行本產品。 同時也必須安裝 XFN 及 JDKTM 1.1 版。
SEAM 是一種不斷演進的規格,並且可能隨時變更。
SEAM 共同操作的功能已經同時與 MIT Kerberos V5 1.0 及 NT 5.0 安裝配合測試。
與一個 MIT 安裝共同操作 SEAM 時,應注意下列各項解釋﹕
gkadmin 及 kadmin 無法與 MIT KDC 配合運作。失敗的原因在於 gkadmin 以及 kadmin 是使用 RPCSEC_GSS 協定來確保與 KDC 的連線。 MIT Kerberos V5 1.0 安裝使用一種非標準式的 AUTH_GSSAPI 協定以提供 安全防護。因為這兩種協定互不相同,您無法與一個 MIT KDC 同時使用 gkadmin 及 kadmin。
SEAM 不包括 ksu 指令。 相反地,PAM 是用來讓 su 執行 ksu 的大部份功能。 有一個不同的部份在於 ksu 會查找 .k5login 檔案來查看使用 su 的使用者是否可以在有 Kerberos V5 證書的情況下而不使用密碼。SEAM 中並沒有此種檢查。
SEAM 及 MIT Kerberos V5 編碼無法在相同的主機之上並存。僅管理論上來說可行,卻不受支援。
SEAM 需要執行 rpcbind。這 並非 MIT Kerberos V5 安裝的必要條件。
您可以在下列網站查看有關 SEAM 與 NT 共同操作的資訊﹕http://www.connectathon.org/seam1.0。此網站包含最新的測試結果,以及用來讓 SEAM 與 NT 共同操作的程序的相關資訊。
這是一份 SEAM 1.0 中已知的程式錯誤清單。每個項目包括程式錯誤的編號 及概要,以及有關程式錯誤的簡短描述。
4084755: dtlockscreen 使用傳統而非 PAM 的方式來檢查密碼
dtlockscreen 使用傳統的檢查方式以確保使用者的密碼有效,而不使用 PAM。只有在檢查失敗時才會呼叫 PAM。這可能是一個潛在的安全問題,因為使用者可能只需要使用 UNIXTM 辯證的名稱服務所定義的密碼,便能取得顯示一個螢幕鎖定的系統的存取權。
4189642: kerberized rsh 使用訊息中的廢料
rsh、rlogin、及 rcp 會列印不合法選項的字串。它們應該列印出程式名稱。
4211978: gkadmin: 密碼過期﹕欄位顯示出誤導的資訊
當 gkadmin 被用來變更密碼時,密碼截止時間會變更,因為它會從一個指派給該主管的政策中取得截止時間。GUI 並不會明確顯示截止時間是取自於某一個政策。無論密碼是以 kadmin、kadmin.local、gkadmin、kpasswd、或是 passwd 來進行變更的,對密碼截止時間的影響都會成立。
使用者必須注意每次變更密碼時可以有兩個選擇﹕空出密碼截止欄位要讓伺服器在參考政策之後填入,或是在欄位中放入一個日期來設定確切的截止日期。
4143644: Kerberized rsh -f 無法正常運作
如果使用者明確要求一張可轉遞的證書,那麼 rsh 會在沒有任何可轉遞證書時失敗。
4159036: "telnet> 加密啟用 DES_OFB64" 掛起作業階段
加密類型 DES_OFB64 無法用於 telnet 中的資料加密。DES_CFB64 中唯一可用的加密就是預設的加密類型。
4159419: gkadmin 應該試著在生成隨機密碼時參考政策
當一位使用者使用 gkadmin 來生成一位主管的隨機密碼時,工具應該試著參考被套用的政策,以決定要使用的字元數目及字元類別。這樣會使第一個生成的密碼被 kadmin API 接受,至少在大部份的情況下是如此。
4170403: Cross-realm 中的 kerberized rlogin 不會因為密碼不正確而失敗
在 inetd.conf 中而不在 pam.conf 中啟用 Kerberized rlogin 時,(在一個執行 rlogin 伺服器的主機上),在使用 V5 範疇之間的 rlogin 時,可以利用 Kerberos 來正確地辯證一位使用者。然而,如果使用者被提示要輸入密碼,任何密碼都會被接受。這並非一種安全漏洞,因為使用者已經以 Kerberos V5 辯證通過。如果在 inetd.conf 中將它啟用時,避免停用 pam.conf 中 kerberized rlogin。
4172240: 當 -r 選項被用來 telnet 時,telnet 會將逸出字元報告為 ^]
逸出字元為 ~,如線上援助頁所述。
4177603: 當 kpropd.acl 遺漏主 KDC 項目時,kprop 指令會傳回「管道中斷」的訊息
如果從屬 KDC 之上並未正確地設定 /etc/krb5/kpropd.acl 的話,客戶端上的 kprop 指令便會失敗而傳回「管道中斷」的訊息。"
4178210: gkadmin: 當許可證過期時,應該回到登入視窗以進行重新辯證
當目前登入 gkadmin 的管理員證書過期時,gkadmin 應該要顯示出「許可證/證實過期」的訊息;然後在管理員按一下「確定」按鈕之後,gkadmin 應該關閉目前的「SEAM 管理工具」視窗,並且將管理使用者送回「SEAM 管理登入」視窗,並且啟用「密碼﹕」欄位以提示管理使用者需要輸入密碼以進行重新辯證。
4179331: gkadmin: 無法變更「主管/政策」名稱
gkadmin 並不支援變更主管的名稱或政策的功能。要達到相同的效果,應該使用「複製」按鈕以將主管或政策複製為新的名稱,然後將舊的名稱刪除。
4184145: gkadmin: 「內容」視窗中的某些 GUI 項目缺少某些邊緣
「列出快取記憶體逾時」的「...」按鈕沒有右邊。同時在選擇「顯示清單」或是「永遠快取清單」之後,這些可選擇按鈕外圍反白標明的長方形會缺少左邊。
4188923: gkadmin: SEAM「列印輔助程式」出現某些小問題
SEAM「列印輔助程式」可以顯示在您按下「"取消」之前所輸入的資料。「"取消」會放棄任何變更並且以先前的視窗及其狀態重新啟動。同時 SEAM「列印輔助程式」視窗中「檔案名稱」的文字欄位無法正確地清除。
4188935: gkadmin: 「撤銷」按鈕在某些「說明」視窗上無法正常運作
在 xhosting SEAM GUI 管理工具時,「撤銷」按鈕在某些說明」螢幕上無法正常運作。
4189590: 壽命為 2^31-1 時 kadmin 及 gkadmin 應該列印替代字串
當使用者建立一位從 KDC 端設定許可證壽命的新主管時,數值 2147483647 = 2^31-1 會被儲存在主管資料庫中。在檢視一位主管時,CLI 及 GUI 不應顯示數值 2147483647 (GUI) 或是 24855 天數 03:14:07 (CLI),而應顯示使用者能看得懂的字串。當日期 0 被列印為「永不」的情況下會進行這種檢查。"
4191906: 當證書過期時警告訊息中的時間會發生誤導的問題
如果初始許可證截止實際要比 /etc/krb5/warn.conf 中的警告臨界值來得少,那麼送出的警告訊息會說明許可證將在 warn.conf 檔案中所指明的時間內過期,而不是許可證的截止時間。
4191933: 在不到 30 分鐘的壽命時間使用 kinit 時,不會將服務許可證儲存在許可證快取記憶體中
當一位使用者利用有不到 30 分鐘壽命的 kinit -l 來取得證書(能賦予許可證的許可證)時,該證書所衍生出的任何服務許可證都不會顯示在許可證快取記憶體中。因為在一張可更新證書只有不到 30 分鐘的壽命時,SEAM 會嘗試自動更新證書,以方便使用者執行工作。更新一張證書會導致先前的證書及衍生的服務許可證被移除。除此之外不會有其他的任何影響,因為使用舊的服務許可證所建立的任何作業階段都可以持續到許可證壽命終結為止。切勿以一個指明只有不到 30 分鐘許可證壽命的 -l 選項來調用 kinit。
4193608: kinit -s 有某些問題
使用者無法使用 kinit,以一個離今天的日期還有 19 天以上的開始時間來取得一張遠期的許可證。
4193925: gkadmin: 建立一個新的政策時「Enter」鍵的行為不一致
目前,在「政策詳細資訊」面板中利用預設的參數值輸入一個政策名稱之後,按一下「Enter」(Return) 鍵並不會自動建立政策。「Enter/Return」鍵的作用應該和按一下「完成」按鈕相同。
4194001: gkadmin: 「上一次變更者﹕」欄位並不會顯示完整名稱
「"上一次變更者﹕" 」欄位並不會顯示實例名稱,因此管理主管並未被正確地識別。
4206443: kinit 線上援助頁說明壽命及可更新壽命協商
當一位使用者在指令行中指定壽命之後,許可證所取得的實際壽命將會是下列項目的最小值﹕
指令行中所指定的數值
KDC 設置檔案中所指定的數值
Kerberos 資料庫中所指定的伺服器主管數值;對 kinit 來說則是 krbtgt/<realmname>。
Kerberos 資料庫中所指定的使用者主管數值
4210970: gkadmin: 在年份變更時,「日期/時間輔助程式」無法將 2 月 29 日變更為 2 月 28 日
變更「日期/時間輔助程式」的年份無法重新計算該月最長的許可日期。
4218214: gkadmin: "Return" 鍵無法在反白標明的 GUI 按鈕上產生作用
您可以利用滑鼠按鈕來點按 GUI 按鈕,但是在反白標明的按鈕上按下 "Enter" 或 "Return" 鍵時卻沒有任何作用。
4220042: "kadmin: add_principal -expire "1/1/2000 7:00am" xhu" 無法正常運作
指定一個上午時間時,kadmin 的 add_principal 指令的 -expire 選項無法正常運作。例如﹕
kadmin:add_principal -expire "9/1/1999 7:00am" xhu 無效的日期規格 "9/1/1999 7:00am"。 |
可以使用 "pm"。要設定上午的時間時,不要在中午以前的時間規格中包括 "am"。新增此主管的方式為﹕
kadmin: add_principal -expire "9/1/1999 7:00" |
4245090: 說明如何在沒有使用 DNS 時新增主管
SEAM 說明文件中所述的程序是以使用 DNS 為依據,所以所有的主機及服務主管都是使用完全符合條件的領域名稱。如果您不是使用 DNS 的話,那麼就不要在建立主管時包括領域名稱。舉例來說,kdc1.acme.com 將為 kdc1。