按操作步骤操作不行的最可能原因是:文件权限,不论是a机还是要访问的b机的文件的权限都要改成对应的700,600;必须严格是这个权限,否则会出现设置免密fail的情况。

serverA 免密码登录到 serverB

机器A 向 机器B 进行免密码登陆

step1:

在机器A中生成 私钥和公钥:

命令:ssh-keygen -t rsa,一路回车就行,如果需要passphrase密码,自行输入就行,一路回车passphrase密码为空

此时在 ~/.ssh/ 目录下生成了公钥(id_rsa.pub)和私钥(id_rsa)

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

step2:

把机器A的公钥(id_rsa.pub)复制到机器B ~/.ssh/authorized_keys 文件里,两种常用方法

方法1:

scp ~/.ssh/id_rsa.pub username@host:/home/B/id_rsa.pub

//此时scp需要输入 登录机器B username用户的密码

//然后进入机器B内把 /home/B/id_rsa.pub 文件内容加写进 ~/.ssh/authorized_keys 文件:

cat /home/B/id_rsa.pub /home/B/.ssh/authorized_keys

方法2:

    //在机器A中使用 ssh-copy-id 把公钥加写到机器B的 ~/.ssh/authorized_keys 文件

    ssh-copy-id username@host

    //执行后输入机器B username用户的密码,效果和方法1一样

step3:

修改机器B ~/.ssh/authorized_keys 文件的权限:

chmod  ~/.ssh/authorized_keys

此时如果机器B没有~/.ssh 目录需要手动创建

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

step4:

此时机器A可以进行免验证登录 机器B

ssh username@host

参阅网上很多方法后,发现步骤都差不多,但是却屡屡失败,设置完后仍然要输入密码,后面发现了是被登录机器的文件权限问题:

    //用户权限

    chmod  /home/username

    //.ssh文件夹权限

    chmod  ~/.ssh/

    // ~/.ssh/authorized_keys 文件权限

    chmod  ~/.ssh/authorized_keys

还有可能这个文件内容被注释了(改成下图的状态):

vi /etc/ssh/sshd_config 

1 如果还是无法登陆,可能是Linux禁用了root账户ssh登陆,解决方法:

编辑配置文件

vim /etc/ssh/sshd_config

2 修改  PermitRootLogin  后面的  no 为 yes,并且去掉前面的注释符,同时可以限制失败次数
注意: 这个失败次数是对所有用户都起作用的。

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
MaxAuthTries
#MaxSessions

3 重启 sshd 服务:

systemctl restart sshd.service

ssh 免密码登录(设置后仍需输密码的原因及解决方法)的更多相关文章

  1. 多台服务器-SSH免密登录设置

    在4台服务器-SSH免密登录设置,如以下4台服务器 master1 node001 node002 node003 我想在master1对4台服务器进行拉取或者分发任务或者是集群服务器的批量操作,但是 ...

  2. Linux机器之间SSH免密钥登录设置

    SSH免密钥登录 私钥:密钥留在本机 公钥:密钥发给其他机 hadoop01 生成密钥: ssh-keygen -t rsa (密钥存放路径:/root/.ssh) id_rsa:私钥 id_rsa. ...

  3. 配置ssh免密码登录设置后还是提示需要输入密码

    工作之余搭建了一个集群测试,配置了ssh免密码登录以后  ,所有的ssh-copy-id 密钥也都分发了 ,各项配置也没有问题,但是使用ssh进行免密登录时,没有报错,但是要输入被ssh主机的登录密码 ...

  4. Hadoop 集群ssh免密登录设置

    0.安装命令: yum list installed | grep openssh-server 命令检查ssh安装有没有安装,如果查询出来有就表示安装了,否则反之 通过 yum install op ...

  5. ssh免密登录配置后,登陆失败问题

    本文转自博主:_Lance 本文转自:https://blog.csdn.net/qq_19648191/article/details/54845440 相关资料http://blog.csdn.n ...

  6. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  7. SSH免密登录设置

    ******配置主机之间的免密ssh登陆 假如 A  要登陆  B 在A上操作: (1)首先生成密钥对 ssh-keygen   (提示时,直接回车即可) (2)再将A自己的公钥拷贝并追加到B的授权列 ...

  8. SSH免密登录设置步骤

    1.配置公钥:执行ssh-keygen即可生成SSH钥匙,一路回车即可 ssh-keygen 2.上传公钥到服务器:执行 ssh-copy-id -p port user@remote,可以让远程服务 ...

  9. onchange监听input值变化及input隐藏后change事件不触发的原因与解决方法(设置readonly后onchange不起作用的解决方案)

    转自:https://www.cnblogs.com/white0710/p/7338456.html 1. onchange事件监听input值变化的使用方法: <input id=" ...

随机推荐

  1. 一键安装metasploit(linux,os x)

    curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit- ...

  2. Web Service学习(一)

    1.WebMethod特性包含哪些属性,都有什么用? 1.BufferResponse属性 该属性表明是否启用对Web Service方法响应的缓冲.当设置为true时,Web Service方法将响 ...

  3. 写给踏入IT行业的自己

    在IT工程师和培训机构多如牛毛的时代,拜师学艺并不难.但自学编程对于毫无基础的同学来说却可能是个问题,相信有过类似经历的朋友都有一把辛酸泪和一肚不吐不快的体会.让我们从一个故事说起… 故事 某君在一个 ...

  4. EXSI6怎么设置虚拟机从光驱启动

    EXSI在安装完系统以后会默认从磁盘启动,假如需要进入救援模式则需要设置成光驱启动 设置

  5. maven jdk版本

    http://maven.apache.org/docs/history.html Maven Releases History Date format is: YYYY-MM-DD Maven 3 ...

  6. RF - selenium - 常用关键字 - 示例

    1. 打开浏览器 Open Browser    http://www.baidu.com    chrome 2. 关闭浏览器 Close Browsers Close All Browser 3. ...

  7. Python全栈-JavaScript】jQuery工具

    jQuery工具 一.jQuery.browser.version 显示当前 IE 浏览器版本号. if ( $.browser.msie ) alert( $.browser.version ); ...

  8. 笔试中常用c++接口

    1.stack:https://www.cnblogs.com/hdk1993/p/5809161.html 使用该容器时需要包含#include<stack>头文件: 定义stack对象 ...

  9. org.hibernate.HibernateException: Duplicate identifier in table for: Waa

    提示表的标识符重复,发现是数据库中的主键id重复了.因为是序列自动生成的. 我原本以为是因为我的序列的问题,序列.nextval()有问题,但是当我在数据库测试时,发现当前序列没有问题.但是当数据插入 ...

  10. 支持向量机(SVM)

    SVM 简介 SVM:Support Vector Machine , 支持向量机, 是一种分类算法. 同Logistic 分类方法目的一样,SVM 试图想寻找分割线或面,将平面或空间里的样本点一分为 ...