การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า
ตั้งค่า SSH แบบไม่ต้องใช้รหัสผ่านด้วยคู่คีย์ และทำให้การเชื่อมต่อสะดวกขึ้นด้วยไฟล์การกำหนดค่า SSH ส่วนตัว
การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า เป็นบทเรียน Linux Command Line & Bash Scripting Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Command Line & Bash Scripting Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดจึงใช้การยืนยันตัวตนด้วยคีย์
คีย์ SSH จะแทนที่รหัสผ่านด้วยคู่คีย์เข้ารหัส คีย์เหล่านี้ปลอดภัยกว่าและทำให้สามารถเข้าสู่ระบบโดยไม่ใช้รหัสผ่านแบบอัตโนมัติได้
- คีย์ส่วนตัวจะอยู่บนเครื่องของคุณ
- คีย์สาธารณะจะถูกคัดลอกไปยังเซิร์ฟเวอร์
สร้างคู่คีย์
ใช้ ssh-keygen เพื่อสร้างคู่คีย์ Ed25519 สมัยใหม่ โดยจะสร้างคีย์ส่วนตัวและคีย์สาธารณะ .pub ที่ตรงกัน
ssh-keygen -t ed25519 -C "you@example.com"คีย์ถูกจัดเก็บไว้ที่ใด
โดยค่าเริ่มต้น คีย์จะอยู่ใน ~/.ssh/ คีย์ส่วนตัวต้องเก็บเป็นความลับ ส่วนคีย์สาธารณะสามารถแชร์ได้
ls -l ~/.ssh/คัดลอกคีย์สาธารณะไปยังเซิร์ฟเวอร์
ssh-copy-id จะเพิ่มคีย์สาธารณะของคุณต่อท้ายไฟล์ authorized_keys ของเซิร์ฟเวอร์ในขั้นตอนเดียว
ssh-copy-id user@server.example.comติดตั้งคีย์ด้วยตนเอง
หากไม่สามารถใช้ ssh-copy-id ได้ ให้เพิ่มคีย์สาธารณะต่อท้ายไฟล์ authorized_keys บนเครื่องระยะไกลด้วยตนเอง
cat ~/.ssh/id_ed25519.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"สิทธิ์การเข้าถึงที่ถูกต้องมีความสำคัญ
SSH จะปฏิเสธคีย์ที่มีสิทธิ์การเข้าถึงหลวมเกินไป ไดเรกทอรี .ssh ควรมีสิทธิ์เป็น 700 และไฟล์คีย์ควรเป็น 600
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519เชื่อมต่อด้วยคีย์ของคุณ
เมื่อติดตั้งคีย์สาธารณะแล้ว ssh user@host จะเข้าสู่ระบบโดยไม่ต้องใช้รหัสผ่าน ใช้ -i เพื่อเลือกคีย์ที่ต้องการ
ssh -i ~/.ssh/id_ed25519 user@server.example.comปกป้องคีย์ด้วยวลีรหัสผ่าน
วลีรหัสผ่านจะเข้ารหัสคีย์ส่วนตัวบนดิสก์ ssh-agent จะเก็บวลีนี้ไว้ จึงไม่ต้องพิมพ์ซ้ำมากกว่าหนึ่งครั้งต่อเซสชัน
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519ไฟล์การกำหนดค่า SSH
~/.ssh/config ใช้จัดเก็บการตั้งค่าแยกตามโฮสต์ เพื่อให้คุณเชื่อมต่อด้วยนามแฝงสั้น ๆ แทนบรรทัดคำสั่งยาว ๆ
# ~/.ssh/config
Host web
HostName 203.0.113.10
User deploy
Port 2222
IdentityFile ~/.ssh/id_ed25519เชื่อมต่อผ่านนามแฝงในการกำหนดค่า
เมื่อมีบล็อกด้านบน ssh web จะใช้ตัวเลือกทั้งหมดเหล่านั้นโดยอัตโนมัติ
ssh webตัวเลือกการกำหนดค่าที่มีประโยชน์
ไฟล์การกำหนดค่ารองรับตัวเลือกมากมาย เช่น การรักษาการเชื่อมต่อให้ทำงานอยู่
ServerAliveInterval 60ช่วยให้เซสชันที่ไม่มีการใช้งานยังคงเปิดอยู่ForwardAgent yesส่งต่อตัวแทนของคุณ
Host *
ServerAliveInterval 60
ServerAliveCountMax 3ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความรู้เกี่ยวกับคีย์ SSH
สรุปทบทวน
คุณได้ตั้งค่าการเข้าถึง SSH ที่ปลอดภัยแล้ว:
- สร้างคู่คีย์ด้วย
ssh-keygen -t ed25519 - ติดตั้งคีย์สาธารณะผ่าน
ssh-copy-id - จำกัดสิทธิ์การเข้าถึงให้รัดกุม (700/600)
- ทำให้การเข้าสู่ระบบง่ายขึ้นด้วยนามแฝงโฮสต์ใน
~/.ssh/config
คำถามที่พบบ่อย
บทเรียน “การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Command Line & Bash Scripting Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า”
ตั้งค่า SSH แบบไม่ต้องใช้รหัสผ่านด้วยคู่คีย์ และทำให้การเชื่อมต่อสะดวกขึ้นด้วยไฟล์การกำหนดค่า SSH ส่วนตัว คุณปฏิบัติ Linux Command Line & Bash Scripting Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Command Line & Bash Scripting Mastery หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Command Line & Bash Scripting Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Linux Command Line & Bash Scripting Mastery นี้ได้ไหม
ได้ บทเรียน Linux Command Line & Bash Scripting Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เครื่องมือเครือข่ายพื้นฐาน (ping, ip, netstat)
- พื้นฐาน Secure Shell (SSH)
- SCP และ Rsync สำหรับการถ่ายโอนไฟล์
- การยืนยันตัวตนด้วยคีย์ SSH และไฟล์การกำหนดค่า