目录
SSH服务
1. ssh基础
SSH(Secure Shell)协议
- 是一种安全通道协议
- 对通信数据进行了加密处理,用于远程管理
作用:主要用来实现字符界面的远程登录、远程复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。
SSH客户端<——网络——>SSH服务端
优点:
- 数据传输是加密的,可以防止信息泄漏
- 数据传输是压缩的,可以提高传输速度
2. ssh原理
第一次连接时,客户发起请求,服务端会生成一个会话id
会将会话id和服务端的公钥交给客户端
客户端得到服务端的私钥和会话id
客户端用户会话id+客户端自己的公钥=一个值=a
将这个值 用服务端的公钥加密
服务端的公钥+a=b
将这个b给服务端
服务端得到b后
b-公钥=a 会话id 已知
a-会话id=客户端公钥
白名单:加进来 才可以,默认拒绝所有
黑名单:加进来才不可以,默认允许所有
[root@localhost ~]#ssh-keygen
#生成密钥文件 -t代表指定加密方式 如果不指定 默认ras加密算法
免密登录
第一步生成密钥文件
ssh-keygen [-t 指定加密方式]
Enter file in which to save the key(/root/.ssh/id_rsa):
#选择 密钥文件存放的位置 默认在当前用户家目录下 .ssh文件夹中
会生成两个文件 带.pub是公钥需要传给服务器
Enter passphrase(empty for no passphrase):
#对密钥文件进行加密,如果设置了密码 一般不设置密码直接回车
最后会生成两个文件 密钥文件
ssh-copy-id -i 服务器地址 将密钥传过去
3. 实际操作
客户端IP地址:192.168.8.100
服务端IP地址:192.168.8.100
[root@localhost ~]#ssh-keygen
#生成密钥文件
[root@localhost ~]#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.8.106
#复制公钥文件
[root@localhost ~]#ssh 192.168.8.106
#登录服务器成功
标签:公钥,网络服务,SSH,Linux,客户端,id,服务端,ssh
From: https://www.cnblogs.com/LJ69/p/17610063.html