如果在升級或移轉至 OS X Server 之後無法建立網路使用者
升級或移轉至 OS X Server 後,系統可能會出現「密碼變更遭拒」提示,且網路使用者可能無法登入。
檢查 DNS
執行其他步驟之前,請先檢查 Open Directory 伺服器上的 DNS 名稱解析是否正確。DNS 設定不當可能會引起此問題。你必須知道目前指派給伺服器的 IP 位址,以及伺服器的完整網域名稱。
打開「終端機」並輸入
hostname
,以驗證伺服器的名稱。打開 Server.app,然後在側邊欄中選取你的伺服器。
選取「概覽」標籤頁。伺服器的完整網域名稱應會顯示在「主機名稱」欄位中。
若 Server 視窗中的完整網域名稱與 hostname 指令的結果不相符,你必須先更正這個狀況,再繼續進行本文接下來的步驟。如果你確定指派給伺服器 IP 位址的完整網域名稱是正確的,請使用 Server 中的更改主機名稱輔助程式來設定伺服器的正確主機名稱。
打開「系統偏好設定」,然後按一下「網路」圖像。
選取已為伺服器設定的網路介面。伺服器的 IP 位址列於此處。
記下列出的 DNS 伺服器。
如果你已在伺服器上設定此 DNS 伺服器,且系統已為此伺服器建立 DNS 記錄,你的伺服器應會列為 127.0.0.1(而非伺服器的 IP 位址)。
如果你的網路上有另一部伺服器代管你伺服器的 DNS 記錄,則該伺服器的 IP 位址應會列在「DNS 伺服器」欄位中。
如果此資訊不正確,請按一下「進階⋯」按鈕,然後按一下 DNS 標籤頁。正確的 DNS 伺服器位址可以在這裡設定。
測試 DNS 設定
你可以使用「終端機」來測試將網域名稱解析為 IP 位址。請打開「終端機」(/應用程式/工具程式/Terminal.app),然後使用下列指令:
使用「host」指令來測試將網域名稱解析為 IP 位址:
host
預期的結果為
你也可以使用「host」指令來測試將 IP 位址解析為網域名稱:
host
預期的結果為 .in-addr.arpa domain name pointer
如果上述 host 指令的輸出未提供預期的結果,你可能需要更正你的 DNS 設定或伺服器的「主機名稱」(完整網域名稱)。請先執行此步驟,然後再嘗試對伺服器重新進行 Kerberos 認證。
對伺服器重新進行 Kerberos 認證
確認或更正 DNS 資訊之後,請關閉「系統偏好設定」並結束 Server.app。然後,視你對伺服器重新進行 Kerberos 認證時所用的 OS X 版本而定,使用該版本適用的「終端機」指令。
OS X Yosemite
若是 OS X Yosemite,請在 Open Directory 伺服器上使用下列「終端機」指令。
sudo mkdir /var/db/openldap/migration/
sudo touch /var/db/openldap/migration/.rekerberize
sudo slapconfig -firstboot
打開 Server.app,確認你的網路使用者可以登入。
OS X Mavericks
若是 OS X Mavericks,請在 Open Directory 伺服器上使用下列「終端機」指令。
sudo mkdir /var/db/openldap/migration/
sudo touch /var/db/openldap/migration/.rekerberize
sudo killall PasswordService
打開 Server.app,確認你的網路使用者可以登入。