【实验目的】
    1)了解ssh工具的作用
    2)熟悉ssh配置过程
    3)理解ssh原理
【实验原理】
    SSH是目前比较可靠的专为远程登录会话和其他网络服务提供安全的协议。不同主机之间在进行通信时,一般都是需要输入密码进行验证, ssh免密码之后,只要通过指定主机地址和端口号就可以实现不同的计算机之间访问,并且在访问时不需要密码实现直接访问。ssh免密码登录主要采用算法有:对称加密算法和非对称加密算法。例如有两个linux系统simple01和simple02:
    1.首先在simple01上ssh-keygen -t rsa生成一对钥匙id_rsa(私钥)和id_rsa.pub(公钥)
    2.simple01执行ssh-copy-id simple02 在simple02端生成autherired_keys文件并保存了simple01机器上的id_rsa.pub信息内容
    3.simple01向simple02发送一个ssh请求
    4.请求在传输中带有simple01机器发送的指令信息,指令信息如(root@simple01+指令等)
    5.simple02接收到simple01的信息后,会根据(root@simple01+指令等)到authorized_keys中进行查找,如果没找到,向simple01返回需要输入密码,如果找到simple02会随机生成一个字符串,自已保存一份,然后使用simple01的公钥进行加密。
    6.将加密后的字符串发送给simple01
    7.simple01接收到加密后的字符串,用自已的私钥进行解密。
    8.将解密后的字符串再发送给simple02
    9.simple02接收simple01发送的解密后的字符串与原来的字符串进行比对,如果一致,可以免密码登录
【实验环境】
    本次环境是:centos6.5 + jdk1.7.0_79  + sshd
    工具包在/simple/soft目录下
    说明:ssh免密码登录配置一般是在两个主机之间,就像实验原理中simple01和simple02描述的两个主机之间配置免密码配置的过程。由于本实验是在单个主机上进行模拟配置两个主机之间的免密码登录,所以本实验就是通过单个主机自身配置免密码登录模拟2个主机之间的免密码登录。

【实验步骤】
    一、进入.ssh目录
        1.1 在linux系统的终端的任何目录下通过切换命令:cd ~/.ssh进入到.ssh目录下并通过pwd查看该目录路径。如图1所示

                          图1

1.2 查看.ssh目录下内容,执行命令ls 。此时该目录下没有任何文件和文件夹。 如图2所示

                          图2

 

   二、生成ssh免登录密钥
        2.1 在linux系统命令框的.ssh目录下执行命令:ssh-keygen -t rsa (连续四个回车),执行完上面命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)。如图3所示

                            图3

2.2 查看公钥和私钥内容,执行cat id_rsa 和 cat id_rsa.pub 。如图4所示

                         图4

三、将公钥拷贝到要免登录的机器上
        3.1 在simple上执行ssh-copy-id simple命令(相当于该主机给自身设置免密码登录,主机名视虚拟机实际主机名而定),根据提示输入yes并输入访问主机所需要的密码。(主机名请根据实际虚拟机的主机名,密码为Simplexue123),如图5所示

                         图5

3.2 在simple机器上切换到.ssh目录:cd ~/.ssh 。如图6所示

                         图6

3.3 查看.ssh目录下的内容,在.ssh目录下多个文件authorized_key其内容就是密码值,此时就可以直接访问simple了。如图7所示

                         图7

3.4 执行ssh simple命令,然后输入一次访问密码之后,以后再访问simple主机即可不用输入密码就连接到simple上。如图8所示

                         图8

