ฉันได้สร้างคีย์สาธารณะ RSA แล้วและต้องการเพิ่มลงในauthorized_keys
ไฟล์ แต่ไม่มีไฟล์ดังกล่าวในเครื่อง Ubuntu 11.10 ของฉัน
ฉันจะเพิ่มคีย์เข้าไปได้authorized_keys
อย่างไร?
ฉันได้สร้างคีย์สาธารณะ RSA แล้วและต้องการเพิ่มลงในauthorized_keys
ไฟล์ แต่ไม่มีไฟล์ดังกล่าวในเครื่อง Ubuntu 11.10 ของฉัน
ฉันจะเพิ่มคีย์เข้าไปได้authorized_keys
อย่างไร?
คำตอบ:
ตรวจสอบให้แน่ใจว่าเมื่อเรียกใช้โซลูชันของ Michael Krelin คุณทำสิ่งต่อไปนี้
cat <your_public_key_file> >> ~/.ssh/authorized_keys
โปรดสังเกตว่า double ที่>
ไม่มีคู่>
เนื้อหาที่มีอยู่ของ Author_keys จะถูกเขียนทับ (nuked!) และอาจไม่เป็นที่ต้องการ
sudo systemctl restart sshd
และจะไม่ทำงาน
mkdir -p ~/.ssh/
cat your_key > ~/.ssh/authorized_keys
cat your_key >> ~/.ssh/authorized_keys
-i
คุณสามารถลองระบุอย่างชัดเจนด้วย นอกจากนี้คุณสามารถลองssh -v
และตรวจสอบสิทธิ์ของคีย์ที่ได้รับอนุญาตของคุณบนรีโมท และตรวจสอบบันทึกที่นั่น
ฉันรู้ว่าฉันตอบช้าเกินไป แต่สำหรับใครก็ตามที่ต้องการสิ่งนี้ให้เรียกใช้คำสั่งต่อไปนี้จากเครื่องในพื้นที่ของคุณ
cat ~/.ssh/id_rsa.pub | ssh user@192.168.1.1 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
สิ่งนี้ทำงานได้ดีอย่างสมบูรณ์ สิ่งที่คุณต้องทำมีเพียงแค่แทนที่
user@192.168.1.1
กับผู้ใช้ของคุณเองสำหรับโฮสต์นั้น ๆ
มีคำสั่งอยู่แล้วในชุด ssh ให้ทำสิ่งนี้ให้คุณโดยอัตโนมัติ คือเข้าสู่โฮสต์ระยะไกลและเพิ่มคีย์สาธารณะลงในไฟล์ Author_keys ของคอมพิวเตอร์เครื่องนั้น
ssh-copy-id -i /path/to/key/file user@host.com
หากคีย์ที่คุณกำลังติดตั้งอยู่~/.ssh/id_rsa
คุณสามารถยกเลิกการ-i
ตั้งค่าสถานะทั้งหมดได้
ดีกว่าการทำด้วยตนเองมาก!
>ssh user@serverip -p portnumber
>sudo bash (if user does not have bash shell else skip this line)
>cd /home/user/.ssh
>echo ssh_rsa...this is the key >> authorized_keys