场景:主机A想ssh免密码访问主机B (root/非root用户通用) A→B

1、在主机A上切换到平常用来跳转的用户上(本例用普通用户GK),执行ssh-keygen命令,然后一路回车即可。

root@主机A:[/root]su - GK
GK@主机A:~> cd .ssh       //没有就新建:~>mkdir .ssh 注意带上符号“.”
GK@主机A:~/.ssh> ssh-keygen        //一路回车到结束即可
Generating public/private rsa key pair.
Enter file in which to save the key (/home/GK/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/GK/.ssh/id_rsa.
Your public key has been saved in /home/GK/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:HvuXR5fdQkas5dsfasdasOFh/YwCM6xt/kqw GK@主机A
The key's randomart image is:
+---[RSA 2048]----+
|   o  .+**..o.   |
|  . o  .*o-o..   |
|   . . o*o.oo    |
|   = o oo.   o   |
|  . = .  .  o .  |
|  E. o    .. .   |
+----[SHA256]-----+

2、查看生成的公钥文件id_rsa.pub,并复制其内容

GK@主机A:~/.ssh> ll
total 8
-rw------- 1 GK GK 1675 Aug 20 17:02 id_rsa
-rw-r--r-- 1 GK GK  417 Aug 20 17:02 id_rsa.pub
GK@主机A:~/.ssh> cat id_rsa.pub          //查看主机A生成的公钥

例:ssh-rsa AAAAB3NzaC1yc2EAAAADA**********UwTauL GK@主机A
注意 公钥要完全复制,包括最后面的“GK@主机A”

3、登录到被访问主机B上面,切换到免密码登录的用户下 //a、b步骤任选其一即可

a.=======免密码登录root======    //当想免密跳转到主机B的root用户时root@主机B:[/root/.ssh]cd ~                          root@主机B:[/root]mkdir .ssh       //有.ssh目录就跳过这步root@主机B:[/root]cd .ssh                            root@主机B:[/root/.ssh]vi authorized_keys     //将主机A复制的公钥粘贴到此文件内,并wq保存
b.======免密码登录普通用户=====     //当想免密跳转到主机B普通Bck用户时root@主机B:[/root]su - Bck                                             Bck@主机B:[/home/Bck]mkdir .ssh     //有.ssh目录就跳过这步Bck@主机B:[/home/Bck]cd .ssh                         Bck@主机B:[/home/Bck/.ssh]vi authorized_keys  //将主机A复制的公钥粘贴到文件内,并保存

4、跳转的是普通用户则还需要修改主机B的.ssh等文件权限,否则还是要密码登录

Bck@主机B:[/home/Bck]chmod 700 -R /home/Bck/.ssh  //路径根据实际用户而改变
Bck@主机B:[/home/Bck]chmod 600 -R /home/Bck/.ssh/authorized_keys  //路径根据实际用户而改变

测试访问:

GK@主机A:~>ssh Bck@192.168.96.120 

至此已可以不用输密码即可登录,但是还是需要输入用户名(当主机A/B,公私钥使用的用户名相同可不用)

==解决本地登陆用户与远程登陆用户不一致时免输用户跳转===
1、进入主机A上生成秘钥的用户 ~/.ssh ,修改config配置文件 //没有就新建

GK@主机A:~/.ssh> vi config     //按以下格式添加
Host hostname     // hostname即主机B地址
user name         // name 主机B用来免密码登录的用户
Host hostname
user name
例:
Host 192.168.96.120
user BCK

2、修改config权限,不然会报错

GK@主机A:~/.ssh>chmod 600 -R config

=====重启主机BSSHD守护进程=======

root@主机B:[/etc/ssh]ps -ef | grep ssh       //用root查看sshd进程
root   11955    1  0 Aug16 ?    00:00:00 sshd: root@pts/0
root   119338   1  0 17:35 ?    00:00:00 /usr/sbin/sshd -D  //sshd守护进程
root   125551  11957  0 17:54 pts/0   00:00:00 grep --color=auto ssh
root@主机B:[/etc/ssh]kill -HUP 119338   //重启SSHD守护进程

“-HUP”一定要加上!!!否则ssh守护进程被杀死,只有重启系统了!!!进程ID一定要对应!!!

SSH信任关系配置(免密码登录)相关推荐

  1. 配置免密码登录Linux服务器

    2019独角兽企业重金招聘Python工程师标准>>> 获取本机SSH公钥,cat ~/.ssh/id_rsa.pub 远程Linux服务器上,vim ~/.ssh/authoriz ...

  2. windows登录linux免密码,Windows使用SSH Secure Shell实现免密码登录Linux的方法以及使用scp2命令免密码下载文件...

    1.   环境信息 SSH Secure Shell Client所在的操作系统: Windows7 Linux服务器以及SSH的版本: [hadoop@gpmaster ~]$ cat /etc/r ...

  3. Windows使用SSH Secure Shell实现免密码登录Linux的方法以及使用scp2命令免密码下载文件

    1.   环境信息 SSH Secure Shell Client所在的操作系统: Windows7 Linux服务器以及SSH的版本: [hadoop@gpmaster ~]$ cat /etc/r ...

  4. SSH代理基于Key免密码登录

    SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议,SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议, 利用 SSH 协议可以有效防止远程管理过程中 ...

  5. linux 配置免密码登录,Linux - 配置SSH免密登录 - “ssh-keygen”的基本用法

    1 什么是SSH 引用百度百科的说明: SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:它是建立在应用层基础上的安全协议. S ...

  6. Linux配置SSH免密码登录(非root账号)

    Linux环境下,经常通过SSH从一台服务器登录到另一台服务器,并且登录身份不是root账号,每次都要输入密码挺麻烦的,所以今天就来实战如何配置非root账号的免密码登录: 实战环境 本次实战环境是三 ...

  7. linux系统密码正则,Linux密钥登录原理和ssh使用密钥实现免密码登陆

    目录 1.公私钥简介与原理 公钥和私钥都属于非对称加密算法的一个实现,这个加密算法的信息交换过程是: 1) 持有公钥的一方(甲)在收到持有私钥的一方(乙)的请求时,甲会在自己的公钥列表中查找是否有乙的 ...

  8. ssh免密码登录全过程

    生成公钥和私钥 ssh-keygen 等同于ssh-keygen -t rsa 运行上面的命令后,系统会出现一系列提示,可以一路回车,例如: $ ssh-keygen Generating publi ...

  9. 主机之间ssh免密码登录

    1 前提条件 主机A,用户名为aris,IP地址为192.168.1.1 主机B,用户名为leon,IP地址为192.168.1.2 这两台主机上均安装了SSH服务器,且已经打开ssh服务: 检查主机 ...

