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. 详解ruby的attr_accessor和cattr_accessor

    原文地址:http://lee2013.iteye.com/blog/1098914 1. attr_accessor的用法相当简单, 就相当于getter和setter,看一个类就知道怎样用了: c ...

  2. Tornado异步IO

    Tornado提供了强大的异步IO机制,提高了服务器的响应能力. @tornado.web.asynchronous tornado默认在处理函数返回时关闭链接,@tornado.web.asynch ...

  3. httpSession的正确理解

    关于HttpSession的误解实在是太多了,本来是一个很简单的问题,怎会搞的如此的复杂呢?下面说说我的理解吧: 一个session就是一系列某用户和服务器间的通讯.服务器有能力分辨出不同的用户.一个 ...

  4. sql中非存储过程定义参数并使用

    DECLARE @dt datetime SET @dt=GETDATE()--1.短日期格式:yyyy-m-d SELECT REPLACE(CONVERT(varchar(10),@dt,120) ...

  5. 转载:sql用逗号连接多张表对应哪个join?

    http://blog.csdn.net/huanghanqian/article/details/52847835 四种join的区别已老生常谈: INNER JOIN(也可简写为JOIN): 如果 ...

  6. 【转载&&干货】Noip应试技巧

    NOIP应试技巧 如何看待别人的经验? 我想大家都有台上的学长滔滔不绝,但是自己在台下漠不关心,或是老师考试前的叮嘱说完一会儿功夫就忘记了的经历吧.所以,有可能我接下来的所说的话,一到考场上就全部忘记 ...

  7. 微服务与DevOps关系

    随着IT技术的不断发展,从传统的IT建设模型逐步向新型IT建设模型过渡,建设模式的改变,必然影响应用系统的全生命周期.应用系统的建设经过单体应用.SOA应用.逐步走向微服务应用,至于何为单体应用.SO ...

  8. node、npm的安装和环境变量的配置

    在使用node过程中踩过好几次坑,这次记录下来,以防以后在掉下去. 用npm安装nrm模块后,输入nrm 提示 “nrm”不是内部或外部命令,也不是可运行的程序.我就奇怪了,安装成功了,怎么还提示不是 ...

  9. Android 退出整个应用程序

    我们在写android应用程序时,经常会遇到想退出当前Acitivity,或者直接退出应用程序.我之前的一般操作是按返回键,或者直接按home键直接返回,其实这两种操作都没有关闭当前应用程序,没有释放 ...

  10. js-权威指南学习笔记5

    第六章 对象 1.对象的方法通常是继承的属性.这种原型式继承是JS的核心特征. 2.除了名字和值之外,每个属性还有一些与之相关的值,称为属性特性——可写/可枚举/可配置.数据属性的四个特性——值.可写 ...