什么是ssh?
ssh专为远程登录回话和其他网络服务提供安全性的协议,利用ssh协议可以有效的防止远程管理过程中的信息泄露问题。
使用ras公钥登录linux
操作环境
本地服务器:win10
远程服务器:centos 8
git环境
生成rsa文件
在windows机器上,我们可以在git bash界面上输入以下命令。
ssh-keygen -t rsa
查看执行结果,这时候连续回车即可,注意id_rsa和id_rsa.pub文件一定要在当前用户的.ssh目录下面,ssh公钥登录的时候默认读取该目录下面的私钥文件。
编辑linux的ssh服务端配置
编辑/etc/ssh/sshd_config文件,将下面的选项去掉注释,没有的手动添加一下配置。
PermitRootLogin yes
RSAAuthentication yes
PubkeyAuthentication yes
PermitRootLogin yes
上传rsa公钥到linux
- 这里我们使用的是root账户,我们先将id_rsa.pub文件放到root根目录下,然后将id_rsa.pub文件的内容追加到.ssh/authorized_keys文件中。
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
- 修改.ssh权限为700,修改authorized_keys权限为600。
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
- 重启ssh服务。
systemctl restart sshd
xshell 登录
配置连接属性
配置登录验证时,需要用到的私钥。
git bash 登录
在进行完ssh服务器配置之后,执行如下命令。
ssh user@server
这时候,如果出现fingerprint提示,直接输入yes即可。如果配置没有问题的话,可以看到正常连接的提示。