美文网首页
linux服务器配置ssh、sftp秘钥免密登录

linux服务器配置ssh、sftp秘钥免密登录

作者: haiyong6 | 来源:发表于2022-01-09 16:36 被阅读0次

之前记录过一篇有关服务器打开ssh功能的文章:deepin开启ssh远程登录
如果是用脚本操作登录服务器做操作的话,ssh可以支持配置秘钥免密登录的形式,也可以使服务器彻底关闭密码登录的形式来避免被暴力破解登录。

服务器生成秘钥对

在服务器执行ssh-keygen

zhaohy@zhaohy-VC66-C:~$ ssh-keygen <== 建立密钥对
Generating public/private rsa key pair.
Enter file in which to save the key (/home/zhaohy/.ssh/id_rsa): <== 按 Enter
Enter passphrase (empty for no passphrase):  <== 输入密钥锁码,或直接按 Enter 留空
Enter same passphrase again:  <== 再输入一遍密钥锁码
Your identification has been saved in /home/zhaohy/.ssh/id_rsa <== 私钥
Your public key has been saved in /home/zhaohy/.ssh/id_rsa.pub <== 公钥
The key fingerprint is:
SHA256:1cCa4NpOeNDK8TE4YBfOAXyH79K2ihPe2BDdj5DkPyQ zhaohy@zhaohy-VC66-C
The key's randomart image is:
+---[RSA 3072]----+
| ...oo   ..      |
|  +o=.o   .o     |
| . BoO . o. .    |
|  . E O o.       |
|   o ^ =S        |
|  o * % .        |
| . * * o         |
|  +.o o          |
|  ....           |
+----[SHA256]-----+

上面的密钥锁码如果直接按enter就能实现无密码登录了,可以看到密钥对在用户目录的.ssh文件夹下。

服务器安装公钥

在服务器用户目录下.ssh文件夹下把公钥写入authorized_keys文件

zhaohy@zhaohy-VC66-C:~$ cd .ssh
zhaohy@zhaohy-VC66-C:~/.ssh$ cat id_rsa.pub >> authorized_keys

给authorized_keys文件和.ssh文件设置权限

zhaohy@zhaohy-VC66-C:~/.ssh$ chmod 600 authorized_keys 
zhaohy@zhaohy-VC66-C:~/.ssh$ cd ../
zhaohy@zhaohy-VC66-C:~$ chmod 700 .ssh

编辑 /etc/ssh/sshd_config 文件,打开密钥登录功能

RSAAuthentication yes
PubkeyAuthentication yes

设置root用户能否通过ssh登录,可根据实际需求情况设置

PermitRootLogin yes

可以禁用密码方式登录(根据自身实际需求设置):

PasswordAuthentication no

重启服务器ssh服务:

service sshd restart

本地客户端配置好私钥即可免密登录服务器

一般连接工具选择秘钥登录方式后都有上传私钥的按钮,只要把服务器生成的私钥下载下来,登录的时候选择一下就可以了,比较简单,这里着重介绍一下linux命令行登录配置私钥。

把服务器上生成的私钥下载到本地linux客户端的.ssh文件夹下,设置权限:

zhaohy@zhaohy-VirtualBox:~$ chmod 600 .ssh/id_rsa 
zhaohy@zhaohy-VirtualBox:~$ chmod 700 .ssh

如此就能通过 ssh zhaohy@192.168.0.116或sftp zhaohy@192.168.0.116来直接登录服务器了。

参考:https://www.runoob.com/w3cnote/set-ssh-login-key.html

相关文章

网友评论

      本文标题:linux服务器配置ssh、sftp秘钥免密登录

      本文链接:https://www.haomeiwen.com/subject/vfbucrtx.html