วิธีการตั้งค่าคีย์ SSH บน Linux

SSH เป็นเทคโนโลยีที่ยอดเยี่ยม คุณสามารถใช้มันเพื่อซ่อนการรับส่งข้อมูลของ VPN ช่วยให้คุณสามารถเชื่อมต่อกับเว็บไซต์และอื่น ๆ ได้อย่างปลอดภัย ปัญหาเดียวคือทุกครั้งที่คุณพยายามเข้าสู่เครื่องระยะไกลคุณต้องป้อนรหัสผ่านและอาจเป็นเรื่องที่น่าเบื่อ หากคุณเป็นนักพัฒนาที่ต้องการเชื่อมต่อกับเครื่องจำนวนมากผ่าน SSH พร้อมกันด้วยสคริปต์ Bash หรือเพียงแค่คนที่ใช้ Secure Shell และไม่ต้องป้อนรหัสผ่านมีวิธีแก้ไข: SSH ที่ไม่มีรหัสผ่าน กระบวนการนี้เกี่ยวข้องกับการสร้างคีย์ SSH ที่ปลอดภัยบนเครื่องโฮสต์และแบ่งปันเป็นวิธีการเข้าถึงพีซี วิธีนี้จะช่วยให้ทุกคนที่มีรหัสเพื่อเข้าสู่ระบบแม้ว่าพวกเขาจะไม่ทราบรหัสผ่าน นี่คือวิธีการที่จะไป

กุญแจ SSH คืออะไร?

คีย์ SSH เป็นไฟล์ระบุตัวตนที่ไม่ซ้ำใครใช้กับ Secure Shell จุดประสงค์ของคีย์เหล่านี้คือเพื่อให้ข้อมูลประจำตัวที่ไม่ซ้ำกับผู้ใช้และทำเครื่องหมายว่า "เชื่อถือได้" เมื่อเข้าสู่ระบบคีย์เหล่านี้เป็นมากกว่าไฟล์ที่พิสูจน์ตัวตนของใครบางคน ในความเป็นจริง SSH ช่วยให้ผู้ใช้เข้าสู่ระบบด้วยรหัสแทนรหัสผ่าน ความหมายแทนการถูกบังคับให้ใส่รหัสผ่านทุกครั้งที่คุณล็อกอินผ่าน SSH คุณต้องใช้คีย์ SSH

รหัส SSH ถูกวางไว้ที่ใดที่หนึ่งอย่างปลอดภัยบนการติดตั้ง Linux ของคุณและจากนั้นคุณสามารถเข้าสู่เครื่องระยะไกลได้มากเท่าที่คุณต้องการโดยไม่ต้องใช้รหัสผ่าน

การสร้างคีย์ SSH ที่ปลอดภัย

การสร้างคีย์ SSH ที่ปลอดภัยนั้นจำเป็นต้องมีก่อนSSH ทำงานแล้ว เข้าใจว่านี่ไม่ได้หมายความว่าคุณต้องมีเซิร์ฟเวอร์ SSH เพียงว่าเครื่องมือ SSH พื้นฐานและเทคโนโลยีกำลังทำงานบน Linux PC ของคุณ ไม่แน่ใจว่าจะตั้งค่า SSH ได้อย่างไร ทำตามคำแนะนำของเราได้ที่นี่

สร้างคีย์ SSH บนระบบที่โฮสต์เซิร์ฟเวอร์ SSH เสมอ อย่าพยายามสร้างพวกเขาบนเซิร์ฟเวอร์ที่ไม่ได้โฮสต์เซสชัน SSH และคัดลอกไปยังเครื่องโฮสต์ SSH มันจะไม่ทำงาน

ในการเริ่มกระบวนการสร้างคีย์ให้เปิดเทอร์มินัล ภายในหน้าต่างเทอร์มินัลให้เรียกใช้:

ssh-keygen -t rsa

วิ่ง SSH-keygen จะพิมพ์“ กำลังสร้างคีย์สาธารณะ / ส่วนตัว rsaคู่". ซึ่งหมายความว่าระบบกำลังสร้างคุณทั้งกุญแจสาธารณะเช่นเดียวกับกุญแจส่วนตัวที่จะใช้ กุญแจสาธารณะเป็นสิ่งที่ทุกคนสามารถใช้งานได้และคุณควรจะยอมแพ้ ในทางกลับกันรหัสส่วนตัวเป็นสิ่งที่คุณไม่ควรเปิดเผยให้ใครทราบ ดังนั้นชื่อ "ส่วนตัว"

กุญแจจะช่วยตนเองใน /ที่บ้าน / ชื่อผู้ใช้ / .ssh / id_rsa.

บันทึก: อย่าลบ คน ~ / .ssh โฟลเดอร์เนื่องจากมีกุญแจของคุณ หากคุณยุ่งเกี่ยวกับโฟลเดอร์นี้ในทางใดทางหนึ่งแล้วลองลงชื่อเข้าใช้เครื่องนี้จากระยะไกลการแจ้งเตือน SSH จะล้มเหลว มันจะพิมพ์คำเตือนและล็อคคุณออก

