วิธีเปิดใช้งาน SSH บน CentOS 8

How Enable Ssh Centos 8



ในบทความนี้ ฉันจะแสดงวิธีติดตั้งไคลเอ็นต์ SSH และเครื่องมือเซิร์ฟเวอร์บนเซิร์ฟเวอร์ CentOS 8 และวิธีกำหนดค่าเซิร์ฟเวอร์ SSH บน CentOS 8 มาเริ่มกันเลย

การติดตั้งซอฟต์แวร์ไคลเอ็นต์ SSH:

ในการเชื่อมต่อกับเซิร์ฟเวอร์ SSH คุณต้องมีโปรแกรมไคลเอนต์ OpenSSH ติดตั้งอยู่ในเครื่องไคลเอนต์ของคุณ







ในเครื่อง CentOS หรือ RHEL คุณสามารถติดตั้งโปรแกรมไคลเอนต์ OpenSSH ด้วยคำสั่งต่อไปนี้:



$sudo ยำติดตั้งopensh-ลูกค้า



ควรติดตั้งโปรแกรมไคลเอ็นต์ SSH ในกรณีของฉัน ติดตั้งไว้แล้ว





การติดตั้งซอฟต์แวร์เซิร์ฟเวอร์ SSH:

หากคุณต้องการเชื่อมต่อกับเซิร์ฟเวอร์ CentOS 8 โดยใช้ SSH คุณต้องมีซอฟต์แวร์เซิร์ฟเวอร์ SSH ติดตั้งอยู่ในเครื่อง CentOS 8 ของคุณ



ในการติดตั้งซอฟต์แวร์เซิร์ฟเวอร์ SSH บนเครื่อง CentOS 8 ของคุณ ให้รันคำสั่งต่อไปนี้:

$sudo ยำติดตั้งopensh-เซิร์ฟเวอร์

ควรติดตั้งแพ็คเกจเซิร์ฟเวอร์ OpenSSH ในกรณีของฉันมีการติดตั้งไว้แล้ว

การจัดการบริการเซิร์ฟเวอร์ OpenSSH:

เมื่อคุณติดตั้งซอฟต์แวร์เซิร์ฟเวอร์ OpenSSH บนเครื่อง CentOS 8 แล้ว ให้ตรวจสอบว่าบริการ sshd ทำงานด้วยคำสั่งต่อไปนี้หรือไม่:

$sudoสถานะ systemctl sshd

อย่างที่คุณเห็น บริการ sshd คือ คล่องแคล่ว / วิ่ง . ยังเป็น เปิดใช้งาน เพื่อเริ่มต้นโดยอัตโนมัติเมื่อบูตระบบ

เซิร์ฟเวอร์ SSH กำลังฟังอินเทอร์เฟซเครือข่ายทั้งหมด ( 0.0.0.0 ) บนพอร์ต 22 โดยค่าเริ่มต้น.

หากบริการ sshd ไม่ทำงานบนเครื่อง CentOS 8 ของคุณด้วยเหตุผลบางประการ คุณสามารถเริ่มด้วยตนเองโดยใช้คำสั่งต่อไปนี้:

$sudosystemctl เริ่ม sshd

หากไม่ได้เปิดใช้งานบริการ sshd ให้เริ่มทำงานโดยอัตโนมัติเมื่อบู๊ตระบบ คุณสามารถเพิ่มบริการดังกล่าวในการเริ่มต้นระบบได้ดังนี้:

$sudosystemctlเปิดใช้งานsshd

ในทำนองเดียวกัน ถ้าคุณไม่ต้องการให้บริการ SSH เริ่มทำงานโดยอัตโนมัติในการบู๊ตระบบ (ด้วยเหตุผลด้านความปลอดภัย) ให้ลบบริการ sshd ออกจากการเริ่มต้นระบบดังนี้:

$sudosystemctl ปิดการใช้งาน sshd

