# 1、为什么有SSH?
- SSH解决的问题:加密登录远程机器
- SSH是一种网络协议,使用SSH协议登录另一台远程计算机是安全的,即使中途被拦截,密码也不会泄露
# 2、SSH登录过程
- 1、用户尝试登录远程主机,然后远程主机会将自己的公钥返回给用户
- 2、用户使用公钥将密码加密后发给远程主机
- 3、远程主机将加密后的密码用私钥进行验证,如果正确则登录成功,否则失败
# 3、SSH命令
1、登录命令
ssh [-l login_name] [-p port] [user@]hostname
1
登录远程主机host,
ssh user@host
,user指用户名,host为IP地址shh默认登录22端口,
ssh -p port user@host
,通过这条命令改变端口号首次登录会询问用户是否继续链接远程主机,确认后会将公钥发给用户
ssh hht@192.168.12.32
shh -p 2232 hht@192.168.12.32 // 链接到主机的2232端口
1
2
2
- 公钥登录:解决每次登录都要输入密码的问题
公钥登录:用户将自己的公钥(ssh-keygen生成)储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。
# 4、scp 跨机远程拷贝
scp —— secure copy,可用于在Linux下实现远程命令的拷贝,常用的拷贝cp只能在本机上实现拷贝不能跨服务器,scp的传输是加密的,所以传输速度略慢,由于涉及到远程服务器之间的拷贝,需要操作者具备各服务器的权限。
scp命令使用方法
scp [param] 源地址 目标地址
// 将远程的文件复制到本地
scp hht@192.168.12.32:/hht/work/index.html /hht/work/index.html
// 复制文件夹
scp -r hht@192.168.12.32:/hht/work/ /hht/work/
1
2
3
4
5
6
7
2
3
4
5
6
7