ไม่ต้อง KYC · อีเมลไม่บังคับ · ชำระด้วย Monero, Bitcoin หรือ USDT
ภาษา: ไทย
ติดตั้ง VPS

คู่มือ · ตรวจเมื่อ 2026-11-10

ฉันจะทำให้ SSH แข็งแรงบน VPS ใหม่ได้อย่างไร?

การเปลี่ยนแปลงหกอย่างใน sshd_config ใช้เวลาประมาณสิบนาที ให้เปิดเซสชันแรกไว้จนกว่าเซสชันสุดท้ายจะทดสอบผ่าน

อัปเดตล่าสุด:

คำตอบแบบสั้น

ฉันจะทำให้ SSH แข็งแรงบน VPS ใหม่ได้อย่างไร?

ในการทำให้ SSH แข็งแรงบน VPS ใหม่ ให้สร้างผู้ใช้ sudo ติดตั้งคีย์สาธารณะของคุณ แล้วตั้ง PasswordAuthentication no, PermitRootLogin no และ AllowUsers ในไฟล์ drop-in ภายใต้ /etc/ssh/sshd_config.d/ ตรวจด้วย sshd -t แล้วโหลดใหม่ Gloamport Dusk, 1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic, มีราคา $5.25 ต่อเดือนเมื่อสมัคร 12 เดือน

ตัวเลือก sshd_config ใดสำคัญที่สุดบน VPS ใหม่?

ตัวเลือกค่าค่าเริ่มต้นในคู่มือ sshd_config
PasswordAuthenticationnoyes
KbdInteractiveAuthenticationnoyes (ไฟล์ของ Debian ตั้งค่า no)
PermitRootLoginnoprohibit-password
PubkeyAuthenticationyesyes
AllowUsersผู้ใช้ sudo ของคุณผู้ใช้ทุกคน
MaxAuthTries36
LoginGraceTime30120 วินาที

ค่าเริ่มต้นตามที่ระบุใน sshd_config(5) ตรวจเมื่อ 2026-11-10 ค่าในคอลัมน์กลางคือตัวเลือกของคู่มือนี้

ทำไมต้องทำให้ SSH แข็งแรงก่อนสิ่งอื่น?

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

Root over SSH. Paste a public key at checkout and password login stays switched off; leave it empty and the team sets a temporary root password, shown in your dashboard, that you change at first login หากคุณวางคีย์ตอนชำระเงิน การล็อกอินด้วยรหัสผ่านจะปิดอยู่แล้ว และคู่มือนี้จะเพิ่มข้อจำกัดที่เหลือ หากคุณได้รับรหัสผ่าน root ชั่วคราว ให้เปลี่ยนด้วย passwd ตอนล็อกอินครั้งแรก ก่อนทำอย่างอื่น ตามการสำรวจของ Gloamport เกี่ยวกับ 10 พฤศจิกายน 2569 มี 6 โฮสต์ที่รับ Monero และไม่ขออีเมลตอนสมัคร ดังนั้นในเซิร์ฟเวอร์เหล่านั้น คีย์ SSH และหมายเลขบัญชีคือความลับเพียงอย่างเดียวที่ปกป้องเครื่อง

ฉันจะทำให้ SSH แข็งแรงบน VPS ใหม่ทีละขั้นตอนได้อย่างไร?

ทำตามลำดับนี้ และเปิดเซสชันแรกไว้จนจบ

  1. สร้างผู้ใช้ทั่วไป

    รัน adduser และเพิ่มผู้ใช้เข้ากลุ่ม sudo เพื่อให้คุณหยุดทำงานในฐานะ root

  2. ติดตั้งคีย์สาธารณะของคุณให้ผู้ใช้นั้น

    คัดลอกคีย์ที่ได้รับอนุญาตไปยังผู้ใช้ใหม่ หรือรัน ssh-copy-id -i จากคอมพิวเตอร์ของคุณ ทดสอบการล็อกอินในเทอร์มินัลที่สอง

  3. เขียนไฟล์ drop-in

    สร้าง /etc/ssh/sshd_config.d/00-hardening.conf พร้อมตัวเลือกจากตาราง Debian ใส่โฟลเดอร์นั้นไว้ที่ต้นของ sshd_config และค่าแรกของตัวเลือกจะมีผล ดังนั้นชื่อไฟล์ต้องเรียงขึ้นก่อน

  4. ทดสอบการตั้งค่า

    รัน sshd -t มันตรวจไฟล์ตั้งค่าและคีย์โดยไม่ต้องรีสตาร์ตอะไร และรัน sshd -T เพื่อแสดงค่าที่มีผลจริง

  5. โหลดบริการใหม่

    รีสตาร์ต ssh และเปิดเซสชันใหม่ในฐานะผู้ใช้ใหม่ก่อนปิดเซสชันเก่า

  6. ยืนยันว่า root และรหัสผ่านถูกปฏิเสธ

    ลองล็อกอินเป็น root และด้วยรหัสผ่านจากเทอร์มินัลอีกเครื่อง ทั้งสองต้องล้มเหลว

ฉันจะสร้างผู้ใช้ sudo และใส่คีย์ของฉันให้ได้อย่างไร?

สร้างผู้ใช้ เพิ่มเข้า sudo และคัดลอกคีย์ที่ได้รับอนุญาตของบัญชี root ไปยังผู้ใช้นั้น ใช้คีย์ของคุณจาก ฉันจะสร้างคีย์ SSH สำหรับ VPS ของฉันได้อย่างไร? หากยังไม่มี แทนที่ admin ด้วยชื่อผู้ใช้ที่คุณต้องการ

