Skip to content
VDS · Khắc phục sự cố

SSH không kết nối được

Phân tích từng bước: từ “connection timed out” đến “access denied” — cách hiểu chính xác chỗ đứt gãy và khôi phục truy cập qua console của bảng điều khiển.

Cập nhật 23 tháng 8, 2026

Mất SSH lúc nào cũng có vẻ giống nhau, nhưng có năm nguyên nhân và cách khắc phục mỗi nguyên nhân một khác. Hãy bắt đầu từ thông báo lỗi — nó thu hẹp phạm vi tìm kiếm ngay lập tức. Điều quan trọng nhất: bạn luôn có quyền truy cập vào máy thông qua tab “Console” trong bảng điều khiển /hosting/vds/m/<id>; nó hoạt động độc lập với mạng và các cài đặt bên trong hệ thống.

Đọc thông báo lỗi

Thông báoChỗ đứt gãy
Connection timed outgói tin không đến được: máy đang tắt, có bộ lọc, sai địa chỉ
Connection refusedmáy có phản hồi, nhưng không có gì lắng nghe trên cổng: dịch vụ sshd không chạy
Permission denied (publickey)mạng ổn, khóa không khớp
Permission denied (password)mật khẩu không khớp hoặc đăng nhập bằng mật khẩu đã bị tắt
Host key verification faileddấu vân tay của máy đã thay đổi — thường là sau khi cài lại

Sẽ hữu ích nếu bạn xem chi tiết: ssh -vvv root@YOUR_ADDRESS sẽ cho thấy sự việc tắc ở giai đoạn nào.

Timed out

  1. Kiểm tra trạng thái máy trên tab “Overview”. Nếu các đồ thị đã dừng, máy không chạy — hãy bật hoặc khởi động lại máy từ bảng điều khiển.
  2. Đảm bảo địa chỉ chính xác và bạn có thể kết nối tới máy: ping YOUR_ADDRESS.
  3. Đăng nhập qua console và kiểm tra bộ lọc:
ss -tulpn | grep sshd
nft list ruleset | head -40      # or iptables -S
ufw status                       # Debian, Ubuntu
firewall-cmd --list-all          # AlmaLinux, CentOS Stream

Trường hợp kinh điển — bạn chạy ufw enable mà không cho phép cổng 22. Khắc phục bằng một lệnh từ console: ufw allow 22/tcp.

  1. Kiểm tra xem fail2ban có đang chặn bạn sau các lần thử thất bại không: fail2ban-client status sshd; để bỏ chặn — fail2ban-client set sshd unbanip YOUR_IP.

Connection refused

Dịch vụ không chạy hoặc đang lắng nghe trên cổng khác.

systemctl status sshd || systemctl status ssh
journalctl -u sshd -n 50 --no-pager
sshd -t                          # check configuration for errors
systemctl restart sshd

sshd -t thường cứu nguy: chỉ một lỗi đánh máy trong /etc/ssh/sshd_config cũng khiến dịch vụ không khởi động được sau khi khởi động lại. Nếu bạn đã đổi cổng, hãy kết nối với -p NUMBER và đừng quên cho phép cổng đó trong bộ lọc.

Permission denied

Nếu bạn gặp lỗi khóa, hãy kiểm tra trên máy:

ls -la /root/.ssh
chmod 700 /root/.ssh && chmod 600 /root/.ssh/authorized_keys
grep -E 'PermitRootLogin|PubkeyAuthentication|PasswordAuthentication' /etc/ssh/sshd_config

Nếu quyền chặt hơn mức cho phép, sshd sẽ âm thầm từ chối. Danh sách khóa trong bảng điều khiển ở tab “Access” được thay thế toàn bộ: khi thêm khóa mới, đừng vô tình xóa mất khóa đang hoạt động. Lưu danh sách sẽ khởi động lại máy đang chạy, vì vậy hãy chỉnh sửa toàn bộ và một lần.

Quên mật khẩu root — hãy xem trong tab “Access”; nó được lưu ở dạng mã hóa và hiển thị khi bấm nút. Nếu bạn đã đổi mật khẩu bên trong hệ thống, bảng điều khiển không biết điều đó: hoặc đăng nhập qua console và đổi bằng lệnh passwd, hoặc bấm “Change password” — bảng điều khiển sẽ cấp mật khẩu mới và khởi động lại máy.

Host key verification failed

Sau khi cài lại hệ thống, dấu vân tay thay đổi. Hãy xóa mục cũ ở phía bạn:

ssh-keygen -R YOUR_ADDRESS

Nếu không có lần cài lại nào, đừng xác nhận dấu vân tay mới một cách mù quáng — hãy xác minh nó qua console: ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub.

Khi mọi cách đều không giúp được

Khởi động máy vào chế độ khôi phục: tab “Access” → chế độ khởi động → đĩa SystemRescue. Máy khởi động từ image, đăng nhập root không cần mật khẩu, đĩa của bạn hiển thị dưới dạng /dev/sda. Hãy mount nó và chỉnh sửa cấu hình:

mount /dev/sda1 /mnt
nano /mnt/etc/ssh/sshd_config

Sau đó quay lại chế độ khởi động bình thường và khởi động lại máy.

Trước khi thay đổi cài đặt SSH, hãy mở một phiên thứ hai và giữ nó luôn mở. Nếu cấu hình mới khóa bạn ra ngoài, bạn sẽ sửa được qua kết nối cũ mà không cần dựng console lên.