Một tài liệu tham khảo SSH có thể tìm kiếm và in được — kết nối, khóa, cấu hình, tunneling, SCP/SFTP và chuyển tiếp agent. Miễn phí.

Kết nối

10
ssh user@host
Kết nối với tư cách user tới host
ssh -p 2222 user@host
Kết nối trên cổng khác mặc định
ssh -i ~/.ssh/id_ed25519 user@host
Dùng một khóa định danh cụ thể
ssh user@host 'uptime'
Chạy một lệnh từ xa rồi thoát
ssh -v user@host
Xuất chi tiết để gỡ lỗi (-vvv để thêm)
ssh -t user@host 'sudo -i'
Buộc giả lập terminal (cho lệnh tương tác)
ssh -X user@host
Bật chuyển tiếp X11
ssh -o ServerAliveInterval=60 user@host
Gửi keepalive để tránh hết thời gian
exit / Ctrl-D
Đóng phiên từ xa
~.
Buộc ngắt phiên bị treo

Tạo khóa

8
ssh-keygen -t ed25519 -C 'you@example.com'
Tạo cặp khóa Ed25519 hiện đại
ssh-keygen -t rsa -b 4096
Tạo cặp khóa RSA 4096-bit
ssh-keygen -t ed25519 -f ~/.ssh/work
Ghi khóa vào tệp cụ thể
ssh-keygen -p -f ~/.ssh/id_ed25519
Đổi passphrase của khóa hiện có
ssh-keygen -y -f ~/.ssh/id_ed25519
In khóa công khai từ khóa riêng
ssh-keygen -l -f ~/.ssh/id_ed25519.pub
Hiện vân tay của khóa
ssh-keygen -lv -f ~/.ssh/id_ed25519.pub
Hiện ảnh randomart của vân tay
ssh-keygen -R host
Xóa khóa host khỏi known_hosts

Cài đặt khóa công khai

7
ssh-copy-id user@host
Sao chép khóa công khai mặc định lên server
ssh-copy-id -i ~/.ssh/work.pub user@host
Sao chép một khóa công khai cụ thể
ssh-copy-id -p 2222 user@host
Sao chép khóa qua cổng tùy chỉnh
cat ~/.ssh/id_ed25519.pub | ssh user@host 'cat >> ~/.ssh/authorized_keys'
Sao chép thủ công khi thiếu ssh-copy-id
chmod 700 ~/.ssh
Sửa quyền cho thư mục .ssh
chmod 600 ~/.ssh/authorized_keys
Sửa quyền cho authorized_keys
pbcopy < ~/.ssh/id_ed25519.pub
Sao chép khóa công khai vào clipboard (macOS)

Cấu hình SSH (~/.ssh/config)

10
Host myserver
Bí danh: kết nối bằng `ssh myserver`
HostName 203.0.113.10
Hostname hoặc IP thật cho bí danh
User deploy
Tên người dùng mặc định cho host này
Port 2222
Cổng mặc định cho host này
IdentityFile ~/.ssh/work
Khóa dùng cho host này
IdentitiesOnly yes
Chỉ đề xuất khóa đã liệt kê
ForwardAgent yes
Chuyển tiếp SSH agent tới host này
Host *.example.com
Khớp wildcard cho một domain
Host *
Mặc định toàn cục cho mọi host
ServerAliveInterval 60
Khoảng keepalive cho mọi host

Chuyển tiếp cổng / tạo tunnel

7
ssh -L 8080:localhost:80 user@host
Local: tới host:80 qua local 8080
ssh -L 5432:db.internal:5432 user@host
Chuyển tiếp local tới host thứ ba qua server
ssh -R 9000:localhost:3000 user@host
Remote: phơi local 3000 thành host:9000
ssh -D 1080 user@host
Dynamic: proxy SOCKS trên cổng local 1080
ssh -N -L 8080:localhost:80 user@host
Chỉ tunnel, không chạy shell từ xa
ssh -f -N -L 8080:localhost:80 user@host
Mở tunnel ở chế độ nền
ssh -g -L 8080:localhost:80 user@host
Cho host khác dùng chuyển tiếp local

Jump host / bastion

5
ssh -J jump@bastion user@target
Đi qua bastion để tới đích
ssh -J h1,h2 user@target
Nối nhiều jump host
ProxyJump bastion
Cấu hình tương đương -J
ProxyCommand ssh -W %h:%p bastion
Jump cũ dựa trên ProxyCommand
ssh -o ProxyJump=bastion user@target
Tùy chọn ProxyJump nội tuyến

Truyền tệp (scp & sftp)

7
scp file user@host:/path/
Sao chép tệp local lên server
scp user@host:/path/file .
Sao chép tệp từ xa về thư mục hiện tại
scp -r dir/ user@host:/path/
Sao chép đệ quy một thư mục
scp -P 2222 file user@host:/path/
Sao chép qua cổng tùy chỉnh (lưu ý -P viết hoa)
sftp user@host
Bắt đầu phiên SFTP tương tác
put localfile / get remotefile
Tải lên / tải xuống trong SFTP
rsync -avz -e ssh dir/ user@host:/path/
Đồng bộ hiệu quả qua SSH (tiếp tục được)

ssh-agent & chuyển tiếp

7
eval "$(ssh-agent -s)"
Khởi động agent trong shell hiện tại
ssh-add ~/.ssh/id_ed25519
Thêm một khóa vào agent
ssh-add -l
Liệt kê khóa đã nạp trong agent
ssh-add -D
Xóa mọi khóa khỏi agent
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
Lưu passphrase trong keychain macOS
ssh -A user@host
Chuyển tiếp agent cho kết nối này
ForwardAgent yes
Cấu hình tương đương chuyển tiếp agent

Không có mục nào khớp với “:q”.


Cần trợ giúp?
Gặp sự cố với công cụ này? Hãy cho đội ngũ của chúng tôi biết.
Báo cáo sự cố

Thêm công cụ miễn phí này vào trang web của riêng bạn — sao chép và dán mã bên dưới.