Linux实验:ssh免密码配置的更多相关文章

  1. LINUX的ssh免密码配置

    本篇将介绍LINUX的ssh免密码配置. 本篇中的有三台主机: 192.168.1.110 master.com.cn  主机192.168.1.111 salver1.com.cn192.168.1 ...

  2. Linux远程登录ssh免密码配置方法(仅供参考)

    这篇文章主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下(http://www.0834-3659999.com) 一.情景 公司刚上几台Linux,现在要把主机之间都能远程ss ...

  3. Linux下SSH免密码登录

    转自:http://haitao.iteye.com/blog/1744272 ssh配置 主机A:10.0.5.199 主机B:10.0.5.198 需要配置主机A无密码登录主机A,主机B 先确保所 ...

  4. linux实现ssh免密码登录

    linux实现ssh免密码登录 本地系统执行 ssh-keygen -t rsa 命令,生成密钥文件 在相应的目录下查看生成的密钥文件,其中:id_rsa为私钥文件,id_rsa.pub为公钥文件 本 ...

  5. jenkins发布项目到远程主机上,配置linux使用SSH免密码登录

    一.首先要配置两台linux如何使用SSH免密码登录,这样脚本执行scp命令以及远程执行脚本都不需要输入密码: A为本地主机(即用于控制其他主机的机器,jenkins服务器) ; B为远程主机(即被控 ...

  6. Mac下到Linux主机ssh免密码登录

    最近忙得忘乎所以,写篇博客放松放松,RT,直接上命令好了 # Local ssh-keygen -t rsa scp ~/.ssh/id_rsa.pub username@server:~/.ssh/ ...

  7. hadoop搭建杂记:Linux下ssh免密码登陆

    关于ssh免密码登陆的问题 关于ssh免密码登陆的问题 linux下可以用ssh-keygen来生成公钥/私钥对 ①生成id_rsa和id_rsa.pub公钥/私钥对,自动在~/.ssh下生成文件(亦 ...

  8. Linux下SSH免密码登录(转)

    搭建hadoop集群的时候一定会用到的就是SSH免密码登录 [hadoop@hadoop1 ~]$ ssh-keygen -t rsa Generating public/private rsa ke ...

  9. Jenkins进阶系列之——09配置Linux系统ssh免密码登陆

    ssh认证的完整描述:https://www.ibm.com/developerworks/cn/linux/security/openssh/part1/ 说明:点我去查看 今天我们只说生成ssh的 ...

随机推荐

  1. 基于Wiremock创建Mock Service平台(转)

    本文链接:https://blog.csdn.net/liuchunming033/article/details/52399397                                   ...

  2. php连接mysql8报错如何解决

    php版本为5.6,连接mysql8.0时报错,但是连接其他mysql8前的版本是正常的 原因可能是mysql8默认的使用密码认证方式不一样,mysql8.0默认使用caching_sha2_pass ...

  3. [LeetCode] 387. First Unique Character in a String 字符串的第一个唯一字符

    Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...

  4. mybatis中封装结果集常见示例

    1.返回一个对象 public interface EmployeeMapper { public Employee getEmpByMap(Map<String, Object> map ...

  5. LeetCode 150. 逆波兰表达式求值(Evaluate Reverse Polish Notation) 24

    150. 逆波兰表达式求值 150. Evaluate Reverse Polish Notation 题目描述 根据逆波兰表示法,求表达式的值. 有效的运算符包括 +, -, *, /.每个运算对象 ...

  6. JAVAWEB实现增删查改(图书信息管理)之修改功能实现

    首先通过点击index.jsp页面的修改按钮,获取该行的id:↓ 其次,跳转到updateBooks.jsp页面进行修改信息,页面代码如下:↓ <%@ page import="Boo ...

  7. Linux进程状态详解及状态转换

        学而不思则罔,思而不学则殆.    Linux下,进程状态有五种 : 运行态,可中断睡眠态,不可中断睡眠态,停止态和追踪态 运行态表示进程可执行或者正在执行, 可中断睡眠态表示进程被阻塞,等条 ...

  8. 解决python中的Non-UTF-8 code starting with ‘\xbs4’ in file错误

    出现错误如下图: 主要原因为编辑python脚本使用的编辑器编码有问题.我使用的编辑器是notepad++,由于没有做Python语言编辑配置,默认使用的是ANSI编码(右下角位置有编码格式),如下: ...

  9. Spring Cloud Zuul源码

    一.Zuul源码分析(初始化流程.请求处理流程)

  10. fastjson反序列化使用不当导致内存泄露

    分析一个线上内存告警的问题时,发现了造成内存告警的原因是使用fastjson不当导致的. 分析dump发现com.alibaba.fastjson.util.IdentityHashMap$Entry ...