最新文章

  1. 个人所得税计算器2016 by Jacksile
  2. Python基础14-迭代器与生成器
  3. FusionCharts下载地址汇总及更新介绍
  4. 如何给字体添加底色indesign_“美哉汉字”2020字体设计专家工作坊预告+报名
  5. java把一段英文拆成单词_java编程题,输入一段英文文章,单词之间都已经用空格分隔,本人想以每5个单词为一行输出,怎么写?请指教...
  6. Julia中的denominator()函数
  7. 转SFTP 和FTPS的区别是什么?
  8. 一位JAVA程序员的七夕情书——致未来的另一半
  9. easypoi的学习笔记
  10. 使用Redis+AOP优化权限管理功能
  11. GTK真不容易,资料少,学得人也少!
  12. submit常用快捷键
  13. idea如何设置黑色主题
  14. BP神经网络模型及梯度下降法
  15. ISP—图像调试实习生(第10天)
  16. 基于python的毕业论文邮箱收发系统_基于python语言的自动化邮件发送总结
  17. 深度学习,分割后处理之通过连通成分分析去除假阳性区域,提高分割准确度
  18. git did not exit cleanly (exit code 1)
  19. java解压在线tgz文件
  20. Pycharm下运行调试Python项目时,当调试既需要给调试的程序传入命令行参数又需要程序在设置的断点处停下里查看变量时的解决方法

热门文章

  1. 香港银行开户失败的原因及应对方法 香港银行开户要求愈发严资者如果想在香港银行开户,需对香港银行开户政透彻的了解,这样才能确保开户的成功率。
  2. 轮流取石子游戏c语言答案,取石子游戏
  3. 程序员面试题精选(24):栈的push、pop序列
  4. web前端html5+css3学习笔记(1)
  5. 辛甫生算法c语言,[转载]实变函数,计算方法程序,康托图
  6. 辛东方重组百花园传媒 人员大调整
  7. 校验两个时间段是否重合
  8. Windows 中如何远程访问内网计算机
  9. 一点资讯app signature
  10. android壁纸设置,android设置壁纸 的方法