- 1 คู่มือการตั้งค่าและการเสริมสร้างความปลอดภัย SSH บน Ubuntu
- 1.1 1. SSH คืออะไร? วิธีใช้งานบน Ubuntu
- 1.2 2. วิธีติดตั้ง SSH บน Ubuntu
- 1.3 3. การตรวจสอบสถานะบริการ SSH และการเปิดใช้งานขณะระบบเริ่มต้น
- 1.4 4. วิธีอนุญาต SSH ในการตั้งค่าไฟร์วอลล์
- 1.5 5. วิธีเชื่อมต่อกับ Ubuntu SSH Server
- 1.6 6. การตั้งค่า SSH ขั้นสูง (การเปลี่ยนพอร์ต, ปิดการเข้าสู่ระบบด้วยบัญชี root)
- 1.7 7. การเสริมสร้างความปลอดภัย SSH Server (แนวทางปฏิบัติที่ดีที่สุด)
- 1.8 8. การแก้ไขปัญหาทั่วไปเกี่ยวกับการเชื่อมต่อ SSH
- 1.9 สรุป
คู่มือการตั้งค่าและการเสริมสร้างความปลอดภัย SSH บน Ubuntu
1. SSH คืออะไร? วิธีใช้งานบน Ubuntu
SSH (Secure Shell) คือโปรโตคอลสำหรับเชื่อมต่อและจัดการเซิร์ฟเวอร์จากระยะไกลได้อย่างปลอดภัย โดยเฉพาะในระบบ Linux เช่น Ubuntu เป็นเครื่องมือบริหารจัดการแบบ Command Line ที่สำคัญมาก การใช้ SSH จะช่วยให้การสื่อสารกับเซิร์ฟเวอร์ถูกเข้ารหัส ป้องกันการเข้าถึงโดยไม่ได้รับอนุญาตและการดักฟังข้อมูลจากบุคคลที่สาม
ลิงก์ที่เกี่ยวข้อง: SSH คืออะไร? เอกสารทางการของ Ubuntu
2. วิธีติดตั้ง SSH บน Ubuntu
เพื่อให้สามารถใช้งาน SSH ได้ เราจะแนะนำขั้นตอนการติดตั้ง SSH Server บน Ubuntu
- อัปเดตรายการแพ็คเกจ:
sudo apt update
- ติดตั้ง OpenSSH Server:
sudo apt install openssh-server
- เริ่มบริการและตรวจสอบสถานะ:
sudo systemctl status ssh
หมายเหตุ: ในหน้าทางการของ Ubuntu ก็มีข้อมูลรายละเอียดของ OpenSSH อยู่ด้วย

3. การตรวจสอบสถานะบริการ SSH และการเปิดใช้งานขณะระบบเริ่มต้น
เราจะตรวจสอบว่า SSH ทำงานถูกต้องหรือไม่ และตั้งค่าให้เริ่มทำงานอัตโนมัติเมื่อระบบเริ่มต้น
- ตรวจสอบสถานะบริการ:
sudo systemctl status ssh
- ทำให้ SSH เริ่มทำงานอัตโนมัติเมื่อบูตเครื่อง:
sudo systemctl enable ssh
4. วิธีอนุญาต SSH ในการตั้งค่าไฟร์วอลล์
เราจะใช้ UFW (Uncomplicated Firewall) ที่ติดตั้งมาพร้อมกับ Ubuntu เพื่ออนุญาตการเข้าถึง SSH
- อนุญาตการเชื่อมต่อ SSH ในไฟร์วอลล์:
sudo ufw allow ssh
- ตรวจสอบสถานะ UFW:
sudo ufw status

