ฉันคิดว่าคุณติดตั้ง Microsoft β-release ของเซิร์ฟเวอร์ opensh แบบเนทีฟหรือไม่
เอกสารประกอบของ Microsoft อธิบายวิธีการปรับใช้คีย์ ssh โดยใช้ Powershell ที่ฝั่งเซิร์ฟเวอร์
อย่างไรก็ตามในของคุณยังคงต้องการ bash:
2/ เชลล์ที่ให้บริการโดย Microsoft สามารถกำหนดค่าเพิ่มคุณสมบัติในรีจิสทรี:
ใหม่ ItemProperty -เส้นทาง "HKLM:\SOFTWARE\OpenSSH" -ชื่อ DefaultShell -ค่า "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType สตริง -Force
คำพูดที่ถูกบล็อก
คุณยังสามารถใช้สคริปต์ âbashâ เพื่อแก้ไข %PATH% ของคุณ และเพิ่มรสชาติของ bash ของบุคคลที่สามที่คุณอาจติดตั้งไว้บนเซิร์ฟเวอร์ (cygwin, msys, git-bashâ¦)
1/ ลองอีกครั้ง ssh-copy-id :) แต่โปรดจำไว้ว่าเฉพาะคีย์ ed25519 เท่านั้นที่อาจใช้งานได้
คุณ@unix$ ssh-keygen -t ed25519
อาจช่วยชีวิตคุณได้ อาจจะไม่: ฉันไม่แน่ใจเกี่ยวกับการใช้งาน opensh ของ Microsoft และการจัดการ ACL อาจป้องกันไม่ให้คุณเข้าสู่ระบบหลังจากการปรับใช้คีย์ ssh หาก ACLs (และกลไก administrator_authorized_keys) ไม่ได้รับการแก้ไขอย่างถูกต้อง
BTW: เอกสารของ Microsoft ค่อนข้างชัดเจน
https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configuration และ
https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement