博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sshd基于密钥的认证
阅读量:5824 次
发布时间:2019-06-18

本文共 1091 字,大约阅读时间需要 3 分钟。

hot3.png

两台主机之间通过密钥实现免密码登录

sshd认证方式:
1.基于口令的认证;
2.基于密钥的认证;公钥认证,把密钥放在用户家目录下的.ssh目录下
客户端:
# ssh-keygen -t rsa 生成rsa密钥
-t type
    Specifies the type of key to create.
    默认密钥在家目录.ssh目录下为id_rsa私钥,id_rsa.pub公钥
-f /path/to/somefile: 密钥文件保存位置,生成多次的话,可以指定其他名字
-P ‘’:指定oldpassword
     Provides the (old) passphrase.
ssh-keygen -t rsa
ssh-copy-id -i .ssh/id_rsa.pub username@hostIP
<==>  如果没有ssh-copy-id,则通过如下方法
# ls -ld .ssh/     注意权限
drwx------ 2 root root 4096 Jun 21 11:12 .ssh/
ssh username@hostIP 'umask 0077;mkdir /root/.ssh'  服务器端没有.ssh目录则创建
scp .ssh/id_rsa.pub username@hostIP:/root/.ssh/authorized_keys

完整过程描述

基于密钥方式远程登录过程:
1.在客户端生成密钥对
#ssh-keygen -t rsa
2.把公钥复制到服务器端
#ssh-copy-id -i .ssh/id_rsa.pub username@hostIP
等价方法
# ls -ld .ssh/     注意权限
drwx------ 2 root root 4096 Jun 21 11:12 .ssh/
# ssh username@hostIP ‘umask 0077; mkdir /root/.ssh’
# scp .ssh/id_rsa.pub username@hostIP:/root/.ssh/authorized_keys
3.客户端登录时
# ssh username@hostIP
可以不用输入密码了
所谓“公钥登录”,就是用户将自己的公钥存储在远程主机上,登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回去。远程主机用事先存储的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。

转载于:https://my.oschina.net/u/1762991/blog/698470

你可能感兴趣的文章
记录一次蚂蚁金服前端电话面试
查看>>
直播源码开发视频直播平台,不得不了解的流程
查看>>
Ubuntu上的pycrypto给出了编译器错误
查看>>
聊聊flink的RestClientConfiguration
查看>>
在CentOS上搭建git仓库服务器以及mac端进行克隆和提交到远程git仓库
查看>>
測試文章
查看>>
Flex很难?一文就足够了
查看>>
【BATJ面试必会】JAVA面试到底需要掌握什么?【上】
查看>>
CollabNet_Subversion小结
查看>>
mysql定时备份自动上传
查看>>
Linux 高可用集群解决方案
查看>>
17岁时少年决定把海洋洗干净,现在21岁的他做到了
查看>>
linux 启动oracle
查看>>
《写给大忙人看的java se 8》笔记
查看>>
我的友情链接
查看>>
倒计时:计算时间差
查看>>
Linux/windows P2V VMWare ESXi
查看>>
IEC61850时间质量TimeQuality各个比特位的含义
查看>>
Windows XP倒计时到底意味着什么?
查看>>
tomcat一步步实现反向代理、负载均衡、内存复制
查看>>