首先,说明一下我们要做的是,serverA 服务器的 usera 用户免密码登录 serverB 服务器的 userb用户。

我们先使用usera 登录 serverA 服务器

  1. [root@serverA ~]# su - usera
  2. [usera@serverA ~]$ pwd
  3. /home/usera

然后在serverA上生成密钥对

  1. [usera@serverA ~]$ ssh-keygen -t rsa
  2. Generating public/private rsa key pair.
  3. Enter file in which to save the key (/home/usera/.ssh/id_rsa):
  4. Created directory '/home/usera/.ssh'.
  5. Enter passphrase (empty for no passphrase):
  6. Enter same passphrase again:
  7. Your identification has been saved in /home/usera/.ssh/id_rsa.
  8. Your public key has been saved in /home/usera/.ssh/id_rsa.pub.
  9. The key fingerprint is:
  10. 39:f2:fc:70:ef:e9:bd:05:40:6e:64:b0:99:56:6e:01 usera@serverA
  11. The key's randomart image is:
  12. +--[ RSA 2048]----+
  13. |          Eo*    |
  14. |           @ .   |
  15. |          = *    |
  16. |         o o .   |
  17. |      . S     .  |
  18. |       + .     . |
  19. |        + .     .|
  20. |         + . o . |
  21. |          .o= o. |
  22. +-----------------+

此时会在/home/usera/.ssh目录下生成密钥对

  1. [usera@serverA ~]$ ls -la .ssh
  2. 总用量 16
  3. drwx------  2 usera usera 4096  8月 24 09:22 .
  4. drwxrwx--- 12 usera usera 4096  8月 24 09:22 ..
  5. -rw-------  1 usera usera 1675  8月 24 09:22 id_rsa
  6. -rw-r--r--  1 usera usera  399  8月 24 09:22 id_rsa.pub

然后将公钥上传到serverB 服务器的,并以userb用户登录

  1. [usera@portalweb1 ~]$ ssh-copy-id userb@10.124.84.20
  2. The authenticity of host '10.124.84.20 (10.124.84.20)' can't be established.
  3. RSA key fingerprint is f0:1c:05:40:d3:71:31:61:b6:ad:7c:c2:f0:85:3c:cf.
  4. Are you sure you want to continue connecting (yes/no)? yes
  5. Warning: Permanently added '10.124.84.20' (RSA) to the list of known hosts.
  6. userb@10.124.84.29's password:
  7. Now try logging into the machine, with "ssh 'userb@10.124.84.20'", and check in:
  8. .ssh/authorized_keys
  9. to make sure we haven't added extra keys that you weren't expecting.

这个时候usera的公钥文件内容会追加写入到userb的 .ssh/authorized_keys 文件中

  1. [usera@serverA ~]$ cat .ssh/id_rsa.pub
  2. ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2dpxfvifkpswsbusPCUWReD/mfTWpDEErHLWAxnixGiXLvHuS9QNavepZoCvpbZWHade88KLPkr5XEv6M5RscHXxmxJ1IE5vBLrrS0NDJf8AjCLQpTDguyerpLybONRFFTqGXAc/ximMbyHeCtI0vnuJlvET0pprj7bqmMXr/2lNlhIfxkZCxgZZQHgqyBQqk/RQweuYAiuMvuiM8Ssk/rdG8hL/n0eXjh9JV8H17od4htNfKv5+zRfbKi5vfsetfFN49Q4xa7SB9o7z6sCvrHjCMW3gbzZGYUPsj0WKQDTW2uN0nH4UgQo7JfyILRVZtwIm7P6YgsI7vma/vRP0aw== usera@serverA

查看serverB服务器userb用户下的 ~/.ssh/authorized_keys文件,内容是一样的,此处我就不粘贴图片了。

  1. [userb@serverB ~]$ cat .ssh/authorized_keys
  2. ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2dpxfvifkpswsbusPCUWReD/mfTWpDEErHLWAxnixGiXLvHuS9QNavepZoCvpbZWHade88KLPkr5XEv6M5RscHXxmxJ1IE5vBLrrS0NDJf8AjCLQpTDguyerpLybONRFFTqGXAc/ximMbyHeCtI0vnuJlvET0pprj7bqmMXr/2lNlhIfxkZCxgZZQHgqyBQqk/RQweuYAiuMvuiM8Ssk/rdG8hL/n0eXjh9JV8H17od4htNfKv5+zRfbKi5vfsetfFN49Q4xa7SB9o7z6sCvrHjCMW3gbzZGYUPsj0WKQDTW2uN0nH4UgQo7JfyILRVZtwIm7P6YgsI7vma/vRP0aw== usera@serverA

另外我们要注意,.ssh目录的权限为700,其下文件authorized_keys和私钥的权限为600。否则会因为权限问题导致无法免密码登录。我们可以看到登陆后会有known_hosts文件生成。

  1. [useb@serverB ~]$ ls -la .ssh
  2. total 24
  3. drwx------.  2 useb useb 4096 Jul 27 16:13 .
  4. drwx------. 35 useb useb 4096 Aug 24 09:18 ..
  5. -rw-------   1 useb useb  796 Aug 24 09:24 authorized_keys
  6. -rw-------   1 useb useb 1675 Jul 27 16:09 id_rsa
  7. -rw-r--r--   1 useb useb  397 Jul 27 16:09 id_rsa.pub
  8. -rw-r--r--   1 useb useb 1183 Aug 11 13:57 known_hosts

