สอนสร้าง Public/Private key วิธีใช้ ssh-keygen สำหรับ Remote เข้า Server อีกเครื่องโดยไม่ต้องใช้ รหัสผ่าน

แชร์ความรู้ Linux Ubuntu Web Server บทความ การ config server Linux FreeBSD Apache
การติดตั้ง XAMPP Mysql PHP ใครต้องการแชร์ความรู้เรื่องต่างๆ เหล่านี้ให้ ท่านหรืออื่น โพสที่หมวดนี้ได้

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41120
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

สอนสร้าง Public/Private key วิธีใช้ ssh-keygen สำหรับ Remote เข้า Server อีกเครื่องโดยไม่ต้องใช้ รหัสผ่าน

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

บทความนี้ที่จะสอนคือสร้าง Public/Private key สำหรับ ลดขั้นตอนการทำ rsync ข้าม Server แล้วต้องมากรอกรหัสผ่าน
เมื่อทำตามขั้นตอนนี้ เสร็จ เราสามารถ login ข้ามเครื่อง ด้วย ssh โดยไม่ต้องใช้ user, password และสามารถนำมาร่วมกับ rsync ตามบทความที่ได้นำเสนอไปก่อนหน้านี้ที่นี่โดยไม่ต้องคอยกรอกรหัสผ่านทุกครั้ง
ขั้นตอน การสร้าง Public/Private key ทำได้ง่ายๆ เพียงสองขั้นตอน
1. Login เข้า Server ต้นทางด้วย ssh ปกติ แล้วใช้คำสั่ง สร้าง Public/Private Key ดังนี้

โค้ด: เลือกทั้งหมด

ssh-keygen -t rsa -b 4096
จะได้ผลประมาณนี้
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:N8n79gdhujTvEb3o9e/eNugfQ67YQ0DvNOjnWbJfuSI [email protected]
The key's randomart image is:
+---[RSA 4096]----+
| |
| . |
2. เอา Public Key ที่ได้จากข้อ 1 ไปไว้ที่ Server ปลายทาง ด้วย FTP หรือ ssh ก็ได้ ในบทความนี้จะใช้ ssh อัพโหลดไฟล์ Public Key ไปด้วยคำสั่ง

โค้ด: เลือกทั้งหมด

ssh-copy-id -i /root/.ssh/id_rsa.pub -p [port] user@[ip เครื่องปลายทาง]
เท่านี้ ครั้งต่อไปเวลาเรา Login เครื่องปลายทาง หรือ rsync ด้วย ssh ก็ไม่ต้อง กรอก user password อีกต่อไป

โค้ด: เลือกทั้งหมด

ssh -p [port] user@[ip เครื่องปลายทาง]
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41120
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: สอนสร้าง Public/Private key วิธีใช้ ssh-keygen สำหรับ Remote เข้า Server อีกเครื่องโดยไม่ต้องใช้ รหัสผ่าน

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้า client เป็น windows ในข้อ 1 สามารถใช้โปรแกรม puttygen.exe
โดยเข้าไปที่
https://www.puttygen.com/download-putty
เลือกไฟล์ puttygen.exe
ติดตั้งโปรแกรมเพื่อสร้าง gen ssh-keygen ดังรูป
Linux - Web Server-1.png
Linux - Web Server-1.png (25.23 KiB) Viewed 2061 times
Save ไฟล์ 2 ไฟล์ ตามตัวเลข 1, 2
จะได้ไฟล์ เช่น
mindphp_key.ppk *** ไฟล์นี้ไว้สำหรับใช้งานใน putty client
mindphp_pub.pub

ขั้นตอนต่อไป
copy ข้อความในช่อง Public key for pasting into OpenSSH authorized_keys file
ไปไว้ในไฟล์
/root/.ssh/authorized_keys
หรือตาม user ที่ต้องการ

นอกจาก Login เข้า Linux ผ่าน putty แบบไม่ต้องกรอกรหัสผ่านแล้ว ยังสามารถใช้ FireZilla แบบไม่ต้องระบุรหัสผ่านได้เช่นกัน
ไว้บทความต่อไปจะมาแชร์การใช้ FireZilla ย้ายไฟล์แบบปลอดภัยสูงโดยไม่ต้องใช้รหัสผ่าน
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: Google Adsense [Bot] และบุคลทั่วไป 31