一、概述

1、就是为了让两个linux机器之间使用ssh不需要用户名和密码。采用了数字签名RSA或者DSA来完成这个操作

2、模型分析

假设 A (192.168.20.59)为客户机器,B(192.168.20.60)为目标机;

要达到的目的:
A机器ssh登录B机器无需输入密码;
加密方式选 rsa|dsa均可以,默认dsa

二、具体操作流程

单向登陆的操作过程(能满足上边的目的):
1、登录A机器
2、ssh-keygen -t [rsa|dsa],将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub
3、将 .pub 文件复制到B机器的 .ssh 目录, 并 cat id_dsa.pub >> ~/.ssh/authorized_keys
4、大功告成,从A机器登录B机器的目标账户,不再需要密码了;(直接运行 #ssh 192.168.20.60

双向登陆的操作过程:

1、ssh-keygen做密码验证可以使在向对方机器上ssh ,scp不用使用密码.具体方法如下:
2、两个节点都执行操作:#ssh-keygen -t rsa
  然后全部回车,采用默认值.

3、这样生成了一对密钥,存放在用户目录的~/.ssh下。
将公钥考到对方机器的用户目录下 ,并将其复制到~/.ssh/authorized_keys中(操作命令:#cat id_dsa.pub >> ~/.ssh/authorized_keys )。

4、设置文件和目录权限:

设置authorized_keys权限
$ chmod 600 authorized_keys
设置.ssh目录权限
$ chmod 700 -R .ssh

5、要保证.ssh和authorized_keys都只有用户自己有写权限。否则验证无效。(今天就是遇到这个问题,找了好久问题所在),其实仔细想想,这样做是为了不会出现系统漏洞。

我从20.60去访问20.59的时候会提示如下错误:

The authenticity of host '192.168.20.59 (192.168.20.59)' can't be established. RSA key fingerprint is 6a:37:c0:e1:09:a4:29:8d:68:d0:ca:21:20:94:be:18. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.20.59' (RSA) to the list of known hosts. root@192.168.20.59's password: Permission denied, please try again. root@192.168.20.59's password: Permission denied, please try again. root@192.168.20.59's password: Permission denied (publickey,gssapi-with-mic,password).

三、总结注意事项

1、文件和目录的权限千万别设置成chmod 777.这个权限太大了,不安全,数字签名也不支持。我开始图省事就这么干了

2、生成的rsa/dsa签名的公钥是给对方机器使用的。这个公钥内容还要拷贝到authorized_keys

3、linux之间的访问直接 ssh 机器ip

4、某个机器生成自己的RSA或者DSA的数字签名,将公钥给目标机器,然后目标机器接收后设定相关权限(公钥和authorized_keys权限),这个目标机就能被生成数字签名的机器无密码访问了

ssh-keygen的使用方法相关推荐

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

    这篇文章主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下 一.情景 公司刚上几台Linux,现在要把主机之间都能远程ssh免密码登陆. 二.原理 很简单,使用ssh-keygen ...

  2. linux git ssh 配置文件,git bash配置ssh 登录 Linux的方法

    1.首先在 Linux 服务器上生成公钥和私钥文件,默认的存放目录在~/.ssh下. ssh-keygen 可以将密码留空,这样之后就可以免密码登录. 2.将私钥文件拷贝到本机. scp root@1 ...

  3. 在Linux系统下更改或更新SSH密钥密码的方法

    本文介绍如何在Linux系统下更新或更改SSH密钥密码,也适用在Unix系统中.SSH密钥通常用于向某些信息系统的用户进行身份验证,SSH密钥本身是私钥,使用从密码短语导出的对称加密密钥进一步加密私钥 ...

  4. SSH启动失败解决方法

    SSH启动失败解决方法 参考文章: (1)SSH启动失败解决方法 (2)https://www.cnblogs.com/setevn/p/7845987.html 备忘一下.

  5. ssh远程执行命令 linux,Linux下使用SSH远程执行命令方法收集

    说明:可以做SSH免密登录之后执行,这样可以省去每次执行输入密码的提示. 对于简单的命令: 如果是简单执行几个命令,则: ssh user@remoteNode "cd /home ; ls ...

  6. ssh免密登录方法不生效?Authentication refused: bad ownership or modes for directory

    机器A通过ssh登录机器B,方法有两种: 1.密码方式 2.密钥方式: 两种方式同时开启的时候,优先使用密钥方式. 密钥登录方式的配置方法是,首先在登录机器B上创建文件authorized_keys( ...

  7. ssh不能进入save方法_如何 SSH 登录到 Linux 上的特定目录

    你是否遇到过需要 SSH 登录到远程服务器并立即 cd 到一个目录来继续交互式作业?你找对地方了!这个简短的教程描述了如何直接 SSH 登录到远程 Linux 系统的特定目录.而且不仅是 SSH 登录 ...

  8. SSH常见问题及其解决方法

    SSH是Linux中的基础服务,作为IT从业者,基本上每天都要SSH连接到服务器中,从事各种各样的工作.作为这样基础的不能再基础的服务,一旦出现问题,影响也是巨大的,连不上就无法对服务器进行配置和更改 ...

  9. linux ssh复制粘贴,Linux下SSH Session复制功能实现方法

    特别感谢阿干同学的邮件分享. 详细方法 复制代码代码如下: Linux/mac下,在$HOME/.ssh/config中加入 Host * ControlMaster auto ControlPath ...

  10. ssh连接超时解决方法

    ssh连接超时,主要有以下三种方法来解决: 1.修改server的/etc/ssh/sshd_config,添加下面两个选项: ClientAliveInterval 60 //server每隔60秒 ...

最新文章

  1. Linux-CentOS 查看(监控)服务器网卡流量
  2. 自动解析复杂类的属性 实现归档或者进行序列化 反序列话的时候为每一个属性添加序列化方法的繁琐...
  3. java虚拟机启动参数分类详解
  4. 自然语言处理期末复习(6)话题模型
  5. 杂项-权限管理:RBAC
  6. 介绍自己的一个Android插桩热修复框架项目QuickPatch
  7. OpenCV入门及应用案例:手把手教你做DNN图像分类
  8. noise函数的使用
  9. (组合数学笔记)递推关系小结及典型题分析
  10. 做自媒体的目的是让人记住你
  11. Python3入门机器学习经典算法与应用 第3章 numpy矩阵运算
  12. 因使用盗版软件赔偿 869 万元 :CIO被开除、罚 15 万元
  13. 远程协助计算机是灰色的,win10远程协助,win10远程协助灰色
  14. 计算机显示器分辨率,现在电脑的主流显示器的分辨率一般是多大?
  15. 我喜欢的作品风格: 韩国daksha作品IF YOU GO AWAY…
  16. linux文件系统与日志文件
  17. Java Dad08
  18. React使用antd的警告findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of Wave
  19. 【回顾】基于树莓派下的4G模块(EC200U-CN)实现远程控制短信的收发
  20. 几种开源分词工具的比较

热门文章

  1. 软件工程师是青春饭吗?
  2. Jquery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
  3. 黑盒测试方法之错误推测法概述
  4. 主力吸筹猛攻指标源码_主力吸筹指标-(源码)
  5. 使用结构化思维,让工作有条不紊
  6. 珠海分销系统官网开发笔记:wordpress中使用canonical标签修复版
  7. 帝国 loginjs.php,帝国CMS页面JS调用登录状态loginjs.php中获取会员头像的方法
  8. 电赛总结(四)——波形发生芯片总结之AD9854
  9. 电脑版美食大战老鼠放置html,美食大战老鼠电脑版
  10. javascript学习网站