SSH เชื่อมต่อไม่ได้: เช็กลิสต์ 7 ข้อ

อ่านประมาณ 1 นาที

อาการ SSH เข้าไม่ได้มีหลายสาเหตุ การไล่ตรวจเป็นลำดับจากไกลไปใกล้ ช่วยให้หาสาเหตุได้เร็วโดยไม่เดามั่ว

เช็กลิสต์ 7 ข้อ

  1. เครื่องปลายทางเปิดอยู่และ ping ถึงหรือไม่
  2. ชื่อเครื่อง (DNS) ชี้ไปที่ IP ที่ถูกต้องหรือไม่
  3. พอร์ต 22 (หรือพอร์ตที่ตั้งไว้) เปิดรับการเชื่อมต่อหรือไม่
  4. บริการ SSH ทำงานอยู่หรือไม่
  5. Firewall ของเครื่องและเครือข่ายอนุญาตหรือไม่
  6. ชื่อผู้ใช้ รหัสผ่าน หรือกุญแจถูกต้องหรือไม่
  7. สิทธิ์ของโฟลเดอร์ ~/.ssh และไฟล์กุญแจถูกต้องหรือไม่

คำสั่งที่ใช้ตรวจ

จากเครื่องของคุณ

ping -c 3 server.example.com
nc -vz server.example.com 22
ssh -v [email protected]

ตัวเลือก -v แสดงขั้นตอนการเชื่อมต่อ ช่วยให้เห็นว่าติดที่การเชื่อมต่อ หรือที่การพิสูจน์ตัวตน

บนเซิร์ฟเวอร์

sudo systemctl status ssh          # Ubuntu / Debian
sudo systemctl status sshd         # RHEL / Rocky / AlmaLinux
sudo ss -tlnp | grep :22
sudo sshd -t                       # ตรวจไวยากรณ์ของไฟล์ตั้งค่า
sudo journalctl -u ssh -n 50 --no-pager

ชื่อบริการต่างกันตามดิสทริบิวชัน: Ubuntu ใช้ ssh ส่วน RHEL และตระกูลเดียวกันใช้ sshd

สิทธิ์ของไฟล์กุญแจ

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

ก่อนแก้ /etc/ssh/sshd_config บนเครื่องที่เข้าได้ทางเดียวคือ SSH ให้เปิดหน้าต่าง SSH ค้างไว้อีกอัน และรัน sshd -t ก่อนรีสตาร์ตบริการ ถ้าพิมพ์ผิดแล้วรีสตาร์ต คุณอาจถูกล็อกออกจากเครื่อง

Leave a Reply

Your email address will not be published. Required fields are marked *