ปุ่ม SSH บนเครื่องระยะไกล

ตอนนี้ปุ่ม SSH (ทั้งสาธารณะและส่วนตัวอัน) ถูกสร้างขึ้นและพร้อมใช้งานคุณจะต้องคัดลอกไฟล์เหล่านั้นไปยังระบบที่คุณต้องการเข้าสู่ระบบ เป็นสิ่งสำคัญที่คุณต้องทำขั้นตอนนี้ซ้ำในทุกเครื่องที่คุณวางแผนจะเข้าสู่ระบบผ่าน SSH มิฉะนั้นคนที่ไม่มีคีย์จะต้องเข้าสู่ระบบโดยใช้วิธีการรหัสผ่าน

ในการเพิ่มคีย์ไปยังระบบรีโมตให้ทำตามตัวอย่างนี้ ตรวจสอบให้แน่ใจว่าคุณกำลังทำสิ่งนี้จากเครื่องโฮสต์ผ่าน SSH

ssh username@remote-host-name mkdir -p .ssh

การรันคำสั่ง ssh นี้จะสร้างการซ่อน ~ / .ssh โฟลเดอร์ในไดเรกทอรีบ้านของเครื่องระยะไกล (กับผู้ใช้ที่ใช้ในการเข้าสู่ระบบ) โฟลเดอร์นี้มีความสำคัญเนื่องจากเป็นที่ที่เราจะคัดลอกไฟล์คีย์ SSH ที่สร้างขึ้นใหม่

หากต้องการคัดลอกไฟล์คีย์ SSH ให้รันคำสั่งอื่นจากเครื่องโฮสต์ SSH ไปยังเครื่องระยะไกลที่ต้องการคีย์:

cat .ssh/id_rsa.pub | ssh username@remote-host-name "cat >> .ssh/authorized_keys"

การคัดลอกจะใช้เวลาสองสามวินาทีขึ้นอยู่กับความเร็วเครือข่าย เมื่อเสร็จสิ้นพีซีระยะไกลจะมีคีย์ที่สร้างขึ้นและจะสามารถเข้าสู่โฮสต์พีซี SSH โดยไม่ต้องใช้รหัสผ่าน

การสำรองคีย์ SSH

คีย์ SSH เป็นสิ่งที่มีประโยชน์และแต่ละอันก็มีเป็นเอกลักษณ์ เป็นเพราะเหตุนี้การสำรองข้อมูลจึงเป็นแนวทางที่ดีที่สุด ปัญหาคือถ้าคุณบันทึกไว้ที่อื่นใครบางคนอาจพบกุญแจ SSH ของคุณเก็บไว้และใช้มันเพื่อตัวเอง ดังนั้นคำถามคือวิธีที่ดีในการสำรองคีย์ SSH อย่างปลอดภัยคืออะไร การเข้ารหัสลับ

วิธีที่เร็วที่สุดมีประสิทธิภาพมากที่สุด (และวิธีที่ง่ายที่สุด) ไปที่เข้ารหัสคือการใช้ GnuPG เครื่องมือนี้สร้างขึ้นในเครื่องมือเข้ารหัสส่วนใหญ่ที่มีอยู่แล้วบน Linux และเป็นสิ่งที่ต้องทำเมื่อนำไฟล์ที่เข้ารหัสมาใช้ ในการติดตั้ง GnuPG ให้เปิดเทอร์มินัลแล้วค้นหาตัวจัดการแพ็คเกจของคุณสำหรับ“ gpg” โปรแกรมควรหาได้ง่ายแม้ในลีนุกซ์ที่ปิดบังไม่ได้

เมื่อ GPG เริ่มทำงานแล้วให้เริ่มกระบวนการเข้ารหัสโดยบีบอัดไฟล์ของคุณ ~ / .ssh ไดเรกทอรีลงในไฟล์เก็บถาวร tar การทำเช่นนี้จะทำให้ไม่จำเป็นต้องเข้ารหัสแต่ละไฟล์ทุกไฟล์ใน ~ / .ssh โฟลเดอร์

tar -czvf ssh-stuff.tar.gz /home/username/.ssh

เมื่อการบีบอัดเสร็จสิ้นให้เริ่มกระบวนการเข้ารหัส

หมายเหตุ: ก่อนทำการเข้ารหัสให้รัน gpg ในเทอร์มินัลเพื่อสร้างพวงกุญแจใหม่

gpg -c ssh-stuff.tar.gz

เมื่อกระบวนการเข้ารหัสเสร็จสิ้น GnuPG จะวางไฟล์พร้อมป้ายกำกับของ“ssh-stuff.tar.gz.gpg“ อย่าลังเลที่จะลบไฟล์เวอร์ชันดั้งเดิมที่ไม่ได้ล็อค หากต้องการถอดรหัสไฟล์สำรองข้อมูลของคุณให้ทำดังต่อไปนี้:

gpg ssh-stuff.tar.gz.gpg
</ p>

ความคิดเห็น