5. วิธีเชื่อมต่อกับ Ubuntu SSH Server
หากต้องการเชื่อมต่อ SSH จากระยะไกล โปรดทำตามขั้นตอนต่อไปนี้
- ตรวจสอบที่อยู่ IP:
ip a
- เชื่อมต่อด้วย SSH:
ssh username@ip_address
หากมีข้อความเตือนปรากฏขึ้นในการเชื่อมต่อครั้งแรก ให้พิมพ์ “yes” และป้อนรหัสผ่านเพื่อดำเนินการต่อ
คำแนะนำ: สำหรับผู้ใช้ Windows สามารถใช้ซอฟต์แวร์ที่ชื่อว่า PuTTY เพื่อเชื่อมต่อ SSH ได้
6. การตั้งค่า SSH ขั้นสูง (การเปลี่ยนพอร์ต, ปิดการเข้าสู่ระบบด้วยบัญชี root)
เราจะแก้ไขการตั้งค่าเริ่มต้นของ SSH เพื่อเพิ่มความปลอดภัย
- การเปลี่ยนพอร์ตเริ่มต้น:
การเปลี่ยนพอร์ตเริ่มต้นของ SSH จาก 22 จะช่วยลดความเสี่ยงจากการโจมตีแบบ Brute-force ได้
sudo nano /etc/ssh/sshd_config
#Port 22 → เปลี่ยนเป็นหมายเลขใดก็ได้ที่คุณต้องการ
- การปิดการเข้าสู่ระบบด้วยบัญชี root:
เพื่อเพิ่มความปลอดภัย เราจะปิดการใช้งานการเข้าสู่ระบบด้วยบัญชี root
PermitRootLogin no
หลังจากทำการเปลี่ยนแปลงแล้ว ให้รีสตาร์ทบริการ SSH
sudo systemctl restart ssh

7. การเสริมสร้างความปลอดภัย SSH Server (แนวทางปฏิบัติที่ดีที่สุด)
เราจะแนะนำแนวทางปฏิบัติที่ดีที่สุดเพื่อเพิ่มความปลอดภัยของ SSH
- การใช้การพิสูจน์ตัวตนด้วย SSH Key:
การใช้การพิสูจน์ตัวตนด้วย Public Key แทนการใช้รหัสผ่าน จะช่วยเสริมความปลอดภัยได้
โปรดอ้างอิงจากคู่มือการสร้าง SSH Key เพื่อตั้งค่าคู่ Key - จำกัดการเข้าถึงเฉพาะผู้ใช้บางราย:
เพื่ออนุญาตให้เฉพาะผู้ใช้บางรายเท่านั้นที่เข้าถึง SSH ได้ ให้ใช้คำสั่งAllowUsers
- ป้องกันการโจมตีแบบ Brute-force ด้วย Fail2Ban:
ติดตั้ง Fail2Ban ซึ่งจะบล็อกการพยายามล็อกอินที่ล้มเหลวหลายครั้งโดยอัตโนมัติ
sudo apt install fail2ban
สำหรับการตั้งค่า โปรดอ้างอิงจากเอกสารทางการวิธีตั้งค่า Fail2Ban
8. การแก้ไขปัญหาทั่วไปเกี่ยวกับการเชื่อมต่อ SSH
หากเกิดปัญหาในการเชื่อมต่อ SSH โปรดดูรายการตรวจสอบต่อไปนี้เพื่อแก้ไขปัญหา
- การตั้งค่าไฟร์วอลล์ผิดพลาด: ตรวจสอบว่า UFW หรือไฟร์วอลล์อื่นๆ ได้รับการตั้งค่าอย่างถูกต้องหรือไม่
- การตรวจสอบที่อยู่ IP: ตรวจสอบที่อยู่ IP อีกครั้งว่าถูกต้องหรือไม่
- ข้อผิดพลาดในไฟล์ตั้งค่า SSH: ตรวจสอบไฟล์
/etc/ssh/sshd_config
ว่าไม่มีข้อผิดพลาด และรีสตาร์ทหากจำเป็น
สรุป
ในคู่มือนี้ เราได้แนะนำวิธีการติดตั้งและตั้งค่า SSH บน Ubuntu อย่างปลอดภัย โปรดปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดสำหรับการเสริมสร้างความปลอดภัย เพื่อการจัดการเซิร์ฟเวอร์ที่ปลอดภัยและมีประสิทธิภาพ สำหรับข้อมูลเพิ่มเติม สามารถดูได้จากคู่มือการตั้งค่า SSH ของ Ubuntu อย่างเป็นทางการ