ssh配置无密码登录
1.在master机器上生成公钥:
[root@master ~]# ssh-keygen -t rsa 注:一直按enter键就可以生成了
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
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:
81:39:eb:23:2c:f9:75:af:93:cb:76:00:87:3e:cf:0f root@master
The key's randomart image is:
+--[ RSA 2048]----+
| |
| o |
| +.. |
| oo.. |
| ..oS |
| o .o . |
| o o ++Eo |
| o o +*o. |
| . .+*o |
+-----------------+
2..执行 cp id_rsa.pub authorized_keys
3.把master上面的authorized_keys文件复制到Slave机器上
scp authorized_keys slave:~/.ssh
4..slave1上的修改.ssh目录的权限以及authorized_keys 的权限(这个必须修改,要不然还是需要密码)
1、权限问题
.ssh目录,以及当前用户 需要相同的700权限,参考以下操作调整
sudo chmod 700 /root/.ssh
sudo chmod 700 /root
.ssh目录下的authorized_keys文件需要600或644权限,参考以下操作调整
sudo chmod 600 /root/.ssh/authorized_keys
2、StrictModes问题
编辑
sudo vi /etc/ssh/sshd_config
找到
#StrictModes yes (注:登陆用户目录/root 和 存放公钥目录/root/.ssh的权限要相同:如:chmod 700 /root 和 chmod 700 /root/.ssh)
改成
StrictModes no (注:登陆用户目录/root 和 存放公钥目录/root/.ssh的权限不需要相同:如:chmod 777 /root 和 chmod 700 /root/.ssh)
StrictModes解析:
StrictModes no #修改为no,默认为yes.如果不修改用key登陆是出现server refused our key(如果StrictModes为yes必需保证存放公钥的文件夹的拥有与登陆用户名是相同的.
“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。 修改完/etc/ssh/sshd_config后需要重启ssh服务才能生效:service sshd restart 或者 service ssh restart
3.三台机器互相ssh免登陆密码登陆设置:master, slave1, slave2
1)首先分别在master,slave1,slave2上生成
id_rsa.pub, id_rsa
2)设置免密码登陆master:
a)在master上执行:cp d_rsa.pub authorized_keys
测试:在master上执行:ssh master 如免密码登陆,则成功!
b)在slave1上执行:scp d_rsa.pub master:/root/.ssh/d_rsa.pub_slave1
然后在master上执行:cat d_rsa.pub_slave1 >> authorized_keys
测试:在slave1上执行:ssh master 如免密码登陆,则成功!
c)在slave2上执行:scp d_rsa.pub master:/root/.ssh/d_rsa.pub_slave2
然后在master上执行:cat d_rsa.pub_slave12>> authorized_keys
测试:在slave2上执行:ssh master 如免密码登陆,则成功!
3)设置免密码登陆slave1:
a)在slave1上执行:cp d_rsa.pub authorized_keys
测试:在slave1上执行:ssh slave1 如免密码登陆,则成功!
b)在master上执行:scp d_rsa.pub slave1:/root/.ssh/d_rsa.pub_master
然后在slave1上执行:cat d_rsa.pub_master >> authorized_keys
测试:在master上执行:ssh slave1 如免密码登陆,则成功!
c)在slave2上执行:scp d_rsa.pub slave1:/root/.ssh/d_rsa.pub_slave2
然后在slave1上执行:cat d_rsa.pub_slave2 >> authorized_keys
测试:在slave2上执行:ssh slave1 如免密码登陆,则成功!
4)设置免密码登陆slave2:
a)在slave2上执行:cp d_rsa.pub authorized_keys
测试:在slave2上执行:ssh slave2 如免密码登陆,则成功!
b)在master上执行:scp d_rsa.pub slave2:/root/.ssh/d_rsa.pub_master
然后在slave2上执行:cat d_rsa.pub_master >> authorized_keys
测试:在master上执行:ssh slave2 如免密码登陆,则成功!
c)在slave1上执行:scp d_rsa.pub slave12/root/.ssh/d_rsa.pub_slave1
然后在slave2上执行:cat d_rsa.pub_slave1 >> authorized_keys
测试:在slave1上执行:ssh slave2 如免密码登陆,则成功!
5)如果测试都成功,则master,slave1,slave2相互之间就可以免密码登陆了,更多机器相互之间免密码登陆设置也如此设置!
ssh配置无密码登录的更多相关文章
- ssh 配置无密码登录
下框中在管理机上运行: [root@master ~]# ssh-keygen -t rsa #它在/root/.ssh下生成id_rsa和id_rsa.pub两个文件 [root@master ~] ...
- 安装gitolite,并ssh公钥无密码登录
安装gitolite,并ssh公钥无密码登录 gitolite是管理git版本库的一种方案,它将git版本库的管理信息放在了一个特殊git版本库里.gitolite与linux操作系统集成了,需要使用 ...
- linux ssh scp无密码登录
一. 应用场景 假如你Linux Client是客户端, Server为服务器,用户名为user.现在要配置从Client到Server的无密码SSH登录或者无密码的scp拷贝. 例如客户端Clien ...
- ssh设置无密码登录
设置无密码登录此处设为有主机a登录到主机b 1.在主机a生成公钥 ssh-keygen -t rsa 之后有导航(其实一直回车就可以) 2.此时在主机a/home/YOURHOSTNAME/.ssh ...
- 解决root用户ssh配置无密码登陆/hadoop用户照仿可以实现相同功能:hadoop用户登录并且把命令的所有root换成home/hadoop
http://inuyasha1027.blog.51cto.com/4003695/1132896/ 主机ip:192.168.163.100(hostname: node0) ssh无密码登陆的远 ...
- CentOS SSH安全和配置无密码登录
CentOS ssh默认监听端口 22端口,允许root用户ssh登录.server投入生产后很有必要更改默认ssh监听端口和禁止root登录. 步骤1:确认安装有ssh包 [appuser@su17 ...
- ssh 配置自动登录
假定 机器A 连接至 机器B . 1. 在机器A上,生成RSA秘钥对 ssh-keygen -t rsa 期间passphrase不输入密码.默认生成文件至 ~/.ssh/ -rw------- we ...
- ssh的无密码登录
实现步骤如下: 1 生成一对公钥和私钥 $ ssh-keygen #以上命令等价于 ssh-keygen -t rsa #-t:指定密钥的类型,默认为SSH-2 的rsa类型; 运行上面的命令后,系统 ...
- SSH实现无密码登录
1.生成秘钥 : ssh-keygen -t rsa # -t 指定生成秘钥方式,生成秘钥过程需要三次回车 2.将生成的公钥传给 ssh 的对端 ssh-copy-id root@192.168.3. ...
随机推荐
- Ext修改Confirm弹框按钮的默认值
- sqlserver建dblink
--建立连接exec sp_addlinkedserver'ITSV' ,'' , 'SQLOLEDB' ,'IP地址不加端口' exec sp_addlinkedsrvlogin'ITSV' ,'f ...
- PHP字符串的替换(preg_replace)
/* 正则表达式 preg_replace() */ $str = array( "如果没有一些http://www.abc.com特殊的<b>替换</b>需5求( ...
- Django 的信号 & Flask 的信号
信号:框架内部已帮助开发者预留的可扩展的位置 一.Django 的信号 项目目录结构: django_signal |--- app01 |--- models.py |--- views.py .. ...
- android AlertDialog常见使用
android AlertDialog常见使用 简单提示框: AlertDialog.Builder alertDialog = new AlertDialog.Builder(this); aler ...
- [bzoj4006][JLOI2015]管道连接_斯坦纳树_状压dp
管道连接 bzoj-4006 JLOI-2015 题目大意:给定一张$n$个节点$m$条边的带边权无向图.并且给定$p$个重要节点,每个重要节点都有一个颜色.求一个边权和最小的边集使得颜色相同的重要节 ...
- P2384 最短路 洛谷
https://www.luogu.org/problem/show?pid=2384 题目背景 狗哥做烂了最短路,突然机智的考了Bosh一道,没想到把Bosh考住了...你能帮Bosh解决吗? 他会 ...
- 某考试 T1 arg
题目描述 给出一个长度为 m 的序列 A, 请你求出有多少种 1...n 的排列, 满足 A 是它的一个 LIS. 输入格式 第一行两个整数 n, m. 接下来一行 m 个整数, 表示 A. 输出格式 ...
- Maven使用tomcat7-maven-plugin插件run时出现错误: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component
错误如下: A child container failed during startjava.util.concurrent.ExecutionException: org.apache.catal ...
- CentOS 6.x Radius
CentOS 6.x Radius 一. 实现环境: 1.系统:CentOS release 6.6 (Final) 2.需要软件包: 1) freeradius-2.1.12-6.e16.x ...