ssh = Secure Shell,安全外壳协议,用于在不安全网络上加密远程登录与命令执行;标准端口 22。
1. ssh — 远程登录
基本登录
基本登录
ssh-agent — 私钥代理
ssh-agent — 私钥代理
~/.ssh/config — 客户端配置文件
~/.ssh/config — 客户端配置文件
简化常用主机的连接命令,免去每次输入用户/端口/密钥。配置后即可:
2. 端口转发(隧道)
-L 本地转发(Local forwarding)
-L 本地转发(Local forwarding)
把本地端口流量通过 ssh 转发到远端可达的目标。常用于访问内网服务。
-R 远程转发(Remote forwarding)
-R 远程转发(Remote forwarding)
把远端端口流量转发回本地。常用于把内网服务暴露给远端。
-D 动态转发(Dynamic SOCKS proxy)
-D 动态转发(Dynamic SOCKS proxy)
在本地启动一个 SOCKS5 代理,所有流量经 ssh 隧道走出。
-N / -f — 仅做隧道、放后台
-N / -f — 仅做隧道、放后台
3. scp — 文件传输
scp = Secure Copy,基于 ssh 的文件传输;语法类似
cp,但路径可加 user@host:。4. rsync — 增量同步
rsync = remote sync,差量同步算法只传输变化部分,适合大文件、目录、备份。
基本用法
基本用法
常用参数全称
常用参数全称
5. 排错小贴士
连接失败
ssh -v user@host看协商过程- 检查防火墙 / 端口
- 确认服务端 sshd 在监听:
ss -tnlp | grep :22 - 公钥免密失败先看
~/.ssh权限:目录700,私钥600
主机指纹变更
- 报
REMOTE HOST IDENTIFICATION HAS CHANGED!时 - 用
ssh-keygen -R host移除旧指纹 - 再次连接确认新指纹
