ฉันกำลังพยายามเปิดใช้งานการจัดการระยะไกลของ Windows (โดยเฉพาะ, Powershell Remoting) ระหว่าง 2 โดเมนที่ไม่น่าเชื่อถือและไม่มีโชค
คำอธิบายสั้น ๆ เกี่ยวกับการตั้งค่าของฉัน:
- domain1 - เวิร์กสเตชันของฉันอยู่ในโดเมนนี้
- domain2 - เซิร์ฟเวอร์ที่ฉันต้องการเชื่อมต่ออยู่ในโดเมนนี้
ไม่มีความน่าเชื่อถือระหว่างโดเมนเหล่านี้
ฉันพยายามสร้างการเชื่อมต่อระยะไกล Powershell โดยใช้คำสั่งต่อไปนี้จากเวิร์กสเตชันของฉัน (เข้าร่วมกับ domain1):
พารามิเตอร์ ( [Parameter (บังคับ = $ ทรู)] $ เซิร์ฟเวอร์ ) $ username = "domain \ user" $ password = read-host "ป้อนรหัสผ่านสำหรับ $ username" -AsSecureString $ หนังสือรับรอง = ระบบวัตถุใหม่การจัดการ -Automation.PSCredential ($ ชื่อผู้ใช้ $ รหัสผ่าน) $ session = New-PSSession "$ server" -Authentication CredSSP -Credential $ credential -UseSSL -SessionOption (ใหม่ -PSSessionOption -SkipCACheck -SkipCNCheck) เข้าสู่เซสชัน PSSession $
ซึ่งผลลัพธ์ในข้อความแสดงข้อผิดพลาดต่อไปนี้:
ใหม่ -PSSession: [computername.domain2.com] การเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล computername.domain2.com ล้มเหลวด้วยข้อความแสดงข้อผิดพลาดต่อไปนี้: ไคลเอนต์ WinRM ไม่สามารถดำเนินการตามคำขอ นโยบายคอมพิวเตอร์ไม่อนุญาตให้มีการมอบสิทธิ์ของผู้ใช้ไปยังคอมพิวเตอร์เป้าหมายเพราะคอมพิวเตอร์ไม่น่าเชื่อถือ ตัวตนของเป้าหมาย คอมพิวเตอร์สามารถตรวจสอบได้หากคุณกำหนดค่าบริการ WSMAN เพื่อใช้ใบรับรองที่ถูกต้องโดยใช้คำสั่งต่อไปนี้: winrm set winrm / config / service '@ {CertificateThumbprint = ""}' หรือ คุณสามารถตรวจสอบ Event Viewer สำหรับเหตุการณ์ที่ระบุว่าไม่สามารถสร้าง SPN ต่อไปนี้: WSMAN / หากคุณพบกิจกรรมนี้คุณสามารถสร้าง SPN ด้วยตนเองได้ setspn.exe ถ้า SPN มีอยู่แล้ว แต่ CredSSP ไม่สามารถใช้ Kerberos เพื่อตรวจสอบข้อมูลประจำตัวของคอมพิวเตอร์เป้าหมายและคุณยังต้องการอนุญาตการมอบหมายข้อมูลรับรองผู้ใช้ไปยังเป้าหมาย คอมพิวเตอร์ใช้ gpedit.msc และดูนโยบายต่อไปนี้: การกำหนดค่าคอมพิวเตอร์ -> เทมเพลตการดูแลระบบ -> ระบบ -> การมอบหมายข้อมูลรับรอง -> อนุญาตให้ใช้ข้อมูลรับรองใหม่ด้วย NTLM เท่านั้น การตรวจสอบเซิร์ฟเวอร์ ตรวจสอบว่าเปิดใช้งานและกำหนดค่าด้วย SPN ที่เหมาะสมกับคอมพิวเตอร์เป้าหมาย ตัวอย่างเช่นสำหรับชื่อคอมพิวเตอร์เป้าหมาย "myserver.domain.com" SPN สามารถเป็นได้ หนึ่งในสิ่งต่อไปนี้: WSMAN / myserver.domain.com หรือ WSMAN / *. domain.com ลองคำขออีกครั้งหลังจากการเปลี่ยนแปลงเหล่านี้ สำหรับข้อมูลเพิ่มเติมดูหัวข้อ about_Remote_Troubleshooting Help
ฉันได้ลอง / ตรวจสอบสิ่งต่าง ๆ ต่อไปนี้แล้ว:
- ฉันตรวจสอบว่ามี SPN สำหรับทั้ง WSMAN \ computername & WSMAN \ computername.domain2.com ใน domain2
- ตรวจสอบว่าการกำหนดค่าคอมพิวเตอร์ -> เทมเพลตการดูแลระบบ -> ระบบ -> การมอบหมายหนังสือรับรอง -> อนุญาตการรับรองใหม่ที่มีการรับรองความถูกต้องของเซิร์ฟเวอร์ NTLM- อย่างเดียว
- กำหนดค่า winrm บนคอมพิวเตอร์เป้าหมายเพื่อใช้ ssl
- กำหนดค่า CredSSP บนคอมพิวเตอร์เป้าหมายและเวิร์กสเตชันท้องถิ่นของฉันโดยใช้คำสั่งต่อไปนี้:
Enable-WSManCredSSP -Role Server # บนคอมพิวเตอร์เป้าหมาย Enable-WSManCredSSP -Role Client -DelegateComputer * -Force
- ฉันตรวจสอบแล้วว่าไม่มีกฎ FW ไม่ว่าจะเป็นในเครื่องคอมพิวเตอร์หรือเครือข่ายกำลังบล็อกการเข้าถึงของฉัน
ไม่มีสิ่งใดที่อนุญาตให้ฉันเชื่อมต่อกับคอมพิวเตอร์เป้าหมายในโดเมน 2 จากเวิร์กสเตชันของฉันในโดเมน 1 ได้สำเร็จ ฉันสามารถเชื่อมต่อกับเซิร์ฟเวอร์อื่นที่เข้าร่วมกับ domain1 ได้สำเร็จไม่ใช่แค่เซิร์ฟเวอร์ในโดเมน 2 มีอะไรอีกบ้างที่ฉันควรจะมองหาและ / หรือพยายามทำให้มันใช้งานได้?
อัพเดท 06/08/2015 ที่ จริงฉันสามารถตรวจสอบได้ว่าฉันสามารถเชื่อมต่อกับเซิร์ฟเวอร์จากเวิร์กสเตชันของฉันได้โดยไม่ต้องใช้ CredSSP ซึ่งน่าจะใช้ได้ อย่างไรก็ตามฉันต้องสามารถเรียกใช้สคริปต์กับ SharePoint และทำได้โดยไม่ต้อง CredSSP ล้มเหลวด้วยข้อผิดพลาดการอนุญาต
Enable-WSManCredSSP -Role Client -DelegateComputer WSMAN/computername.domain2.com
( msdn.microsoft.com/en-us/library/ee309365(v=vs.85).aspx , จุดที่ 3)