วิธีแก้ไข “การเชื่อมต่อ ssh ถูกปฏิเสธ” บน Linux

ได้รับข้อผิดพลาด "การเชื่อมต่อถูกปฏิเสธ" เมื่อพยายามเชื่อมต่อผ่าน SSH บน Linux ? ถ้าใช่ คู่มือนี้เหมาะสำหรับคุณ! ปฏิบัติตามด้านล่างในขณะที่เราแก้ไขข้อผิดพลาด "การเชื่อมต่อถูกปฏิเสธ" ในระบบ Linux ของคุณ! 

วิธีแก้ไข “การเชื่อมต่อ ssh ถูกปฏิเสธ” บน Linux

แก้ไข 1 – พอร์ต 22 ถูกบล็อกโดยไฟร์วอลล์

สาเหตุหนึ่งที่เป็นไปได้ที่คุณอาจได้รับ "การเชื่อมต่อ ssh ถูกปฏิเสธ" ขณะเชื่อมต่อกับเดสก์ท็อปหรือเซิร์ฟเวอร์ Linux ที่มีเซิร์ฟเวอร์ OpenSSH ตั้งค่าไว้คือไฟร์วอลล์บล็อกพอร์ตเริ่มต้น

เพื่อแก้ปัญหานี้ คุณสามารถปลดบล็อกพอร์ต 22 โดยใช้ไฟร์วอลล์ของคุณ ในคู่มือนี้ เราจะแสดงวิธีปลดบล็อกพอร์ต 22 โดยใช้ไฟร์วอลล์บรรทัดคำสั่ง UFW สำหรับ Ubuntu/Debian และดิสทริบิวชันอื่นๆ ที่ใช้ UFW นอกจากนี้เรายังจะครอบคลุม FirewallD สำหรับผู้ที่ใช้ RedHat distribution เช่น Fedora, RHEL เป็นต้น

หมายเหตุ: หากคุณใช้ระบบไฟร์วอลล์อื่นที่ไม่ใช่ UFW หรือ Firewalld บน Linux คุณจะต้องศึกษาคู่มือซอฟต์แวร์ของคุณเพื่อเรียนรู้วิธีปลดบล็อกพอร์ต 22

ในการเริ่มต้นกระบวนการปลดบล็อก คุณจะต้องมีหน้าต่างเทอร์มินัล เปิดเซสชันเทอร์มินัลบนเดสก์ท็อป Linux หรือเซิร์ฟเวอร์ Linux ที่โฮสต์เซิร์ฟเวอร์ OpenSSH ของคุณ เมื่อหน้าต่างเทอร์มินัลเปิดขึ้น ให้ปฏิบัติตามคำแนะนำในการเลิกบล็อกที่สอดคล้องกับไฟร์วอลล์ที่คุณใช้

เลิกบล็อกพอร์ต 22 บน Ubuntu, Debian และระบบปฏิบัติการ Linux อื่น ๆ ที่ใช้ UFW 

บนเซิร์ฟเวอร์และเดสก์ท็อป Linux จำนวนมาก ไฟร์วอลล์ UFW จะทำงานตามค่าเริ่มต้น หากระบบนี้ทำงานอยู่ พอร์ต 22 อาจถูกบล็อก หากต้องการปลดบล็อกเพื่ออนุญาตการรับส่งข้อมูล SSH ผ่านพอร์ต 22 คุณจะต้องใช้คำสั่งallow

ใน terminal, รัน  sudo ufw อนุญาตให้ SSHคำสั่ง คำสั่งนี้จะบอกให้ไฟร์วอลล์ UFW อนุญาตโปรไฟล์ "ssh" ผ่านไฟร์วอลล์ ซึ่งโดยค่าเริ่มต้น พอร์ต 22

วิธีแก้ไข “การเชื่อมต่อ ssh ถูกปฏิเสธ” บน Linux

sudo ufw อนุญาต ssh

หากคุณใช้ SSH บนพอร์ตที่กำหนดเองอื่นที่ไม่ใช่พอร์ต 22 การป้อน  คำสั่งallow ssh จะไม่ทำงาน และ UFW จะบล็อกการเชื่อมต่อต่อไป ในการแก้ไขปัญหานี้ คุณสามารถใช้  คำสั่งufw allow และระบุพอร์ตที่จะปลดบล็อก

