φυβλαςのβλογ
phyblasのブログ



การทำให้เชื่อมต่อ ssh ได้โดยไม่ต้องใส่รหัสผ่าน
เขียนเมื่อ 2019/03/02 21:17
แก้ไขล่าสุด 2024/09/21 13:30
เวลาเชื่อมต่อ ssh ปกติแล้วจะต้องใส่รหัสผ่านทุกครั้ง แต่หากใครรู้สึกว่าไม่สะดวกก็มีวิธีที่ทำให้ไม่ต้องใส่รหัสเหมือนกัน

วิธีการคือต้องทำ ssh key ของเครื่องที่เราใช้อยู่ขึ้นมา แล้วส่งไปให้เครื่องฝั่งเซิร์ฟเวอร์จำไว้

ไฟล์ที่เก็บ ssh key จะต้องถูกสร้างอยู่ใน ~/.ssh ดังนั้นก่อนอื่นให้ลองดูว่ามีไฟล์นั้นอยู่แล้วหรือเปปล่า
ls -al ~/.ssh

ถ้าหากพบว่ามีไฟล์ id_rsa และ id_rsa.pub อยู่แล้วก็ให้ใช้อันนี้ได้เลย

แต่หากไม่มีก็ให้พิมพ์คำสั่ง
ssh-keygen -t rsa

จากนั้นก็จะมีข้อความขึ้นมาให้ป้อนพาธ แต่ก็ไม่จำเป็นต้องสนใจก็ได้ ให้กด enter ไป

เท่านี้ไฟล์ id_rsa และ id_rsa.pub ก็จะถูกสร้างขึ้นมา

จากนั้นให้ไปดูที่โฟลเดอร์ ~/.ssh ในฝั่งเซิร์ฟเวอร์ว่ามี authorized_keys อยู่หรือเปล่า

ถ้าไม่มีไฟล์นั้นอยู่ก็ให้ส่งไฟล์ id_rsa.pub ไปยังเซิร์ฟเวอร์ อาจส่งด้วย scp แบบนี้
scp ~/.ssh/id_rsa.pub phyblas@hinaboshi.com:~/.ssh/authorized_keys

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

แบบนี้อาจโอนไฟล์เข้าไปก่อน
scp ~/.ssh/id_rsa.pub phyblas@hinaboshi.com:~

จากนั้นค่อยใช้ cat เพื่อนำ ssh key ไปเขียนต่อท้าย
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
rm ~/id_rsa.pub

ต้องใช้ >> เพื่อให้เป็นการเขียนต่อกันไป เพราะถ้าใช้ > จะเป็นการลบของเก่าทิ้ง



อย่างไรก็ตาม หากทำตามนี้แล้วยังไม่ได้ผลอาจหมายความว่าเครื่องนั้นมีการตั้งค่าไว้ให้ไม่สามารถเชื่อมต่อโดยใช้ ssh key แทนรหัสผ่านได้

ถ้าหากเครื่องนั้นเป็นเครื่องที่เรามีสิทธิ์ root ก็ให้ลองเข้าไปดูที่ไฟล์ /etc/ssh/sshd_config หาดูว่ามีการตั้งค่าเป็นแบบนี้หรือไม่
PubkeyAuthentication=yes
PasswordAuthentication=no

ถ้าไม่ใช่ให้ตั้งให้เป็นตามนี้จึงจะเข้าได้

เมื่อมีการแก้ไขแล้วก็ต้องสั่ง
/etc/init.d/sshd restart

จากนั้นลองดูใหม่ เท่านี้ก็น่าจะเข้าได้โดยไม่ต้องใช้รหัสผ่าน



อ้างอิง


-----------------------------------------

囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧

ดูสถิติของหน้านี้

หมวดหมู่

-- คอมพิวเตอร์ >> shell

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

目次

日本による名言集
モジュール
-- numpy
-- matplotlib

-- pandas
-- manim
-- opencv
-- pyqt
-- pytorch
機械学習
-- ニューラル
     ネットワーク
javascript
モンゴル語
言語学
maya
確率論
日本での日記
中国での日記
-- 北京での日記
-- 香港での日記
-- 澳門での日記
台灣での日記
北欧での日記
他の国での日記
qiita
その他の記事

記事の類別



ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ

  記事を検索

  おすすめの記事

ตัวอักษรกรีกและเปรียบเทียบการใช้งานในภาษากรีกโบราณและกรีกสมัยใหม่
ที่มาของอักษรไทยและความเกี่ยวพันกับอักษรอื่นๆในตระกูลอักษรพราหมี
การสร้างแบบจำลองสามมิติเป็นไฟล์ .obj วิธีการอย่างง่ายที่ไม่ว่าใครก็ลองทำได้ทันที
รวมรายชื่อนักร้องเพลงกวางตุ้ง
ภาษาจีนแบ่งเป็นสำเนียงอะไรบ้าง มีความแตกต่างกันมากแค่ไหน
ทำความเข้าใจระบอบประชาธิปไตยจากประวัติศาสตร์ความเป็นมา
เรียนรู้วิธีการใช้ regular expression (regex)
การใช้ unix shell เบื้องต้น ใน linux และ mac
g ในภาษาญี่ปุ่นออกเสียง "ก" หรือ "ง" กันแน่
ทำความรู้จักกับปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง
ค้นพบระบบดาวเคราะห์ ๘ ดวง เบื้องหลังความสำเร็จคือปัญญาประดิษฐ์ (AI)
หอดูดาวโบราณปักกิ่ง ตอนที่ ๑: แท่นสังเกตการณ์และสวนดอกไม้
พิพิธภัณฑ์สถาปัตยกรรมโบราณปักกิ่ง
เที่ยวเมืองตานตง ล่องเรือในน่านน้ำเกาหลีเหนือ
ตระเวนเที่ยวตามรอยฉากของอนิเมะในญี่ปุ่น
เที่ยวชมหอดูดาวที่ฐานสังเกตการณ์ซิงหลง
ทำไมจึงไม่ควรเขียนวรรณยุกต์เวลาทับศัพท์ภาษาต่างประเทศ

ไทย

日本語

中文