在linux系统中,ssh是最常用的远程管理协议,通过它可以安全地登录和操作远端主机。了解ssh的不同使用方式,能提升运维效率并加强访问安全。

一、基础密码登录
最简单的方式是直接用ssh命令加用户名和主机地址,连接后输入密码即可。默认连接22端口。
# 基本语法:ssh 用户名@主机IP ssh root@192.168.0.1 # 指定端口连接 ssh -p 2222 user@192.168.0.1
二、密钥认证免密登录
使用公钥私钥对可以避免每次输入密码,也更安全。先在本地生成密钥,再把公钥传到服务器。
# 本地生成密钥对 ssh-keygen -t rsa -b 4096 # 将公钥复制到远端主机 ssh-copy-id user@192.168.0.1 # 之后直接登录无需密码 ssh user@192.168.0.1
三、远程执行命令
不想进入交互终端时,可以直接在本地执行远端命令并取回结果。
# 在远端执行命令 ssh user@192.168.0.1 'df -h'
四、scp远程文件拷贝
scp基于ssh协议传输文件,用法和cp类似,只需标明远端位置。
# 本地文件传到远端 scp ./test.txt user@192.168.0.1:/home/user/ # 远端文件下载到本地 scp user@192.168.0.1:/home/user/log.log ./
五、ssh隧道与端口转发
ssh还能做本地或远程端口转发,用来穿透内网或加密访问。
# 本地转发:把本地8080转到远端内网80 ssh -L 8080:127.0.0.1:80 user@192.168.0.1
六、常用配置优化
修改本地 ~/.ssh/config 可简化连接。注意这里写的 config 是配置文件名,不是标签。
Host srv1
HostName 192.168.0.1
User user
Port 2222
IdentityFile ~/.ssh/id_rsa
配置后只需 ssh srv1 就能快速登录。以上便是linux下ssh的主要使用方法,根据实际场景组合使用即可。