ตัวอย่างเช่น หากเดสก์ท็อปหรือเซิร์ฟเวอร์ Linux ของคุณใช้งาน OpenSSH บนพอร์ต 443 ที่กำหนดเอง คุณสามารถปลดบล็อกผ่านไฟร์วอลล์ UFW ได้โดยใช้คำสั่งด้านล่าง

sudo ufw อนุญาต 443/tcp

ในการปลดบล็อกพอร์ต SSH ที่กำหนดเองด้วยไฟร์วอลล์ UFW บน Ubuntu, Debian หรือเซิร์ฟเวอร์/เดสก์ท็อปอื่นๆ ที่ใช้งานไฟร์วอลล์ UFW ให้ระบุพอร์ตพร้อมกับคำสั่งallow 

sudo ufw อนุญาต MY_CUSTOM_SSH_PORT/tcp

เลิกบล็อกพอร์ต 22 บน Fedora, RHEL และระบบปฏิบัติการ Linux อื่นๆ ที่ใช้ FirewallD

หากคุณใช้เซิร์ฟเวอร์หรือเดสก์ท็อปที่ใช้ Fedora, RHEL หรือระบบปฏิบัติการ Linux อื่นที่ใช้ Redhat คุณน่าจะใช้ Firewalld หากคุณได้รับข้อผิดพลาด "การเชื่อมต่อถูกปฏิเสธ" อาจเป็นเพราะพอร์ต 22 ถูกบล็อก ต่อไปนี้เป็นวิธีเปิดใช้งานด้วย FirewallD

ก่อนอื่น คุณต้องลงชื่อเข้าใช้บัญชีรูทในเทอร์มินัล จำเป็นต้องเข้าถึงรูทเพื่อแก้ไขการตั้งค่าการกำหนดค่า FirewallD ในการเข้าถึงบัญชีรูท ให้รันคำสั่งsu – ต่อไปนี้

ซู - 

หลังจากเข้าถึงบัญชีรูทโดยใช้  คำสั่งsu แล้ว ให้ใช้คำสั่ง  firewall-cmd เพื่อเพิ่มกฎไฟร์วอลล์ใหม่ที่อนุญาตให้พอร์ต 22 ถึง (ทราฟฟิก SSH)

firewall-cmd --zone=public --add-port=22/tcp --permanent

หากคุณกำลังเรียกใช้ SSH บนพอร์ตแบบกำหนดเองแทนที่จะเป็นพอร์ต 22 คำสั่งดังกล่าวจะไม่ทำงาน คุณจะต้องเปลี่ยนคำสั่ง “add-port=22” เป็นพอร์ตที่คุณกำหนดเองแทน

firewall-cmd --zone=public --add-port=MY_CUSTOM_SSH_PORT/tcp --permanent

เมื่อคุณได้เพิ่มกฎใหม่ให้กับการกำหนดค่าไฟร์วอลล์แล้ว คุณจะต้องใช้การตั้งค่าใหม่ ใช้การตั้งค่าเหล่านี้ดำเนินการ  -reload ไฟร์วอลล์ cmd คำสั่ง

firewall-cmd --reload

แก้ไข 2 – บริการ OpenSSH ไม่ทำงาน

หากการปลดบล็อกพอร์ต SSH ในไฟร์วอลล์ไม่ได้ผล คุณอาจกำลังเผชิญกับข้อเท็จจริงที่ว่า OpenSSH ไม่ทำงานบนเซิร์ฟเวอร์ของคุณ หากต้องการตรวจสอบว่าบริการหยุดทำงานหรือไม่ ให้เปิดเทอร์มินัลแล้วดำเนินการคำสั่งสถานะ systemctl ของบริการ OpenSSH

สถานะ systemctl sshd

หลังจากรันคำสั่งสถานะ คุณจะเห็นการอ่านค่าของบริการ sshd ซึ่งเป็นไฟล์ที่อนุญาตให้เซิร์ฟเวอร์ OpenSSH ทำงานบนระบบปฏิบัติการ Linux ส่วนใหญ่ 

