Chuyển tới nội dung chính

SSH Keys — Troubleshooting


Không tải được private key sau khi tạo keypair

Triệu chứng: Hộp thoại tạo key đã đóng nhưng bạn chưa kịp nhấn Tải về, hoặc file tải về bị lỗi.

Nguyên nhân: Portal chỉ cho phép tải private key một lần duy nhất ngay tại thời điểm tạo. Sau khi đóng hộp thoại, private key không được lưu trữ trên hệ thống và không thể khôi phục.

Cách xử lý:

  1. Xóa key vừa tạo khỏi danh sách SSH Keys (public key đã lưu nhưng private key đã mất nên không dùng được)
  2. Tạo keypair mới và nhấn Tải về ngay trước khi đóng hộp thoại
  3. Lưu file .pem vào thư mục ~/.ssh/ và đặt quyền đúng: chmod 600 ~/.ssh/<key-name>.pem

Import thất bại với thông báo "Invalid public key format"

Triệu chứng: Nhấn Import nhưng hệ thống báo lỗi định dạng không hợp lệ.

Nguyên nhân phổ biến:

  • Dán nhầm nội dung private key thay vì public key
  • Public key ở định dạng PuTTY (.ppk) — định dạng này không được hỗ trợ
  • Nội dung public key bị ngắt dòng do copy-paste từ email hoặc tài liệu

Cách xử lý:

  1. Đảm bảo bạn đang dán nội dung từ file .pub (ví dụ id_ed25519.pub), không phải id_ed25519
  2. Nếu đang dùng PuTTY, mở PuTTYgen, tải key lên, chọn ConversionsExport OpenSSH key, rồi dùng file vừa xuất
  3. Kiểm tra rằng public key là một dòng liên tục — xóa mọi ký tự xuống dòng thừa trong textarea trước khi submit

Kết nối SSH thất bại dù đã chọn đúng key khi tạo Instance

Triệu chứng: Instance đã khởi động, chọn đúng SSH Key khi tạo, nhưng lệnh ssh trả về Permission denied (publickey).

Nguyên nhân phổ biến:

  • Dùng sai tên user — mỗi image có user mặc định khác nhau (ví dụ ubuntu, centos, cloud-user)
  • Đường dẫn hoặc quyền của file private key không đúng
  • Instance chưa khởi động hoàn tất khi bạn thử kết nối

Cách xử lý:

  1. Xác nhận tên user mặc định của image đang dùng (xem tài liệu của image tương ứng)
  2. Kiểm tra quyền file private key: chmod 600 ~/.ssh/<key-name>.pem
  3. Chờ 60–90 giây sau khi Instance chuyển sang trạng thái Running rồi thử lại
  4. Thử kết nối với flag verbose để xem chi tiết lỗi: ssh -vvv -i ~/.ssh/<key>.pem <user>@<ip>

Xóa SSH Key nhưng Instance vẫn bị truy cập bằng key cũ

Triệu chứng: Đã xóa key khỏi portal nhưng người dùng cũ vẫn có thể SSH vào Instance bằng private key của họ.

Nguyên nhân: Đây là hành vi thiết kế. Xóa key trên portal không thay đổi file ~/.ssh/authorized_keys bên trong Instance.

Cách xử lý:

  1. Kết nối vào Instance bằng một key khác hoặc qua console access
  2. Mở file ~/.ssh/authorized_keys của user cần thu hồi quyền (thường là ubuntu, centos, hoặc root)
  3. Xóa dòng chứa public key cần thu hồi
  4. Lưu file — thay đổi có hiệu lực ngay, không cần khởi động lại

Không thấy tùy chọn SSH Key khi tạo Instance

Triệu chứng: Trong form tạo Instance, không có trường hoặc dropdown để chọn SSH Key.

Nguyên nhân: Project hiện tại chưa có SSH Key nào được lưu.

Cách xử lý:

  1. Thoát form tạo Instance
  2. Vào Compute EngineSSH Keys và tạo hoặc import ít nhất một key
  3. Quay lại tạo Instance — trường SSH Key sẽ xuất hiện với key vừa thêm