关于linux免密登录及ssh客户端的使用
操作系统环境: CentOS Linux release 7.7.1908 (Core)
1、首先在linux服务器上,使用ssh-keygen命令生成密钥对文件(一直回车即可,默认使用rsa算法),如下图所示
其中还支持的算法有dsa | ecdsa | ed25519 | rsa | rsa1,使用其他算法只需要使用-t选项指定即可
(The possible values are "rsa1" for protocol version 1 and "dsa", "ecdsa", "ed25519", or "rsa" for protocol version 2.)
[root@webserver ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:1v4uvRWnv6BSInIaRxctOat2woXxHHFyiY0yN2MKH30 root@webserver
The key's randomart image is:
+---[RSA 2048]----+
| .oBo. |
| . = #+E |
| o % X |
| = B |
| o S . . .|
| o X + . + |
| B + +. .o |
| . ...o... |
| .++. .o|
+----[SHA256]-----+
[root@webserver ~]#
2、如上命令所示,执行完后,会在~/.ssh目录下生成id_rsa(私钥文件)和id_rsa.pub(公钥文件)
3、然后将公钥文件内容,追加到sshd配置文件中AuthorizedKeysFile指令定义的文件,其默认值为.ssh/authorized_keys文件
[root@webserver ~]# cd
[root@webserver ~]# cat .ssh/id_rsa.pub >> .ssh/authorized_keys
4、当然至此,服务器公钥文件即使删除了也是可以的,而私钥则是给客户端使用的,交给客户端后,对服务器本身来说也是非必须的
关于ssh客户端使用密钥访问的方式,客户端取得私钥文件,可以对其重命名,以达到见名知义的效果,如 webserver_id_rsa.pem
对于linux系统ssh客户服务端
只需要使用ssh -i 私钥文件 user@host 即可以访问,如下,其中192.168.100.128为上面的webserver:
[root@client ~]# ssh -i webserver_id_rsa.pem root@192.168.100.128
Last login: Thu Jun 4 22:16:57 2020 from 192.168.100.89
[root@webserver ~]#
另外有时,也会看到有人不用-i指定密钥也是可以免密登录,这是由于ssh客户端配置文件/etc/ssh/ssh_config,
默认有IdentityFile指令,指定了私钥文件,如# IdentityFile ~/.ssh/identity(还有~/.ssh/id_rsa、~/.ssh/id_dsa、~/.ssh/id_ecdsa、~/.ssh/id_ed25519)
大部分情况是自己生成密钥对,通过ssh-copy-id -i 公钥文件 user@远程主机IP 传递到远端服务器的.ssh/authorized_keys
而此时ssh去连接远程主机时,刚好私钥文件,就是刚生成的~/.ssh/id_rsa,所以就不用特意指定,当然也可能客户端配置明确指定了私钥文件
对于windows下的系统xshell客户端
只需要在登录弹窗的Public Key(U) 处通过浏览选择私钥文件,或者直接导入私钥,以后就可以直接在下拉中可以看到!
特别注意,这里的Public Key(U) 不要根据这个名称,误以为公钥文件,始终记住,客户端登录服务器,是使用私钥即可!

putty客户端
对于putty客户端来讲,不能直接使用pem格式的私钥文件
需要先使用puttygen.exe小程序将pem格式的私钥文件,转换成putty所能识别的.ppk格式,
关于linux免密登录及ssh客户端的使用的更多相关文章
- linux免密登录ssh验证配置方法及常见错误解决
目标:从服务器A免密登录服务器B [配置方法] 1.在服务器A生成密钥文件,直接使用以下命令: ssh-keygen 中间遇到输入内容一路回车即可,完成后会在 ~/.ssh 目录下生成两个文件:id_ ...
- ssh-keygen Linux 免密登录
一.选择算法和密钥大小 rsa - 基于分解大数的难度的旧算法.RSA建议密钥大小至少为2048位,4096位更好.RSA正在变老,并且在保理方面取得了重大进展.可能建议选择不同的算法.在可预见的将来 ...
- linux免密登录配置
第一步:安装openssh-clients yum install -y openssh-clients.x86_64第二步:生成密钥 ssh-keygen第三步:拷贝公钥到其他机器 ssh-copy ...
- linux免密登录和设置别名
一.免密登录 (1) 配置公钥 ssh-keygen (2)让远程服务器记住公钥 ssh-copy-id 用户名@ip地址或域名 二.设置别名 (3)在~/.ssh目录下创建并编辑conf ...
- ssh linux免密登录。。。。生产共钥到另一台主机
一.第一种方式: 1.ssh-keygen -t rsa -t : 加密方式 默认为rsa 可以省略不写 加密方式选 rsa|dsa 2.将 .pub 文件复制到目标机器的 .ssh 目录, 并 ca ...
- Linux免密登录
ssh连接上服务器 ssh -p 端口 用户名@ip地址 获取本地的pub ssh key cd ~/.ssh vi id_rsa.pub 拷贝里面的内容 将拷贝的内容放到服务器的authorized ...
- linux 免密登录
ssh-keygen -t rsa -P "" ssh-copy-id -i ~/.ssh/id_rsa.pub root@服务器地址
- Linux 双向 SSH 免密登录
原理 双向,顾名思义,双方互通,此处的意思是多台 linux 两两免密登录.双向比单向多了些操作,单向只需把某一个linux的公钥发送给其他linux即可,而双向要实现集群中的每一台机器都保存其他所有 ...
- (11)ssh免密登录配置
***在Linux命令行中登录到另一台虚拟机(需要用到ssh协议) Linux中默认有ssh的服务器端和客户端,客户端的名字就叫ssh 前提是当前使用的用户名在待连接的虚拟机中存在 格式: ssh ...
随机推荐
- json 格式要求
json 格式中, 字符串类型需要使用双引号,不能为单引号
- 5.1 Go函数定义
1 Go函数定义 Go函数是指:一段具有独立功能的代码,然后可以在程序中其他地方多次调用. Go分为自定义函数,系统函数. 函数可以将一个大的工作拆解成小的任务. 函数对用户隐藏了细节. Golang ...
- ThinkPHP6.0 容器和依赖注入
ThinkPHP6.0 容器和依赖注入 分为如下两部分: 依赖注入 容器 依赖注入 依赖注入其实本质上是指对类的依赖通过构造器完成自动注入: 在控制器架构方法和操作和方法中一旦对参数进行对象类型约束则 ...
- LightOJ1282
题目大意: 给出 n 和 k,请你求出 n^k 次方的前三位和后三位. 解题思路: 后三位用快速幂,不加赘述. 求前三位的方法: AC代码: #include <iostream> #in ...
- 405 - 不允许用于访问此页的 HTTP 谓词的处理办法
今天介绍的是针对访问html页面时出现此类错误的处理办法,如果你的问题页面是其他类型,可以参考如下信息: IIS 返回 405 - 不允许用于访问此页的 HTTP 谓词.终极解决办法!!!! 1.为什 ...
- 阿里巴巴编码规范(Java)证明
背景 阿里云上有个阿里巴巴编码规范认证,我估算一下时间成本很低,多个认证也没什么坏处,就花了1分钱报了个名.这个认证报名后就可以下载链接下的编码规范,然后参加个考试应该就OK了. 共48页的规范实际上 ...
- 我的Android知识结构图——20200507停止更新,后续通过标签或分类继续完善结构图
*持续更新中.调整中(带链接的是已经总结发布的,未带链接是待发布的) *个别知识点在多个分类中都是比较重要部分,为了分类完整性 可能多出都列出了 *每一篇都是认真总结并写出来的,若哪里有问题欢迎指正 ...
- 【PyTorch】深度学习与PyTorch资料链接整理
欢迎来到我的博客! 以下链接均是日常学习,偶然得之,并加以收集整理,感兴趣的朋友可以多多访问和学习.如果以下内容对你有所帮助,不妨转载和分享.(Update on 5,November,2019) 1 ...
- 【Gabor】基于多尺度多方向Gabor融合+分块直方图的表情识别
Topic:表情识别Env: win10 + Pycharm2018 + Python3.6.8Date: 2019/6/23~25 by hw_Chen2018 ...
- android小Demo--圆球跟随手指轨迹移动
eatwhatApp的客户端基本实现,会再后续进行整改,今天做一个在网上找到的小Demo,让屏幕中出现一个圆球,并跟随手指移动. 写个java类DrawView继承于View: public clas ...