Cấu Hình SSH Server
HƯỚNG DẪN CẤU HÌNH SSH SERVER TRÊN VPANEL
Tài liệu chi tiết về việc gia cố và tinh chỉnh dịch vụ OpenSSH (sshd) — cửa ngõ truy cập shell từ xa vào server. Mọi thay đổi ở đây sẽ được ghi vào /etc/ssh/sshd_config và áp dụng thông qua systemctl reload sshd — vì vậy một cấu hình sai có thể khiến bạn tự khóa mình ngoài server. Hãy đọc kỹ các cảnh báo trước khi lưu.
1. Truy Cập Cấu Hình SSH Server
Đăng nhập Admin Panel trên cổng :2087. Ở menu bên trái, mở rộng Security và nhấp vào SSH Server để mở biểu mẫu cấu hình.

Trang sẽ đọc trực tiếp sshd_config khi tải và điền sẵn giá trị hiện tại, đảm bảo bạn luôn chỉnh sửa dựa trên trạng thái thực tế — không phải bản sao cũ.
2. Các Trường Cấu Hình
SSH Port
| Thuộc tính | Chi tiết |
|---|---|
| Mặc định | 22 |
| Khoảng hợp lệ | 1 – 65535 |
| Cảnh báo | Đổi sang các cổng phổ biến (21, 23, 25, 80, 443, 3306…) sẽ hiển thị cảnh báo vì trùng với dịch vụ khác. |
Đổi SSH sang cổng khác 22 giúp giảm mạnh lưu lượng bot dò mật khẩu. Nên chọn cổng cao, dễ nhớ (ví dụ 2222, 52022) và cập nhật CSF TCP_IN trước khi lưu.
PermitRootLogin
| Giá trị | Hành vi |
|---|---|
| yes | Root được phép đăng nhập bằng mật khẩu hoặc key. |
| no | Vô hiệu hoàn toàn SSH root — dùng sudo từ tài khoản thường. |
| without-password | Root chỉ được phép đăng nhập bằng SSH key. Khuyến nghị cho server quản trị. |
PasswordAuthentication
- yes — Bất kỳ user nào cũng có thể đăng nhập bằng mật khẩu.
- no — Toàn bộ user phải có public key. Rất khuyến nghị với server công cộng.
PubkeyAuthentication
Luôn nên để yes. Tắt đi sẽ buộc dùng mật khẩu, trái với mọi hướng dẫn bảo mật. Panel sẽ hiển thị cảnh báo nếu bạn thử tắt.
AllowUsers
Danh sách username được phép SSH, phân cách bằng khoảng trắng. Để trống nghĩa là cho phép mọi tài khoản hiện có (tùy thuộc cấu hình shell của từng tài khoản). Ví dụ:
Coderoot deploy alice
Chỉ ba user này được mở SSH — các user khác bị từ chối ngay ở bước xác thực.
ClientAliveInterval
Số giây giữa các lần server gửi tín hiệu keep-alive tới client rảnh. Mặc định 300 (5 phút). Kết hợp với ClientAliveCountMax=3, phiên rảnh sẽ tự ngắt sau ~15 phút.
3. Áp Dụng Cấu Hình
- Bước 1: Điều chỉnh các trường phía trên.
- Bước 2: Nhấn Test Config ở góc trên bên phải. vPanel sẽ chạy
sshd -tvà báo lỗi cú pháp nếu có. - Bước 3: Nhấn Apply. Khi thành công, panel sẽ chạy
systemctl reload sshd— các phiên SSH đang mở không bị ngắt.
Cảnh báo: Không đóng phiên SSH hiện tại trong ít nhất 5 phút sau khi apply. Nếu bị khóa, hãy dùng console (KVM/IPMI/serial) do nhà cung cấp VPS cấp để khôi phục
/etc/ssh/sshd_config.
4. Cấu Hình Gia Cố Khuyến Nghị
Đối với server production công khai:
| Trường | Giá trị đề xuất |
|---|---|
| SSH Port | Cổng cao bất kỳ (không phải 22) |
| PermitRootLogin | without-password |
| PasswordAuthentication | no |
| PubkeyAuthentication | yes |
| AllowUsers | Danh sách rõ ràng các username admin |
| ClientAliveInterval | 300 |
Trước khi chuyển PasswordAuthentication sang no, hãy chắc chắn public key của bạn đã có trong /root/.ssh/authorized_keys (và cả trong file tương ứng của mọi user trong AllowUsers). Cách kiểm tra nhanh: mở terminal thứ hai và chạy ssh -o PubkeyAuthentication=yes root@server — nếu vào được thì có thể yên tâm tắt mật khẩu.
5. Xử Lý Sự Cố & Lưu Ý
"Test Config" báo lỗi
- Nguyên nhân: Directive sai hoặc dấu ngoặc kép chưa khép trong dòng tùy chỉnh.
- Giải pháp: Thông báo lỗi từ
sshd -tsẽ hiển thị nguyên văn — sửa dòng bị lỗi rồi thử lại.
Bị khóa ngoài server sau khi lưu
- Nguyên nhân: Danh sách
AllowUserssai, cổng mới chưa mở trong CSF, hoặc lỡ tắtPubkeyAuthenticationkhi chưa cài key. - Giải pháp: Mở console web của nhà cung cấp VPS, sửa
/etc/ssh/sshd_configvà chạysystemctl restart sshd. Sau đó vào lại panel để đồng bộ cấu hình.
CSF vẫn chặn cổng SSH mới
- Nguyên nhân: CSF chưa được cập nhật khi cổng thay đổi.
- Giải pháp: Sửa
/etc/csf/csf.conf, thêm cổng mới vàoTCP_IN, sau đó chạycsf -r.
Đã "Reload" nhưng phiên mới vẫn dùng mật khẩu
- Nguyên nhân: Phiên control-master của client SSH đang được cache lại (SSH multiplexing).
- Giải pháp: Đóng master bằng
ssh -O exit user@serverhoặc mở terminal hoàn toàn mới.
Chúc bạn quản trị Server an toàn và hiệu quả!
