Linux và macOS đều có sẵn SSH client trong Terminal — không cần cài thêm gì. Bài này hướng dẫn kết nối VPS từ Linux/macOS, tạo SSH key để bảo mật hơn mật khẩu, và dùng SSH config file cho tiện lợi.
Kết nối cơ bản bằng mật khẩu
Mở Terminal (trên macOS: Cmd + Space → gõ Terminal; trên Linux: Ctrl + Alt + T)
ssh root@103.151.25.100
Nếu port khác 22:
ssh -p 2222 root@103.151.25.100
Lần đầu kết nối sẽ hỏi xác nhận fingerprint, gõ yes và Enter, sau đó nhập mật khẩu.
Tạo SSH Key (Bảo mật hơn mật khẩu nhiều!)
SSH key gồm 2 phần: private key (giữ bí mật trên máy bạn) và public key (upload lên VPS). Khi kết nối, SSH dùng cặp key này để xác thực — không cần nhập mật khẩu mỗi lần.
Bước 1: Tạo SSH key pair trên máy của bạn
ssh-keygen -t ed25519 -C "your_email@example.com"
- Khi hỏi "Enter file in which to save the key": nhấn Enter để dùng mặc định
~/.ssh/id_ed25519 - Khi hỏi passphrase: có thể bỏ trống (Enter) hoặc đặt mật khẩu bảo vệ key
Kết quả tạo ra 2 file:
~/.ssh/id_ed25519— Private key (TUYỆT ĐỐI không chia sẻ)~/.ssh/id_ed25519.pub— Public key (upload lên VPS)
Bước 2: Copy public key lên VPS
ssh-copy-id root@103.151.25.100
Hoặc thủ công:
# Xem nội dung public key
cat ~/.ssh/id_ed25519.pub
# Trên VPS, tạo thư mục và paste key vào
mkdir -p ~/.ssh
nano ~/.ssh/authorized_keys
# Paste nội dung public key vào, lưu lại
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Bước 3: Kiểm tra kết nối bằng key
ssh root@103.151.25.100
# Lần này không cần nhập mật khẩu!
SSH Config File — Kết nối siêu nhanh
Tạo hoặc chỉnh sửa file ~/.ssh/config:
nano ~/.ssh/config
Thêm nội dung:
Host myvps
HostName 103.151.25.100
User root
Port 22
IdentityFile ~/.ssh/id_ed25519
Host myvps2
HostName 103.151.25.200
User ubuntu
Port 2222
IdentityFile ~/.ssh/id_ed25519
Sau đó kết nối chỉ cần:
ssh myvps
Truyền file qua SCP
# Upload file từ máy lên VPS
scp /path/to/local/file.zip root@103.151.25.100:/root/
# Download file từ VPS về máy
scp root@103.151.25.100:/root/backup.tar.gz ~/Downloads/
# Upload cả thư mục
scp -r /path/to/folder root@103.151.25.100:/root/
Xử lý lỗi thường gặp
- WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED: VPS cài lại OS → Xoá key cũ:
ssh-keygen -R 103.151.25.100 - Permission denied (publickey): Public key chưa được thêm đúng. Kiểm tra
~/.ssh/authorized_keystrên VPS - ssh: connect to host port 22: Connection refused: Sai port. Thử port khác hoặc kiểm tra firewall
Mẹo bảo mật
- Đặt passphrase cho SSH key để bảo vệ thêm một lớp
- Dùng
ssh-agentđể không cần nhập passphrase nhiều lần:eval "$(ssh-agent -s)" && ssh-add ~/.ssh/id_ed25519 - Sau khi thiết lập SSH key thành công, nên tắt đăng nhập bằng mật khẩu trên VPS