centos配置ssh免密码登录后仍要输入密码的解决方法

 更新时间:2017年08月15日 10:36:37   作者:Arthur  
这篇文章主要给大家介绍了关于centos配置ssh免密码登录后仍要输入密码的解决方法,需要的朋友可以参考下

前言

在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手动启动,集群内服务器几台还好,要是像阿里1000台的云梯Hadoop集群的话,轨迹启动一次集群就得几个工程师一两天时间,是不是很恐怖。如果使用免密登录,主服务器就能通过程序执行启动脚步,自动帮我们将从服务器的应用启动。而这一切就是建立在ssh服务的免密码登录之上的。所以要学习集群部署,就必须了解linux的免密码登录。

第一步:在本机中创建秘钥

1、执行命令:

ssh-keygen -t rsa -C "xx@qq.com" 

(随便编个字符串,一般用邮箱)

2、之后一路回车就行啦;会在~(home)目录下中产生.ssh(隐藏)文件夹;

3、里面有两个文件id_rsa(私钥)、id_rsa.pub(公钥)文件

注意事项:

①在liunx环境下,要想复制公钥或是私钥,不要使用vim等编辑器打开文件来复制粘贴;

因为它会产生不必要的回车。

②应该使用cat把内容打印到终端上再来复制粘贴;

第二步:用 ssh-copy-id 把公钥复制到远程主机上

ssh-copy-id zhangming@192.168.161.132 

把秘钥拷贝到远程服务器

用这种方式拷贝使用的端口是Linux默认的22,如果你想指定端口,可以使用:

ssh-copy-id -i /用户名/.ssh/id_rsa.pub '-p 端口号 用户名@106.75.52.44'

ssh-copy-id -i /root/.ssh/id_rsa.pub '-p 22222 root@106.75.52.44'

这里可能需要等一段时间,反正我是等了挺久的时间,然后显示要你输入密码:

zhangming@106.75.52.44's password:

输入完密码后,显示:

Now try logging into the machine, with "ssh '-p 22222 root@106.75.52.44'", and check in:
.ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

表示成功了!

第三步: 远程登入

[zhangming@localhost ~]$ ssh zhangming@192.168.161.134
Last login: Mon Oct 10 14:18:54 2016 from 192.168.161.135

ssh zhangming@123.59.44.56 -p 22222

注意

遇到的大坑:

配置ssh免密码登录后,仍提示输入密码

解决方法:

首先我们就要去查看系统的日志文件

tail /var/log/secure -n 20

发现问题的所在:Authentication refused: bad ownership or modes for file

从字面上可以看出是目录的属主和权限配置不当,查找资料得知:SSH不希望home目录和~/.ssh目录对组有写权限,通过下面几条命令改下

chmod g-w /home/zhangming 
chmod 700 /home/zhangming/.ssh
chmod 600 /home/zhangming/.ssh/authorized_keys

然后我们再去登录,就能不用密码进入了。

有木有很高兴呀!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

参考:[http://blog.csdn.net/u013066244/article/details/52796341]

相关文章

  • Linux系统下部署项目的设置方法

    Linux系统下部署项目的设置方法

    这篇文章主要介绍了Linux系统下部署项目的教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-10-10
  • Linux回收站机制实现过程及用法详解

    Linux回收站机制实现过程及用法详解

    这篇文章主要介绍了Linux回收站机制实现过程及用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 详解把Node.js项目部署到阿里云服务器(CentOs)

    详解把Node.js项目部署到阿里云服务器(CentOs)

    本篇文章主要介绍了把Node.js项目部署到阿里云服务器,非常具有实用价值,需要的朋友可以参考下
    2017-04-04
  • CentOS6.4 下安装SVN的详细教程(超详细)

    CentOS6.4 下安装SVN的详细教程(超详细)

    这篇文章主要介绍了CentOS6.4 下安装SVN的详细教程,在安装之前需要检查是否已经安装过了,然后使用yum install subversion安装,具体操作详细过程请参考本文
    2016-10-10
  • linux两台服务器实现自动同步文件

    linux两台服务器实现自动同步文件

    这篇文章主要介绍了linux两台服务器实现自动同步文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 解读Linux下ip命令展示的网络连接信息

    解读Linux下ip命令展示的网络连接信息

    这篇文章主要给大家介绍了关于Linux下解读ip命令展示的网络连接信息的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧。
    2018-03-03
  • Linux安装NodeJs并配合Nginx实现反向代理

    Linux安装NodeJs并配合Nginx实现反向代理

    本篇文章主要介绍了Linux安装NodeJs并配合Nginx实现反向代理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2016-11-11
  • Linux里Makefile是什么?它是如何工作的?

    Linux里Makefile是什么?它是如何工作的?

    今天小编就为大家分享一篇关于makefile是什么及其工作原理的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09
  • 使用VSCode和SSH进行远程开发

    使用VSCode和SSH进行远程开发

    这篇文章主要介绍了使用VSCode和SSH进行远程开发,文中通过图文以及示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • 详解ubuntu14.04如何设置静态IP的方法

    详解ubuntu14.04如何设置静态IP的方法

    本篇文章主要介绍了ubuntu14.04如何设置静态IP的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07

最新评论