ดูการอ่านข้อมูล SSH สำหรับส่วน "ใช้งานอยู่" หากมีข้อความว่า "ใช้งานอยู่: ไม่ได้ใช้งาน (ไม่ทำงาน)" บริการ OpenSSH ของคุณจะหยุดทำงานและจำเป็นต้องเริ่มต้นใหม่ หากมีข้อความว่า “ใช้งานอยู่ (ทำงานอยู่)” คุณจะต้องลองแก้ไขอื่นเพื่อดูว่าเหตุใดการเชื่อมต่อจึงถูกปฏิเสธ

วิธีแก้ไข “การเชื่อมต่อ ssh ถูกปฏิเสธ” บน Linux

การเริ่มต้นการกลับมาให้บริการ OpenSSH ขึ้นอีกครั้งคุณสามารถดำเนินการ  systemctl เริ่มต้น sshd คำสั่ง

วิธีแก้ไข “การเชื่อมต่อ ssh ถูกปฏิเสธ” บน Linux

sudo systemctl start sshd

แก้ไข 2.5 - ไม่ได้เปิดใช้งานบริการ OpenSSH

อีกสาเหตุที่เป็นไปได้สำหรับ OpenSSH ที่ปฏิเสธการเชื่อมต่อคือข้อเท็จจริงง่ายๆ ว่าบริการ sshd ของ OpenSSH ไม่ได้เปิดใช้งานเมื่อเริ่มต้น หากไม่เปิดใช้งานเมื่อเริ่มต้น SSH อาจหยุดทำงานทุกครั้งที่รีสตาร์ท ทำให้เกิดปัญหาในการเชื่อมต่อ เพื่อแก้ไขปัญหานี้ คุณสามารถรันคำสั่ง systemctl ต่อไปนี้

sudo systemctl เปิดใช้งาน sshd 

แก้ไข 3 – OpenSSH ทำงานบนพอร์ตอื่น

ผู้ใช้หลายคนชอบปรับแต่งการกำหนดค่า SSH เมื่อตั้งค่าเซิร์ฟเวอร์ SSH สิ่งหนึ่งที่ต้องทำบ่อยที่สุดคือเปลี่ยนพอร์ตเริ่มต้นจาก 22 เป็นอย่างอื่น

หากคุณเปลี่ยนพอร์ต SSH คุณต้องระบุเพื่อให้การเชื่อมต่อสำเร็จ ตัวอย่างเช่น หากเซิร์ฟเวอร์ SSH ทำงานบนพอร์ต 443 เพียงเรียกใช้คำสั่งด้านล่างจะส่งผลให้เกิดข้อผิดพลาดในการเชื่อมต่อ

ssh my-user@my-server

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

ssh -p CUSTOM_PORT_NUMBER user@my-server

ฝากความเห็น

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Intel graphics screen tearing in Pardus Linux by checking X11 vs. Wayland, compositor settings, refresh rate, active Xorg driver, and TearFree only when appropriate.

วิธีการตั้งค่าไฟร์วอลล์ SLES 15 ด้วย firewall-cmd

วิธีการตั้งค่าไฟร์วอลล์ SLES 15 ด้วย firewall-cmd

กำหนดค่า firewalld บน SLES 15: ตรวจสอบโซน อนุญาตบริการหรือพอร์ต บันทึกกฎถาวร โหลดใหม่ได้อย่างปลอดภัย และตรวจสอบการเข้าถึง

คู่มือการตั้งค่าการอัปเดต SLES Live Patching: อัปเดตเคอร์เนลโดยไม่ต้องรีบูตเครื่อง

คู่มือการตั้งค่าการอัปเดต SLES Live Patching: อัปเดตเคอร์เนลโดยไม่ต้องรีบูตเครื่อง

เปิดใช้งานการแพตช์เคอร์เนลแบบเรียลไทม์บน SLES 15 SP7 ใช้การแก้ไขที่รองรับโดยไม่ต้องรีบูต ตรวจสอบแพตช์ที่ใช้งานอยู่ และทำความเข้าใจว่าเมื่อใดที่ยังจำเป็นต้องรีสตาร์ทเคอร์เนล

