sshd免密登陆
用途:默认情况下,当A主机(1.1.1.1)远程通过ssh命令登陆到B主机(2.2.2.2)上,需要输入B主机的密码。免密登陆的效果为,A通过ssh命令登录到B时,不需要输入密码就可以登录,便于管理。
一、A免密登陆到B主机上
配置方法:
1、A主机生成密钥对儿(公钥+私钥)
#ssh-keygen -t rsa
注意:生成的密钥默认保存至/root/.ssh/目录下。
2、A主机复制公钥到远程主机B上
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@2.2.2.2
注意:拷贝公钥的时候需要验证B主机的密码
3、B收到A的公钥后,A就可以无需密码登录B
注意:B主机上的~/.ssh/authorized_keys文件,就记录着收到的公钥文件
二、多台机器之间互免登陆:
在多台服务器的集群中,通常要求机器两两之间都可以互相免密登陆对方,如果用上面的配置方法效率较低。我们假设这里有a,b,c,d,e,f,g七台服务器之间要实现互免。
方法一:
在a,b,c,d,e,f,g每一台服务器上:
# ssh-keygen -t rsa #所有机器上生成密钥对
# ssh-copy-id root@g #把每台机器生成的公钥都复制到g上
在g服务器上:
# scp /root/.ssh/authorized_keys root@[a|b|c|d|e|f]:/root/.ssh/ #将g上所获得的所有公钥复制到每一台服务器上
方法二(手动)
在a,b,c,d,e,f,g每一台服务器上:
# ssh-keygen -t rsa #所有机器上生成密钥对
在g服务器上
#touch /root/.ssh/ authorized_keys #手动创建存储公钥的文件
将a,b,c,d,e,f,g每一台服务器上/root/.ssh/id_rsa.pub 公钥文件内容追加到g服务器的/root/.ssh/ authorized_keys文件中,每一行是一条公钥
将g上的/root/.ssh/ authorized_keys文件复制到每一台服务器上
方法三(最简单):所有的机器都用同一套密钥
在a服务器上
# ssh-keygen -t rsa -P "" -f /root/.ssh/id_rsa
# ssh-copy-id root@127.0.0.1
把.ssh目录下的所有文件都拷贝到各个机器
# scp /root/.ssh/* root@[b|c|d|e|f]:/root/.ssh
注意问题:如遇到复制了公钥还不能免密登陆的情况,通常和/root,/root/.ssh等文件的属主不是root导致的,或者查看ssh登陆日志/var/log/secure来分析不能免密登陆原因。
sshd免密登陆的更多相关文章
- macos ssh host配置及免密登陆
windows下面有xshell 这样的可视化ssh管理工具 macos 下面使用终端做下简单配置,也非常方便,具体过程如下 生成秘钥 cd ~/.sshssh-keygen -t rsa 生成了私钥 ...
- SSH之免密登陆
又来了,上头让小轩我在服务器中写一个Shell脚本,主要用来在机器B中定时备份机器A中的一些文件.那么,小轩是怎么想的呢? 在小轩的知识库里,现在有scp和ssh两个玩具.别的还真没有其他什么东西了. ...
- ssh免密登陆配置
目录 ssh免密登陆 在A工作站上输入 B服务器上输入 登陆 ssh初次登陆询问 1.单次取消 2.ansible中增加链接参数 3.修改ansible配置参数[推荐] 4.修改服务器上的ssh_co ...
- xshell 远程登陆CentOS7 免密登陆
首先说一下大体的思路: 1. 以密码登陆CentOS系统 2. 配置ssh 3. xshell 生成秘钥 4. 进行免密登陆 软件.设备: xshell(下载地址(免费版),也可以自行百度下载) Ce ...
- centOS7开启ssh免密登陆
一.登陆服务器生成ssh-key 二.把ssh-key复制到被登陆机器上 三.设置权限 root# .ssh 文件夹权限 root# .ssh/authorized_keys 文件权限 四.测试是否正 ...
- Linux免密登陆设置了免密登陆为啥还需要输入密码
一.设置了免密码登陆但是还是需要输入密码: 权限保证:1.authorized-keys 的权限为 600 2.home.账户所在的目录如hadoop..ssh这三个文件的权限都必须设置为700,缺少 ...
- 阿里云ssh免密登陆突然无效
[root@node03 ~]# ssh-copy-id node02 root@node02's password: sh: .ssh/authorized_keys: Permission den ...
- ssh安全优化免密登陆
ssh协议 为什么使用ssh协议? 在进行传输时,会对数据进行加密,保证会话安全:telnet协议不是加密传输,在传输过程中如果被抓包,就会造成信息泄露,telnet默认不支持root远程. # 常用 ...
- ssh的免密登陆
想必大家都有使用ssh登陆的过程了,那么,怎么设置ssh免密登陆呢?下面有一些我的总结: 环境:服务器主.从 主服务器:192.168.1.1 从服务器:192.168.1.2 实现主服务器ssh登录 ...
随机推荐
- [经验] Java 使用 netty 框架, 向 Unity 客户端的 C# 实现通信[2]
在前一篇文章中, 我们实现了从Java netty 服务端到 unity 客户端的通讯, 但是在过程中也发现有一些问题是博主苦苦无法解决的, 但是还好终于有些问题还是被我找刀方法解决了, 现在把这些解 ...
- String - 字符串分割操作
如果我想将一个字符串按照每8位一组分为若干个块,然后存储在一个byte[ ]数组中,我首先需要确定这个byte数组的长度,但由于我无法确定这个字符串的长度是否可以被8整除,所以无法直接判断,因此需要对 ...
- Windows下配置Erlang环境
1.下载地址 http://www.erlang.org/downloads 2.下载文件 下载 OTP 22.2 Windows 64-bit Binary File 3.配置环境变量 将下载的安装 ...
- 获取表格数据转换为JSON字符串
核心代码JavaScript代码: 方法一 function sc () { var myTable=document.getElementById("myTable"); //获 ...
- 1、json背景
教程链接 链接:http://pan.baidu.com/s/1mil4M1M 密码:vwsn JSON (JavaScript对象表示法)是一种轻量级的基于文本的开放标准,被设计用于可读的数据交换, ...
- PS绘制Logo
1. 2. 3. 4. 5. 6. 第2步点击“圆1”应点击图层左边的缩览图才能获取选区 7. 8. 9. 10. 11. 12.
- Android学习04
Toast Toast是Android系统提供的一种非常好的提示方式,在程序中可以使用它将一些短小的信息通知给用户,这些信息会在一段时间后自动消失,并且不会占用任何的屏幕空间. 1.默认Toast 在 ...
- python3+requests+BeautifulSoup+mysql爬取豆瓣电影top250
基础页面:https://movie.douban.com/top250 代码: from time import sleep from requests import get from bs4 im ...
- DAY1小题
F 求逆序对的板子题 #include<cstdio> #define ll long long using namespace std; ; ll a[maxn],r[maxn],n; ...
- laravel 模拟数据批量添加
模拟User表结构: database/factories/UserFactory.php(模型工厂) <?php use App\Models\User; use Illuminate\Sup ...