ssh原理:

ssh是一种专为远程登陆会话和其他网络服务提供安全性的协议,主要用于远程登陆。

ssh采用公钥加密,在远程连接时,远程主机接收到用户的登录请求,将自己的公钥发送给用户,用户使用这个公钥将登录密码加密后发送给远程主机,远程主机再用自己的私钥解密,密码正确则同意用户登录。

但是,整个过程还是存在一个问题,就是用户并不知道,给自己发送公钥的远程主机是否是自己想要登录的远程主机,也就是说存在中间人攻击,当第三方截获了用发起的登录请求后,可冒充远程主机发送一个伪造的公钥给用户(SSH协议的公钥是没有证书中心公证的),于是接下来的整个过程就变成了用户和第三方的通讯,那么第三方便可从用户那儿获取远程主机的登录密码,然后再用这个密码登录远程主机

于是ssh又加入了一项公钥指纹的认证,在用户第一次登录远程主机时,会收到这样一段信息:

他的意思是,无法确认远程主机的真实性,但知道它的公钥指纹,是否要继续连接,这里的公钥指纹是采用RSA算法加密后,又做了一次md5加密:

通常,远程主机会在自己的网站上贴出公钥指纹,用户可以进行核对,在确认后输入yes,会让你输入登录密码,密码正确就成功登录了

实验环境:

VM虚拟机(CentOS7,CentOS Server)

将CentOS7和CentOS Server的网络适配器改为桥接模式,在桥接模式下,虚拟机类似于局域网中的一台独立主机,可以访问内网中的任何一台机

在CentOS7和CentOS Server中输入ip addr查看ip,发现ens33网卡没有inet属性,于是打开ens33网卡的配置文件:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

将onboot=“no”改为“yes”(默认情况下CentOS7是不启用网卡的)

重启网络服务:sudo service network restart

此时用物理主机ping虚拟机IP可以ping通:

两台虚拟机可以相互ping通后,在CentOS7中安装ssh:

yum install openssh-server -y

然后用命令ssh 主机名@CentOS Server_IP或者ssh CentOS Server_IP远程登录CentOS Server

当然还有一种推荐方式:可以在windows下用Xshell访问CentOS7或CentOS Server

参考文献:

http://www.linuxidc.com/Linux/2016-03/129204.htm

http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html

http://www.linuxidc.com/Linux/2017-03/141333.htm

ssh连接CentOS7服务器的更多相关文章

  1. ssh连接linux服务器只显示-bash-4.1#不显示路径解决方法

    ssh连接linux服务器只显示-bash-4.1#不显示路径时,我们只需要修改  ~/.bash_profile文件,如果不存在这个文件,那么新建一个,增加内容  export PS1='[\u@\ ...

  2. Mac下ssh连接远程服务器时自动断开问题

    在mac下使用securecrt通过ssh连接远程服务器时,总会一段时间没有动作后,ssh被自动断开.在windows下用xmanager貌似没有遇到过这个问题. 在网上找了解决方法如下: 客户端配置 ...

  3. [转]学习win10的bash使用ssh连接远程服务器

    1. 前言 微软已经在Win10一周年更新预览版中加入了Ubuntu Bash命令支持,相当于一个小型的linux系统,本来连接远程服务器的话,要使用putty啥的,现在可以用这个直接连接,我来讲讲步 ...

  4. Python ssh连接Linux服务器报Incompatible ssh peer (no acceptable kex algorithm) 解决方法

    python通过ssh连接linux服务器,部分服务器出现如下异常 03:50:48.725 FAIL ftp operation failed, Incompatible ssh peer (no ...

  5. 使用SSH连接AWS服务器

    使用SSH连接AWS服务器 一直有一台AWS云主机,但是之前在Windows平台都是使用Xshell连接的,换到Ubuntu环境之后还没有试,昨天试了一下,终于使用SSH连接成功了,这里记录一下步骤: ...

  6. Mac使用SSH连接远程服务器

    1. 终端通过 ssh 连接远程服务器 ssh -p 36622 root@localhost 2. 文件上传下载 上传 scp 下载 scp 3. 客户端 FinalShell(推荐) FileZi ...

  7. mac通过自带的ssh连接Linux服务器并上传解压文件

    需求: 1:mac连接linux服务器 2:将mac上的文件上传到linux服务器指定位置 3:解压文件 mac上使用命令,推荐使用 iterm2 .当然,也可以使用mac自带的终端工具. 操作过程: ...

  8. Python实现SSH连接远程服务器

    首先需要安装paramiko模块 #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import paramiko ssh = p ...

  9. VsCode通过SSH连接远程服务器开发

    前言 nil 正文 安装插件 安装VsCode官方插件 Remote - SSH Remote - SSH: Editing Configuration Files WSL(远程桌面连接需要Remot ...

随机推荐

  1. 精度更高的double类型计算工具类(借助BigDecimal类型)

    /** * 提供精確的加法運算 * @param args */ public static double add(double v1, double v2) { BigDecimal b1 = ne ...

  2. 三种数据库访问——Spring JDBC

    本篇随笔是上两篇的延续:三种数据库访问——原生JDBC:数据库连接池:Druid Spring的JDBC框架 Spring JDBC提供了一套JDBC抽象框架,用于简化JDBC开发. Spring主要 ...

  3. Json递归解析实例

    最近遇到包含多层的Json字符串解析的问题,查了一些帖子,不能很好解决.看了下帮助文档,用下面方法解决. 上代码 Maven 库 <!-- https://mvnrepository.com/a ...

  4. 本地启动activemq,报错解决

    本地启动activemq时,报错.可以看到是5672端口被占用.在网上查了各种资料,有说是杀掉进程的,有说是禁用Internet Connection Sharing (ICS)服务的,楼主试了都没生 ...

  5. J2EE企业级应用架构发展

    一. 准备工作 1. 本文参考 J2EE企业级应用架构 二. 架构发展 1. 原始版 用户+服务器[单台虚拟机]+数据库[mysql或者oracle],用户访问量比较少. 特点:单节点[只有一台机器] ...

  6. 【学习笔记】--- 老男孩学Python,day12 函数名的应用,闭包,迭代器

    1, 函数名的应用,第一类对象 函数名可以像变量一样进行使用 1.赋值 def func(): print("你吃了么?") # print(func) # a = func # ...

  7. springMVC 简单应用

    一,controller FileController package com.dkt.controller; import java.io.File; import java.io.FileInpu ...

  8. listview更改选中时item背景色(转)

    默认情况下使用ListView背景色是黑色,选中item的高亮颜色是菊黄色,很多时候不得不自己定义背景色或者背景图 android:cacheColorHint="@android:colo ...

  9. 解决input为number类型时maxlength无效的问题

    使用input数字number类型的时候maxlength无效,假设需要控制输入数量为18,可以用以下方式: 无效: <input type="text"  maxlengt ...

  10. opencv3.2.0形态学滤波之膨胀

    //名称:膨胀 //日期:12月21日 //平台:QT5.7.1+opencv3.2.0 /* 膨胀(dilate)的含义: 膨胀就是求局部最大值的操作,就是将图像(或图像的一部分,A)与核 B 进行 ...