หากคุณต้องการหยุดบริการ sshd เมื่อคุณกำหนดค่าเครื่องเซิร์ฟเวอร์ CentOS 8 แล้ว คุณสามารถทำได้ดังนี้:

$sudosystemctl หยุด sshd

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

$sudosystemctl รีสตาร์ท sshd

การเชื่อมต่อกับเซิร์ฟเวอร์ SSH:

ในการเชื่อมต่อกับเซิร์ฟเวอร์ SSH คุณจำเป็นต้องทราบที่อยู่ IP ของเซิร์ฟเวอร์ CentOS 8 ของคุณเมื่อคุณได้ติดตั้งซอฟต์แวร์เซิร์ฟเวอร์ SSH

หากต้องการค้นหาที่อยู่ IP ให้เรียกใช้คำสั่งต่อไปนี้บนเครื่อง CentOS 8 ของคุณ

$ipถึง

อย่างที่คุณเห็นที่อยู่ IP ของเครื่อง CentOS 8 ของฉันคือ 192.168.21.226 มันจะแตกต่างกันสำหรับคุณ ดังนั้นโปรดแทนที่ด้วยของคุณตั้งแต่บัดนี้เป็นต้นไป

จากคอมพิวเตอร์ไคลเอนต์ (ต้องติดตั้งโปรแกรมไคลเอนต์ SSH) ให้เรียกใช้คำสั่งต่อไปนี้เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ CentOS 8 โดยใช้ SSH:

$sshเข้าสู่ระบบ_ชื่อผู้ใช้@ที่อยู่ IP

ตอนนี้พิมพ์ ใช่ แล้วกด .

ตอนนี้พิมพ์รหัสผ่านของคุณ เข้าสู่ระบบ_ชื่อผู้ใช้ แล้วกด .

คุณควรลงชื่อเข้าใช้เครื่อง CentOS 8 ผ่าน SSH

ตอนนี้คุณสามารถเรียกใช้คำสั่งใดๆ บนเซิร์ฟเวอร์ CentOS 8 ของคุณจากไคลเอนต์ได้

เมื่อเสร็จแล้ว ให้ปิดเซสชัน SSH ดังนี้:

$ทางออก

ควรปิดเซสชัน SSH

ไฟล์การกำหนดค่า SSH:

บน CentOS 8 ไฟล์การกำหนดค่าเซิร์ฟเวอร์ SSH และไคลเอนต์อยู่ใน /etc/ssh ไดเรกทอรี

เนื้อหาของ /etc/ssh ไดเร็กทอรีจะแสดงในภาพหน้าจอด้านล่าง

ที่นี่, ssh_config และ ssh_config.d/05-redhat.conf คือไฟล์การกำหนดค่าไคลเอ็นต์ SSH

sshd_config เป็นไฟล์การกำหนดค่าเซิร์ฟเวอร์ SSH sshd_config file เป็นจุดสนใจหลักของเราในบทความนี้

การกำหนดค่าเซิร์ฟเวอร์ SSH:

ในการแก้ไข sshd_config คุณสามารถใช้โปรแกรมแก้ไขข้อความเริ่มต้นของ CentOS 8 ได้ เรา .

ในการเปิด /etc/ssh/sshd_config ไฟล์คอนฟิกูเรชันในโปรแกรมแก้ไขข้อความ vi ให้รันคำสั่งต่อไปนี้:

$sudo เรา /ฯลฯ/ssh/sshd_config

ควรเปิดไฟล์การกำหนดค่า หากต้องการแก้ไขไฟล์ ให้กด ผม เพื่อไปที่ โหมดแทรก .

เมื่อคุณแก้ไขไฟล์กำหนดค่าเสร็จแล้ว ให้กด กลับไป โหมดคำสั่ง .

หากคุณต้องการบันทึกไฟล์และปิด เรา โปรแกรมแก้ไขข้อความ พิมพ์ : ว้าว! แล้วกด .

