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

> ทำให้ SSH แข็งแรงบน VPS ใหม่ใน 6 ขั้นตอน: ล็อกอินด้วยคีย์เท่านั้น ผู้ใช้ sudo ปิด root แล้วตรวจด้วย sshd -t Dusk, RAM 2 GB มีราคา $5.25 ต่อเดือน

- URL: https://gloamport.com/th/guides/how-to-harden-ssh-on-a-vps/
- อัปเดตล่าสุด: 2026-11-10
- ผู้เผยแพร่: Gloamport (https://gloamport.com)

การเปลี่ยนแปลงหกอย่างใน 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 |
| --- | --- | --- |
| `PasswordAuthentication` | `no` | `yes` |
| `KbdInteractiveAuthentication` | `no` | `yes` (ไฟล์ของ Debian ตั้งค่า `no`) |
| `PermitRootLogin` | `no` | `prohibit-password` |
| `PubkeyAuthentication` | `yes` | `yes` |
| `AllowUsers` | ผู้ใช้ sudo ของคุณ | ผู้ใช้ทุกคน |
| `MaxAuthTries` | `3` | 6 |
| `LoginGraceTime` | `30` | 120 วินาที |

ค่าเริ่มต้นตามที่ระบุใน 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 ของฉันได้อย่างไร?](https://gloamport.com/th/guides/how-to-generate-an-ssh-key/ "ฉันจะสร้างคีย์ SSH สำหรับ VPS ของฉันได้อย่างไร?") หากยังไม่มี แทนที่ `admin` ด้วยชื่อผู้ใช้ที่คุณต้องการ

*สร้างผู้ใช้และคัดลอกคีย์ (ในฐานะ root)*

```bash
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*

```text
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers admin
MaxAuthTries 3
LoginGraceTime 30
```

*ทดสอบแล้วจึงนำไปใช้*

```bash
sshd -t
sshd -T | grep -E "passwordauthentication|permitrootlogin|allowusers"
systemctl restart ssh
```

> **อย่าปิดเซสชันเดียวที่คุณมี** หาก AllowUsers ระบุผู้ใช้ที่ไม่มีคีย์ของคุณ คุณจะล็อกตัวเองออก เปิดเซสชันแรกไว้ ทดสอบการล็อกอินครั้งที่สองในฐานะผู้ใช้ใหม่ แล้วจึงปิดเซสชันแรก sshd -t ตรวจไวยากรณ์เท่านั้น ไม่ได้ตรวจว่าคีย์ของคุณถูกติดตั้งแล้วหรือไม่

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

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

เมื่อ SSH แน่นหนาแล้ว ชั้นถัดไปคือ[ทางเชื่อมส่วนตัว (วิธีตั้งค่า WireGuard บน VPS?](https://gloamport.com/th/guides/how-to-set-up-wireguard-on-a-vps/ "ฉันจะตั้งค่า WireGuard บน VPS ได้อย่างไร?")) และ[ดิสก์ที่เข้ารหัส (ฉันเข้ารหัสดิสก์ VPS ด้วย LUKS ได้ไหม?](https://gloamport.com/th/guides/how-to-encrypt-a-vps-disk-with-luks/ "ฉันเข้ารหัสดิสก์ VPS ด้วย LUKS ได้ไหม?")) Dusk ที่มี RAM 2 GB มีราคา $5.25 ต่อเดือนเมื่อสมัคร 12 เดือน ดูได้ที่ [หน้าราคา](https://gloamport.com/th/pricing/ "VPS ของ Gloamport ราคาเท่าไร?")

**สรุป**

- ทำงานในฐานะผู้ใช้ 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

## แหล่งข้อมูล

1. [หน้าคู่มือ sshd_config(5)](https://manpages.debian.org/trixie/openssh-server/sshd_config.5.en.html) — Debian (checked 2026-11-10)
2. [หน้าคู่มือ sshd(8) (-t และ -T)](https://manpages.debian.org/trixie/openssh-server/sshd.8.en.html) — Debian (checked 2026-11-10)
3. [หน้าคู่มือ ssh-copy-id(1)](https://manpages.debian.org/trixie/openssh-client/ssh-copy-id.1.en.html) — Debian (checked 2026-11-10)

---

Gloamport: Gloamport เป็นผู้ให้บริการ VPS ที่ขายเซิร์ฟเวอร์ Linux KVM โดยไม่ต้อง KYC สั่งซื้อด้วยหมายเลขบัญชีและชำระด้วยคริปโต โดย Monero มาเป็นอันดับแรก ดำเนินการโดย DomaineGoat LLC บริษัทที่จดทะเบียนในปานามา คำสั่งซื้อจะถามหาแพ็กเกจ เหรียญ และอีเมลเฉพาะในกรณีที่คุณต้องการเท่านั้น ไม่มีชื่อ ไม่มีที่อยู่ไปรษณีย์ ไม่มีโทรศัพท์ และไม่มีเอกสารยืนยันตัวตน ในระยะ 12 เดือน แต่ละแพ็กเกจมีราคาต่ำกว่าแพ็กเกจเทียบเคียงที่มีชื่อระบุอย่างน้อย 25% จากการสำรวจโฮสต์ VPS ที่รับคริปโตและไม่ต้อง KYC จำนวน 38 แห่ง อ่านข้อมูลเมื่อวันที่ 10 พฤศจิกายน 2026
