วิธีการตั้งค่า SSH Keys บนเครื่อง Windows (ไคลเอ็นต์ SSH) เพื่อเข้าถึง Azure Linux VM


15

Googling ไร้ผลเนื่องจากคนส่วนใหญ่มีปัญหานี้แตกต่างกันเล็กน้อย

ฉันกำลังพยายามติดตั้ง Azure Linux VM ด้วย SSH (ไม่มีรหัสผ่าน) เพื่อเข้าถึงจากเครื่อง Windows 2018 UPDATE:ข้อกำหนดดั้งเดิมคือการใช้ WinSCP แต่ฉันใช้ได้กับการใช้ Putty แทน (บนเครื่อง Windows ซึ่งเป็นไคลเอ็นต์ SSH)

คุณจะตั้งค่า Azure Linux VM และสร้างคีย์ที่จำเป็นได้อย่างไรโดยใช้เครื่องมือเพิ่มเติมน้อยที่สุดบน Windows


1
คีย์ SSH เป็นเพียงปุ่มไม่ใช่ใบรับรอง ใช้เครื่องมือเช่น xca เพื่อสร้างใบรับรอง
LawrenceC

คำตอบ:


16

ก่อนอื่นคุณต้องใช้รหัสสาธารณะในรูปแบบสำหรับauthorized_keysไฟล์OpenSSH


เมื่อคุณได้รับกุญแจสาธารณะในauthorized_keysรูปแบบแล้วให้วางลงในกล่อง"คีย์สาธารณะ SSH"เมื่อเตรียมเครื่อง Azure Linux (หรือเมื่อรีเซ็ตคีย์สาธารณะ):

ป้อนคำอธิบายรูปภาพที่นี่


1
ไม่ได้ผล สีฟ้าต้องผ่านขั้นตอนเริ่มต้นของการตั้งค่า VM แต่ก็ยกเลิกการบ่นว่าคีย์ไม่สอดคล้องกับ X.509
Alex R

1
ตกลงฉันทำตามคำแนะนำที่azure.microsoft.com/en-us/documentation/articles/…และพวกเขาใช้งานได้ โดยทั่วไปคุณเรียกใช้ "openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout myPrivateKey.key -out myCert.pem" จำเป็นต้องอัพโหลด. pem ผ่านพอร์ทัล Azure (ฉันไม่ได้โพสต์สิ่งนี้เป็นคำตอบเพราะฉันทำได้บน Mac ของฉันและโปสเตอร์ขอวิธีแก้ปัญหา Windows Googling ระบุว่ามีการแจกจ่าย OpenSSL สำหรับ Windows อยู่ แต่ฉันไม่ได้ลองเลย)
Rohit Chatterjee

1
นอกจากนี้รหัสส่วนตัวที่สร้างขึ้นในความคิดเห็นของฉันข้างต้น - myPrivateKey.key - จะต้องนำเข้าสู่ PuttyGen และแปลงเป็น PPK สีโป๊วจะไม่ใช้ไฟล์. key
Rohit Chatterjee

@RohitChatterjee นั่นเป็นความเข้าใจผิดทั้งหมด OP ถามเกี่ยวกับกุญแจส่วนตัว (ให้ความประทับใจที่เขาต้องการใช้เป็นรหัสโฮสต์) ในขณะที่คำถามนั้นเกี่ยวกับกุญแจสาธารณะ ฉันอัพเดตคำตอบแล้ว
Martin Prikryl

ที่จริงนี่ยังน้อยไปหน่อยเพราะฉันต้องการใช้ WinSCP ไม่ใช่ Putty ฉันจะแก้ไขคำถามอีกครั้งเพื่อให้คำตอบนี้ถูกต้อง
Alex R

2

คำตอบที่ถูกต้องถูกจัดเตรียมไว้ในความคิดเห็นโดย @Rohit Chatterjee:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem

คำอธิบาย:

พอร์ทัล Azure จะขอ PEM / CER ซึ่งเป็นส่วนหนึ่งของกระบวนการเตรียม VM (แม้ว่าจะสามารถให้รหัสผ่านแทนได้) PuttyGen สร้าง PEM จาก PPK เนื่องจากคำตอบนี้ decribes แต่พอร์ทัลไม่ยอมรับเอาต์พุต ถ้าฉันเข้าใจสิ่งนี้ฉันจะโพสต์คำตอบไว้ที่นี่ ... - Rohit Chatterjee 29 ม.ค. เวลา 4:18 1 คะแนนโหวตขึ้นไป

ตกลงฉันทำตามคำแนะนำที่azure.microsoft.com/en-us/documentation/articles/…และพวกเขาใช้งานได้ โดยทั่วไปคุณเรียกใช้ "openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout myPrivateKey.key -out myCert.pem" จำเป็นต้องอัพโหลด. pem ผ่านพอร์ทัล Azure (ฉันไม่ได้โพสต์สิ่งนี้เป็นคำตอบเพราะฉันทำได้บน Mac ของฉันและโปสเตอร์ขอวิธีแก้ปัญหา Windows Googling ระบุว่ามีการแจกจ่าย OpenSSL สำหรับ Windows อยู่ แต่ฉันไม่ได้ลองเลย) - Rohit Chatterjee 29 ม.ค. เวลา 4:49 น

นอกจากนี้รหัสส่วนตัวที่สร้างขึ้นในความคิดเห็นของฉันข้างต้น - myPrivateKey.key - จะต้องนำเข้าสู่ PuttyGen และแปลงเป็น PPK สีโป๊วจะไม่ใช้ไฟล์. key - Rohit Chatterjee 29 ม.ค. เวลา 4:51 น


0

ฉันเห็นว่านี่เป็นคำถามที่เก่ากว่า แต่ถ้าคุณใช้ Windows 10 ตอนนี้เป็นไปได้ที่ SSH จากระบบย่อย Windows สำหรับ Linux เพียงแค่ตั้งค่าคีย์เช่นเดียวกับที่คุณทำใน Linux ปกติ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.