หากคุณต้องการยกเลิกการเปลี่ยนแปลงและปิด เรา โปรแกรมแก้ไขข้อความ พิมพ์ : NS! แล้วกด .

การเปลี่ยนพอร์ตเซิร์ฟเวอร์ SSH:

หากคุณต้องการเปลี่ยนพอร์ตเซิร์ฟเวอร์ SSH จากพอร์ตเริ่มต้น 22 ไปที่อย่างอื่น (สมมติว่า 8111) ด้วยเหตุผลด้านความปลอดภัย จากนั้นให้ยกเลิกการใส่เครื่องหมายบรรทัดที่ทำเครื่องหมายไว้ในภาพหน้าจอด้านล่างจาก sshd_config ไฟล์การกำหนดค่า

ไฟล์คอนฟิกูเรชันควรมีลักษณะดังนี้หนึ่งครั้ง ท่าเรือ ถูกตั้งค่า เมื่อเสร็จแล้ว ให้บันทึกไฟล์

ตอนนี้ กำหนดค่า SELinux เพื่ออนุญาต port 8111 สำหรับ SSH ด้วยคำสั่งต่อไปนี้:

$sudoพอร์ตการจัดการ-ถึง -NSssh_port_t-NStcp8111

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

$ firewall-cmd--เพิ่มพอร์ต=8111/tcp--ถาวร
$ firewall-cmd--reload

ตอนนี้ รีสตาร์ท sshd บริการดังต่อไปนี้:

$sudosystemctl รีสตาร์ท sshd

เซิร์ฟเวอร์ SSH ควรทำงานบนพอร์ต 8111 จากนี้ไป.

$sudoสถานะ systemctl sshd

การเปลี่ยนที่อยู่การฟัง:

หากคุณต้องการให้เซิร์ฟเวอร์ SSH ฟังอินเทอร์เฟซเครือข่ายเดียว ให้เพิ่มบรรทัดต่อไปนี้ในไฟล์ sshd_config ไฟล์.

ListenAddress IP_ADDRESS_OF_INTERFACE

ไฟล์คอนฟิกูเรชันควรมีลักษณะดังนี้หนึ่งครั้ง ListenAddress ถูกตั้งค่า

ปิดใช้งานการเข้าสู่ระบบรูท:

โดยค่าเริ่มต้น CentOS 8 อนุญาตให้ผู้ใช้รูทเข้าสู่ระบบผ่าน SSH ถ้าไม่อยากก็เปลี่ยน PermitRootLogin ใช่ ถึง PermitRootLogin no ใน sshd_config ไฟล์การกำหนดค่า

ไฟล์คอนฟิกูเรชันควรมีลักษณะดังนี้หนึ่งครั้ง PermisRootLogin ถูกตั้งค่าเป็น ไม่ .

การกำหนดค่า Max Session และ Max Password Tries:

หากคุณต้องการจำกัดจำนวนผู้ใช้ที่ยังคงเข้าสู่ระบบเซิร์ฟเวอร์ CentOS 8 ของคุณผ่าน SSH ได้ ให้ยกเลิกการแสดงความคิดเห็น MaxSessions ใน sshd_config ไฟล์และตั้งค่าหมายเลขเซสชันที่คุณต้องการ (ค่าเริ่มต้น 10)

MaxSessions

ไฟล์คอนฟิกูเรชันควรมีลักษณะดังนี้หนึ่งครั้ง MaxSessions ถูกตั้งค่าเป็น 10 .

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

MaxAuthTries

ไฟล์คอนฟิกูเรชันควรมีลักษณะดังนี้หนึ่งครั้ง MaxAuthTries ถูกตั้งค่าเป็น 3 .

นั่นคือวิธีที่คุณติดตั้งและกำหนดค่าเซิร์ฟเวอร์ SSH บน CentOS 8 ขอบคุณที่อ่านบทความนี้