# Làm sao để tăng cường bảo mật SSH trên VPS mới?

> Tăng cường SSH trên VPS mới trong 6 bước: chỉ khóa, người dùng sudo, tắt root, rồi sshd -t. Dusk, 2 GB RAM, $5.25/tháng.

- URL: https://gloamport.com/vi/guides/how-to-harden-ssh-on-a-vps/
- Cập nhật lần cuối: 2026-11-10
- Đơn vị phát hành: Gloamport (https://gloamport.com)

Sáu thay đổi trong sshd_config mất khoảng mười phút. Hãy giữ phiên đầu tiên mở cho đến khi phiên cuối cùng đã được kiểm tra.

**Trả lời nhanh — Làm sao để tăng cường bảo mật SSH trên VPS mới?**

Để tăng cường bảo mật SSH trên VPS mới, tạo một người dùng sudo, cài khóa công khai của bạn, rồi đặt PasswordAuthentication no, PermitRootLogin no và AllowUsers trong một tệp drop-in dưới /etc/ssh/sshd_config.d/, kiểm tra bằng sshd -t và tải lại. Gloamport Dusk, 1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic, có giá $5.25 mỗi tháng khi đăng ký 12 tháng.

## Những tùy chọn sshd_config nào quan trọng nhất trên VPS mới?

| Tùy chọn | Giá trị | Mặc định trong sshd_config manual |
| --- | --- | --- |
| `PasswordAuthentication` | `no` | `yes` |
| `KbdInteractiveAuthentication` | `no` | `yes` (tệp của Debian đặt `no`) |
| `PermitRootLogin` | `no` | `prohibit-password` |
| `PubkeyAuthentication` | `yes` | `yes` |
| `AllowUsers` | người dùng sudo của bạn | tất cả người dùng |
| `MaxAuthTries` | `3` | 6 |
| `LoginGraceTime` | `30` | 120 giây |

Giá trị mặc định theo sshd_config(5), kiểm tra ngày 2026-11-10. Các giá trị ở cột giữa là lựa chọn của hướng dẫn này.

## Tại sao phải tăng cường bảo mật SSH trước tiên?

SSH là dịch vụ duy nhất mà mọi VPS đều mở từ phút đầu tiên, nên đó là cửa đầu tiên cần khóa. Việc dò đoán mật khẩu trên cổng 22 bắt đầu ngay khi một địa chỉ được kích hoạt, và đăng nhập chỉ bằng khóa loại bỏ hoàn toàn lớp tấn công đó.

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. Nếu bạn đã dán khóa khi thanh toán, đăng nhập bằng mật khẩu đã tắt sẵn, và hướng dẫn này bổ sung các giới hạn còn lại. Nếu bạn nhận một mật khẩu root tạm thời, hãy đổi nó ngay khi đăng nhập lần đầu bằng `passwd`, trước khi làm bất cứ việc gì khác. Theo khảo sát của Gloamport về 10 tháng 11, 2026, 6 máy chủ nhận Monero và không yêu cầu email khi đăng ký, nên trên những máy chủ đó, khóa SSH và số tài khoản là hai bí mật duy nhất bảo vệ máy.

## Làm sao để tăng cường bảo mật SSH trên VPS mới, từng bước?

Thực hiện theo thứ tự này, và giữ phiên đầu tiên mở đến cuối.

1. **Tạo một người dùng thường** — Chạy adduser và thêm người dùng vào nhóm sudo, để bạn không còn làm việc dưới quyền root.
2. **Cài khóa công khai cho người dùng đó** — Sao chép khóa được phép của bạn sang người dùng mới, hoặc chạy ssh-copy-id -i từ máy tính của bạn. Thử đăng nhập trong một terminal thứ hai.
3. **Viết tệp drop-in** — Tạo /etc/ssh/sshd_config.d/00-hardening.conf với các tùy chọn trong bảng. Debian đưa thư mục đó vào đầu sshd_config, và giá trị đầu tiên của một tùy chọn sẽ thắng, nên tên tệp phải được sắp xếp lên trước.
4. **Kiểm tra cấu hình** — Chạy sshd -t. Lệnh này kiểm tra tệp cấu hình và khóa mà không khởi động lại gì cả. Chạy sshd -T để in các giá trị hiệu lực.
5. **Tải lại dịch vụ** — Khởi động lại ssh và mở một phiên mới với người dùng mới trước khi đóng phiên cũ.
6. **Xác nhận root và mật khẩu bị từ chối** — Thử đăng nhập bằng root và bằng mật khẩu từ một terminal khác. Cả hai đều phải thất bại.

## Làm sao để tạo người dùng sudo và cấp khóa cho nó?

Tạo người dùng, thêm vào nhóm `sudo`, và sao chép khóa được phép của tài khoản root sang người dùng đó. Dùng khóa của bạn từ [Làm sao để tạo khóa SSH cho VPS?](https://gloamport.com/vi/guides/how-to-generate-an-ssh-key/ "Làm sao để tạo khóa SSH cho VPS?") nếu bạn chưa có khóa. Thay `admin` bằng tên người dùng bạn muốn.

*Tạo người dùng và sao chép khóa (với quyền 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
```

## Tệp drop-in của sshd_config chứa gì?

Đặt các tùy chọn trong một drop-in duy nhất để việc nâng cấp gói không bao giờ ghi đè chúng. Hướng dẫn sshd_config cho biết với hầu hết từ khóa, giá trị đầu tiên gặp được sẽ được dùng, và tệp của Debian bao gồm `/etc/ssh/sshd_config.d/*.conf` ở đầu, nên tiền tố `00-` làm cho tệp của bạn thắng các drop-in khác như drop-in riêng của image cloud.

*/etc/ssh/sshd_config.d/00-hardening.conf*

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

*Kiểm tra, rồi áp dụng*

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

> **Đừng bao giờ đóng phiên duy nhất của bạn** Nếu AllowUsers nêu một người dùng không có khóa của bạn, bạn sẽ tự khóa mình ra ngoài. Giữ phiên đầu tiên mở, thử đăng nhập thứ hai bằng người dùng mới, rồi mới đóng phiên đầu. sshd -t chỉ kiểm tra cú pháp, không kiểm tra khóa của bạn đã được cài hay chưa.

## Có nên đổi cổng SSH hay thêm tường lửa không?

Đổi cổng giảm nhiễu trong nhật ký nhưng không thêm bảo mật thực sự, nên hãy coi đây là tùy chọn. Hướng dẫn cho phép đặt bằng `Port`, và được phép có nhiều dòng `Port`. Nếu bạn đổi cổng, hãy mở cổng mới trên tường lửa trước khi khởi động lại `ssh`. Ảo hóa KVM đầy đủ: kernel riêng, quy tắc tường lửa riêng và mã hóa đĩa riêng nếu bạn thiết lập, để bạn dùng tường lửa phù hợp với mình.

Khi SSH đã được siết chặt, các lớp tiếp theo là một đường hầm riêng tư ([Làm sao để thiết lập WireGuard trên VPS?](https://gloamport.com/vi/guides/how-to-set-up-wireguard-on-a-vps/ "Làm sao để thiết lập WireGuard trên VPS?")) và một ổ dữ liệu được mã hóa ([Có thể mã hóa ổ đĩa VPS bằng LUKS không?](https://gloamport.com/vi/guides/how-to-encrypt-a-vps-disk-with-luks/ "Tôi có thể mã hóa đĩa VPS bằng LUKS không?")). Dusk, với 2 GB RAM, có giá $5.25 mỗi tháng khi đăng ký 12 tháng; xem [trang giá](https://gloamport.com/vi/pricing/ "Gloamport có giá bao nhiêu?").

**Tóm tắt**

- Làm việc bằng người dùng sudo, không phải root.
- Đặt `PasswordAuthentication no` và `KbdInteractiveAuthentication no`.
- Đặt `PermitRootLogin no` khi người dùng sudo đã hoạt động.
- Dùng `AllowUsers` để nêu ai được đăng nhập.
- Đặt các tùy chọn trong một drop-in có tên được sắp xếp lên đầu, chẳng hạn `00-hardening.conf`.
- Chạy `sshd -t` trước mỗi lần khởi động lại và giữ một phiên thứ hai mở.
- Dusk có giá $5.25 mỗi tháng khi đăng ký 12 tháng.

## Tăng cường bảo mật SSH trên VPS: các câu hỏi thường gặp

### PermitRootLogin prohibit-password nghĩa là gì?

Nó cho phép root đăng nhập bằng khóa nhưng không bằng mật khẩu. Hướng dẫn liệt kê đây là mặc định, còn `no` đi thêm một bước nữa.

### Tại sao thay đổi của tôi trong sshd_config không có tác dụng?

Giá trị đầu tiên của một tùy chọn sẽ thắng, và Debian bao gồm thư mục sshd_config.d trước. Một drop-in cũ hơn có thể đã đặt tùy chọn đó, nên hãy đặt tên tệp của bạn là `00-hardening.conf` và kiểm tra bằng `sshd -T`.

### Làm sao để kiểm tra cấu hình mà không làm hỏng SSH?

Chạy `sshd -t`, lệnh này chỉ kiểm tra tệp cấu hình và khóa. Giữ một phiên thứ hai mở khi bạn khởi động lại.

### Có cần tắt đăng nhập bằng mật khẩu nếu tôi đã dán khóa khi thanh toán không?

Trên Gloamport, khi khóa đã được dán thì đăng nhập bằng mật khẩu đã tắt sẵn. Đặt các tùy chọn trong một drop-in sẽ giữ nguyên trạng thái đó sau các lần nâng cấp.

### MaxAuthTries làm gì?

Nó giới hạn số lần thử xác thực trên mỗi kết nối. Hướng dẫn cho mặc định là 6, còn hướng dẫn này đặt 3.

## Nguồn

1. [Trang hướng dẫn sshd_config(5)](https://manpages.debian.org/trixie/openssh-server/sshd_config.5.en.html) — Debian (checked 2026-11-10)
2. [Trang hướng dẫn sshd(8) (-t và -T)](https://manpages.debian.org/trixie/openssh-server/sshd.8.en.html) — Debian (checked 2026-11-10)
3. [Trang hướng dẫn ssh-copy-id(1)](https://manpages.debian.org/trixie/openssh-client/ssh-copy-id.1.en.html) — Debian (checked 2026-11-10)

---

Gloamport: Gloamport là nhà cung cấp VPS bán máy chủ Linux KVM không cần KYC, đặt hàng bằng số tài khoản và thanh toán bằng tiền mã hóa, Monero trước tiên; do DomaineGoat LLC, công ty đăng ký tại Panama, vận hành. Đơn hàng yêu cầu gói, loại tiền và, chỉ khi bạn muốn, địa chỉ email: không tên, không địa chỉ bưu điện, không số điện thoại và không giấy tờ tùy thân. Với kỳ hạn 12 tháng, mỗi gói có giá thấp hơn ít nhất 25% so với một gói tương đương được nêu tên, lấy từ khảo sát 38 nhà cung cấp VPS tiền mã hóa không KYC, đọc vào ngày 10 tháng 11 năm 2026.