วิธีเปิดใช้งานโหมด FIPS บน SUSE Linux Enterprise Server 15

วิธีเปิดใช้งานโหมด FIPS บน SUSE Linux Enterprise Server 15

เปิดใช้งานโหมด FIPS บน SLES 15 โดยใช้ยูทิลิตี้การตั้งค่าที่ SUSE รองรับ รีบูตอย่างปลอดภัย ตรวจสอบสถานะเคอร์เนลและนโยบายการเข้ารหัส และตรวจสอบขีดจำกัดการรับรอง

วิธีการติดตั้ง Google Chrome บน Gooroom OS โดยไม่ละเมิดนโยบายความปลอดภัย

วิธีการติดตั้ง Google Chrome บน Gooroom OS โดยไม่ละเมิดนโยบายความปลอดภัย

ติดตั้ง Google Chrome บน Gooroom OS อย่างปลอดภัยด้วยแพ็กเกจ .deb อย่างเป็นทางการ, APT, การตรวจสอบนโยบาย, คำแนะนำในการอัปเดต และการแก้ไขสำหรับอุปกรณ์ที่ได้รับการจัดการ

วิธีการส่งออกบันทึกระบบ SLES ไปยังเซิร์ฟเวอร์ Syslog ระยะไกลอย่างปลอดภัย

วิธีการส่งออกบันทึกระบบ SLES ไปยังเซิร์ฟเวอร์ Syslog ระยะไกลอย่างปลอดภัย

ส่งต่อบันทึกระบบ SLES ไปยังเซิร์ฟเวอร์ syslog ระยะไกลอย่างปลอดภัยด้วย rsyslog, ใบรับรอง TLS, การตรวจสอบชื่อคู่ค้า, คิว, การตรวจสอบความถูกต้อง และการทดสอบ

การผสานรวม Active Directory กับ SSSD ใน SLES 15: คู่มือทีละขั้นตอน

การผสานรวม Active Directory กับ SSSD ใน SLES 15: คู่มือทีละขั้นตอน

เชื่อมต่อ SLES 15 เข้ากับ Active Directory ด้วย SSSD โดยใช้ YaST เตรียม DNS และเวลา กำหนดค่าการเข้าสู่ระบบโดเมน ตรวจสอบ Kerberos และเปรียบเทียบ SSSD, Winbind และ realmd

แก้ไขปัญหาไดรเวอร์ Wi-Fi Realtek RTL8821CE บน Pardus Linux

แก้ไขปัญหาไดรเวอร์ Wi-Fi Realtek RTL8821CE บน Pardus Linux

แก้ไขปัญหา Wi-Fi RTL8821CE บน Pardus Linux โดยตรวจสอบไดรเวอร์ rtw88 ในตัว เฟิร์มแวร์ Realtek คำสั่ง rfkill, NetworkManager และตัวเลือกการสำรองข้อมูลที่ปลอดภัย

แก้ไขปัญหา "ความล้มเหลวชั่วคราวในการแก้ไข DNS" ใน Debian 12 ด้วย systemd-resolved

แก้ไขปัญหา "ความล้มเหลวชั่วคราวในการแก้ไข DNS" ใน Debian 12 ด้วย systemd-resolved

วินิจฉัยและแก้ไขปัญหาการแก้ไขชื่อโดเมน (DNS resolution) บน Debian 12 ที่ใช้ systemd-resolved รวมถึง resolv.conf, NetworkManager, networkd, cache และการตรวจสอบความถูกต้อง

วิธีการติดตั้งระบบปฏิบัติการ Pardus Linux ควบคู่กับ Windows 11 อย่างปลอดภัย

วิธีการติดตั้งระบบปฏิบัติการ Pardus Linux ควบคู่กับ Windows 11 อย่างปลอดภัย

ติดตั้ง Pardus 25.2 ควบคู่ไปกับ Windows 11 โดยทำการสำรองข้อมูล ลดขนาดไดรฟ์ Windows บูตจาก USB UEFI และปกป้องพาร์ติชั่น EFI และพาร์ติชั่นกู้คืนที่มีอยู่เดิม