转自https://www.jb51.net/article/121180.htm

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

1、执行命令:ssh-keygen -t rsa

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
然后我们再去登录,就能不用密码进入了。

解决:centos配置ssh免密码登录后仍要输入密码的更多相关文章

  1. CentOS配置SSH免密码登录后,仍提示输入密码

    CentOS配置SSH无密码登录需要3步: 生成公钥和私钥 导入公钥到认证文件,更改权限 测试 1.生成公钥和私钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 默 ...

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

    配置SSH无密码登录需要3步: 1.生成公钥和私钥 2.导入公钥到认证文件,更改权限 3.测试 1.生成公钥和私钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 默 ...

  3. centos配置ssh免密码登录

    master.slave1两台机器实现ssh免密码登录,user:hadoop,passwd:123456 1.设置master: vi /etc/sysconfig/network hostname ...

  4. 关于配置ssh免密码登录后,仍提示输入密码

    一.在A端创建密钥对: [root@A ~] -P '' 二.如果B机器没有.ssh和authorized_keys文件则创建这个文件夹和文件先,创建后要chown改成当前用户的所属者,其次也要改: ...

  5. Linux配置SSH免密码登录

    CentOS配置SSH免密码登录为例说明:SSH远程登录的安全外壳协议有两种身份认证机制: - 用户名+密码 -密钥登录 环境准备 host1:192.168.0.10host2:192.168.0. ...

  6. CentOS 6.5配置SSH免密码登录

    centos 系统对权限的设置非常微妙,如果权限设置大了则ssh 拒绝,如果权限小了,则ssh 更是被拒绝(我曾经配置好久没有打通,就是因为权限过大的原因) 参考链接:http://www.linux ...

  7. 配置Ssh免密码登录

    配置Ssh免密码登录 一个master节点,两个client节点(client1.client2) 1.所有节点创建hadoop用户,并设置密码 以root账号登录: useradd hadoop p ...

  8. Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录【已成功实例】

    本文转自https://blog.csdn.net/qjc_501165091/article/details/51278696 ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口 ...

  9. Linux 配置ssh 免密码登录

    在平常应用中,我们经常会登录到其他主机,比如说服务器,每次都需要用户名和密码. 我们可以通过ssh免密码登录服务器而不需要输入密码. 现在有一台ubuntu的阿里云服务器,称之为 server.  公 ...

随机推荐

  1. Mysql cluster管理节点配置文件详解

    一.定义MySQL Cluster的TCP/IP连接TCP/IP是MySQL集群用于建立连接的默认传输协议,正常情况下不需要定义连接.可使用“[TCP DEFAULT]”或“[TCP]”进行定义. 1 ...

  2. 谷歌浏览器安装 socketLog

    第一步(本地浏览器安装调试扩展) 下载扩展包并解压 链接:https://pan.baidu.com/s/14df0ewl_3wjRHc8H1jsrWQ提取码:yyu1 打开谷歌浏览器,地址栏输入 c ...

  3. phpexcel 导出数字类型字段导出错误或者为空解决办法 (原)

    跟我们写excel时候一样,手机号或者较长的数字类型,或被科学计数法和谐,但是如果类型是字符串,长一些的数字就不受影响了. 解决导出被和谐的最简单易懂的,就是最前面拼接‘ ’ 空格,或者字母符号之类, ...

  4. JavaWeb_通过xml配置文件配置servlet访问路径

    Servlet两种访问路径 一.在Servlet类中通过设置@WebServlet标注访问 二.在web.xml中编写配置文件 第一种能比较直观看到Servlet路径,但当项目发布后不好再对Servl ...

  5. python环境下安装virtualenv,virtualenvwrapper

    在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题: 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难. 此时,我们需要对于不同的工程使用 ...

  6. spring boot 常用注解

    @RestController和@RequestMapping注解 4.0重要的一个新的改进是@RestController注解,它继承自@Controller注解.4.0之前的版本,spring M ...

  7. 一、linux下nginx1.7.8+php5.6.3的环境配置

    部分参考:http://www.cnblogs.com/simpman/p/4151662.html http://blog.zyan.cc/nginx_php_v6 1.利用linux系统自带的yu ...

  8. C++如何限制对象在堆上或栈上生成

    1,限制类的对象只能生成在栈上 将 operator new 各种原型设为私有 #include <iostream> class OnlyOnStack { public: OnlyOn ...

  9. leetcode-easy-trees-101. Symmetric Tree-YES

    mycode   92.44% # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, ...

  10. C语言转义字符表和ASCII码表

    主要参考 http://www.51hei.com/mcu/4342.html 以及 https://www.cnblogs.com/jason207489550/p/6663444.html