สร้างผู้ใช้และคัดลอกคีย์ (ในฐานะ root)
adduser admin
usermod -aG sudo admin
mkdir -p /home/admin/.ssh
cp /root/.ssh/authorized_keys /home/admin/.ssh/authorized_keys
chown -R admin:admin /home/admin/.ssh
chmod 700 /home/admin/.ssh
chmod 600 /home/admin/.ssh/authorized_keys

ไฟล์ drop-in ของ sshd_config มีอะไรบ้าง?

ใส่ตัวเลือกไว้ในไฟล์ drop-in เดียว เพื่อไม่ให้การอัปเกรดแพ็กเกจเขียนทับ คู่มือ sshd_config ระบุว่าสำหรับคีย์เวิร์ดส่วนใหญ่จะใช้ค่าแรกที่พบ และไฟล์ของ Debian รวม /etc/ssh/sshd_config.d/*.conf ไว้ที่ต้น ดังนั้นคำนำหน้า 00- จะทำให้ของคุณมีผลเหนือไฟล์อย่างเช่น drop-in ของอิมเมจบนคลาวด์

/etc/ssh/sshd_config.d/00-hardening.conf
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers admin
MaxAuthTries 3
LoginGraceTime 30
ทดสอบแล้วจึงนำไปใช้
sshd -t
sshd -T | grep -E "passwordauthentication|permitrootlogin|allowusers"
systemctl restart ssh

ควรเปลี่ยนพอร์ต SSH หรือเพิ่มไฟร์วอลล์ไหม?

การเปลี่ยนพอร์ตช่วยลดสัญญาณรบกวนในล็อก แต่ไม่ได้เพิ่มความปลอดภัยจริง จึงเป็นตัวเลือกไม่บังคับ คุณตั้งค่าได้ด้วย Port และอนุญาตให้มีบรรทัด Port หลายบรรทัด หากเปลี่ยน ให้เปิดพอร์ตใหม่ในไฟร์วอลล์ก่อนรีสตาร์ต ssh KVM เต็มรูปแบบ: เคอร์เนลของคุณเอง กฎไฟร์วอลล์ของคุณเอง และการเข้ารหัสดิสก์ของคุณเองหากคุณตั้งค่าไว้ ดังนั้นคุณใช้ไฟร์วอลล์ที่เหมาะกับคุณได้

เมื่อ SSH แน่นหนาแล้ว ชั้นถัดไปคือทางเชื่อมส่วนตัว (วิธีตั้งค่า WireGuard บน VPS?) และดิสก์ที่เข้ารหัส (ฉันเข้ารหัสดิสก์ VPS ด้วย LUKS ได้ไหม?) Dusk ที่มี RAM 2 GB มีราคา $5.25 ต่อเดือนเมื่อสมัคร 12 เดือน ดูได้ที่ หน้าราคา

สรุป
  • ทำงานในฐานะผู้ใช้ sudo ไม่ใช่ root
  • ตั้งค่า PasswordAuthentication no และ KbdInteractiveAuthentication no
  • ตั้งค่า PermitRootLogin no เมื่อผู้ใช้ sudo ใช้งานได้แล้ว
  • ใช้ AllowUsers เพื่อระบุว่าใครล็อกอินได้
  • ใส่ตัวเลือกไว้ใน drop-in ที่ชื่อเรียงขึ้นก่อน เช่น 00-hardening.conf
  • รัน sshd -t ก่อนรีสตาร์ตทุกครั้ง และเปิดเซสชันที่สองไว้
  • Dusk มีราคา $5.25 ต่อเดือนเมื่อสมัคร 12 เดือน

การทำให้ SSH แข็งแรงบน VPS: คำถามที่พบบ่อย

PermitRootLogin prohibit-password หมายความว่าอย่างไร?

มันอนุญาตให้ root ล็อกอินด้วยคีย์แต่ไม่ให้ล็อกอินด้วยรหัสผ่าน คู่มือระบุว่าเป็นค่าเริ่มต้น และ no ก้าวไปอีกขั้นหนึ่ง

ทำไมการเปลี่ยนแปลงใน sshd_config ของฉันไม่มีผล?

ค่าแรกของตัวเลือกจะมีผล และ Debian รวมโฟลเดอร์ sshd_config.d ก่อน drop-in ที่มาก่อนอาจกำหนดตัวเลือกนั้นไว้แล้ว ดังนั้นตั้งชื่อของคุณเป็น 00-hardening.conf และตรวจด้วย sshd -T

ฉันทดสอบการตั้งค่าโดยไม่ทำให้ SSH พังได้อย่างไร?

รัน sshd -t ซึ่งตรวจเฉพาะไฟล์ตั้งค่าและคีย์ เปิดเซสชันที่สองไว้เมื่อคุณรีสตาร์ต

ฉันต้องปิดการล็อกอินด้วยรหัสผ่านไหม หากวางคีย์ตอนชำระเงินแล้ว?

ที่ Gloamport การวางคีย์จะปิดการล็อกอินด้วยรหัสผ่านไว้แล้ว การตั้งตัวเลือกใน drop-in จะคงสถานะนี้ไว้หลังการอัปเกรด

MaxAuthTries ทำอะไร?

มันจำกัดจำนวนครั้งที่พยายามยืนยันตัวตนต่อการเชื่อมต่อหนึ่งครั้ง คู่มือให้ค่าเริ่มต้นเป็น 6 และคู่มือนี้ตั้งเป็น 3

แหล่งข้อมูล (3)
  1. หน้าคู่มือ sshd_config(5) — Debian (checked 2026-11-10)
  2. หน้าคู่มือ sshd(8) (-t และ -T) — Debian (checked 2026-11-10)
  3. หน้าคู่มือ ssh-copy-id(1) — Debian (checked 2026-11-10)

เริ่มต้น $3.74/เดือน · ไม่ต้อง KYC

ติดตั้ง VPS