ฉันทำงานเป็นเวลานานเพื่อให้ Drupal 7 ดำเนินการตรวจสอบสิทธิ์ SSO กับสภาพแวดล้อม Windows Server 2003

สิ่งที่ฉันได้ทำไปแล้ว:

สร้างบัญชีผู้ใช้สำหรับเซิร์ฟเวอร์ linux ใน Active Directory ให้ผู้ดูแลระบบ Active Directory ดำเนินการคำสั่ง ktpass เพื่อสร้างไฟล์ keytab ด้วยประเภทการตรวจสอบสิทธิ์และ SPN ที่เหมาะสม กำหนดค่า Kerberos ใน krb5.conf บนเซิร์ฟเวอร์ Linux เพื่อให้สอดคล้องกับสภาพแวดล้อม Active Directory เฉพาะของเรา ฉันสามารถออกคำสั่ง kinit กับบัญชี AD ของฉันเองและมันตรวจสอบความถูกต้อง เมื่อฉันออก kvno ให้กับ SPN สำหรับบัญชีเซิร์ฟเวอร์ที่ฉันเพิ่งสร้างขึ้น ฉันได้รับสิ่งต่อไปนี้: kvno: ตั๋วหมดอายุขณะรับข้อมูลรับรองสำหรับ HTTP/ [email protected]

ฉันยังมีคีย์แท็บที่อัปโหลดไปยังเซิร์ฟเวอร์ ฉันไม่สามารถให้ KDC ออกตั๋วสำหรับ SPN ที่ฉันสร้างได้ ใครสามารถช่วย?

ความนับถือ,

Andy Scott

answer

ฉันได้รับข้อความ "ถูกทำเครื่องหมายหมดอายุ" เมื่อเวลาของฉันไม่ซิงค์อย่างถูกต้องระหว่าง linux และ AD ฉันถือว่าเซิร์ฟเวอร์เวลาของคุณเป็นตัวควบคุมโดเมนด้วย (โดยปกติแล้วจะมีการตั้งค่าแบบนั้น) ดังนั้นคุณสามารถตรวจสอบการตั้งค่าเวลาด้วย ntpdate

วิ่ง:

ntpdate IP_of_your_AD_server

แล้วลอง kvno อีกครั้ง