这样做完之后我们就可以免密码登录了

  1. [usera@serverA ~]$ ssh userb@10.124.84.20

另外,将公钥拷贝到服务器的~/.ssh/authorized_keys文件中方法有如下几种:
1、将公钥通过scp拷贝到服务器上,然后追加到~/.ssh/authorized_keys文件中,这种方式比较麻烦。scp -P 22 ~/.ssh/id_rsa.pub user@host:~/。
2、通过ssh-copy-id程序,就是我演示的方法,ssh-copyid user@host即可
3、可以通过cat ~/.ssh/id_rsa.pub | ssh -p 22 user@host ‘cat >> ~/.ssh/authorized_keys’,这个也是比较常用的方法,因为可以更改端口号。

ssh免密码登录配置方法,(图示加命令)的更多相关文章

  1. ssh免密码登录配置方法

    每次输密码很麻烦,免密登录设置方法按照<ssh免密码登录配置方法>即可,简单来说: 1.终端上执行ssh-keygen -t rsa,生成密钥对(存放在/home/usera/.ssh). ...

  2. SSH免密码登录配置方法详解

    1.测试主机配置信息: 192.168.100.236 db06.chavin.king db06 192.168.100.237 db07.chavin.king db07 2.创建测试用户: gr ...

  3. Centos6.5之ssh免密码登录配置

    Centos6.5之ssh免密码登录配置 centos ssh 免密码登录 0.说明 这里为了方便说明问题,假设有A和B两台安装了centos6.5的主机.目标是实现A.B两台主机分别能够通过ssh免 ...

  4. SSH免密码登录配置

    ssh免密码登录Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 的解决方案 1.在hadoop目录 新建.ssh目录 使用:ssh ...

  5. Linux多台服务器间SSH免密码登录配置

    SSH实现各个服务器间的文件相互备份,如运行scp命令,可以实现免密码登录,从而可以使用SHELL脚本实现一些自动化的处理. 假如A机要免密码登录B机,具体方法如下: 1.在A机运行:"ss ...

  6. Linux主机之间ssh免密登录配置方法

    由于公司的生产环境有很多台Linux的CentOS服务器, 为了方便机子(假设两台机子A,B)互相之间免密ssh, scp命令操作,配置如下 1. 在A.B上分别创建本机的公钥和私钥,输入命令后连续三 ...

  7. Linux教程:SSH免密码登录的方法

    公司里有N台服务器需要经常登录,每次ssh的时候都要输入密码实在太不爽了,今天有空一口气全部改为公钥/私钥认证,登录再也不用任何密码了. 实现步骤: 1.在你的自己的机器下面使用ssh-keygen命 ...

  8. ssh 免密码登录配置,及其原理

    1.废话不多说,先上图   2. 典型的RSA非对称加密 RSA加密算法是一种典型的非对称加密算法,它基于大数的因式分解数学难题,它也是应用最广泛的非对称加密算法,于1978年由美国麻省理工学院(MI ...

  9. ssh免密登录配置方法

    方法一 1.#ssh-keygen -t rsa 在客户端生成密钥对 把公钥拷贝给要登录的目标主机, 目标主机上将这个公钥加入到授权列表 #cat id_rsa.pub >> author ...

随机推荐

  1. EasyDSS视频点播服务器实现的多码率点播功能的说明

    EasyDSS流媒体音视频直播与点播服务器软件,是一套提供一站式的转码.点播.直播.检索.回放.录像下载服务的高性能RTMP/HLS/HTTP-FLV流媒体服务,极大地简化了流媒体相关业务的开发和集成 ...

  2. 【HTML5开发系列】表单元素

    <form> 创建一个HTML表单 属性: action 表示提交表单时浏览器应该把用户填写的数据发送到什么地方 method 用来指定表单数据发送到服务器的方式.允许值有get和post ...

  3. 九度OJ 1199:找位置 (计数)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2083 解决:1010 题目描述: 对给定的一个字符串,找出有重复的字符,并给出其位置,如:abcaaAB12ab12 输出:a,1:a,4 ...

  4. iOS和Android后台机制对比

    转自:http://blog.csdn.net/zsch591488385/article/details/27232881 一.iOS的“伪后台”程序 首先,先了解一下ios 中所谓的「后台进程」到 ...

  5. Android Studio实现代码混淆

     1,在build.grandle添加,其中规则写在proguard-rules.pro中,也可以自定义一个文件,将其代替,比如eclipse常用的 proguard-project.txt: bui ...

  6. 从硬盘设计思想到RAID改良之道

    监控硬盘的前生今世关于桌面硬盘.企业级近线硬盘(NL-SAS/SATA)和监控硬盘的差别,我们在前文中已经讲得很详细,这里再换一个角度来看看. "监控硬盘是希捷和西数为视频监控定制的,典型的 ...

  7. Java多线程系列 JUC线程池02 线程池原理解析(一)

    转载  http://www.cnblogs.com/skywang12345/p/3509960.html ; http://www.cnblogs.com/skywang12345/p/35099 ...

  8. 【leetcode刷题笔记】Edit Distance

    Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2 ...

  9. 第二篇 dom内容操作之value

    一.内容操作的三种方式 . 详情看第一篇 innerText innerHtml . value ==>表单类的标签 input >text passwd textarea . check ...

  10. uboot 2013.01 代码简析(3)第二阶段初始化

    u-boot第二阶段初始化内容的入口函数是_main,_main位于arch/arm/lib/crt0.S文件中: _main函数中先为调用board_init_f准备初始化环境(设置栈指针sp和并给 ...