SSH介绍及连接原理

Wesley13
• 阅读 339

SSH是Secure Shell Protocol的简写,由IETF网络工作小组(Network Working Group)指定;在进行数据传输之前,SSH先对联机数据包通过加密技术处理,加密后在进行数据传输。确保了传递的数据安全。

    SSH是专为远程登录会话和其他网络服务提供的安全性协议。利用SSH协议可以有效的防止远程管理过程中的信息泄露问题,在当前的生产环境运维工作中,绝大多数企业普遍采用SSH协议来代替传统不安全的远程联机服务软件,如telnet(telnet 端口:23 非加密)等;

    在默认状态下,SSH服务主要提供两个服务功能:一个是提供类似telnet远程联机服务器的服务,即上面提到的SSH服务;另一个是类似FTP服务的sftp-server,借助SSH协议来传输数据的,提供更安全的SFTP服务(vsftp,proftp)。

    特别提醒:SSH客户端(ssh命令)还包含一个很有用的远程安全拷贝命令scp,也是通过ssh协议工作的。

小结:

    1.SSH是安全的加密协议,用于远程连接Linux服务器

    2.SSH默认端口为22,安全协议版本SSH2,除了2之外还有SSH1(漏洞)

    3.SSH服务端主要包含两个服务功能SSH远程连接,SFTP服务

    4.Linux SSH客户端包含ssh远程连接命令,已经远程拷贝scp命令等

[root@m01 ~]# rpm -aq openssh openssl

openssh-5.3p1-111.el6.x86_64  ##远程连接

openssl-1.0.1e-42.el6.x86_64   ##加密

另外,SSH2同时支持RSA和DSA密钥,但是SSH1仅支持RSA密钥。

SSH2.x

在SSH1.x的联机过程2中,当Server接受Client端的private key后,就不在针对该次联机的key pair进行效验。此时若有恶意黑客针对该联机的key pair对插入恶意的程序代码时,由于服务端不会再效验联机的正确性,因此可能会接收该程序代码,从而造成系统被黑掉的问题。

为了改正这个缺点,SSH version2 多加了一个确认联机正确性的Diffle-HEllman机制,在每次数据传输中,server都会以该机制检查数据的来源是否正确,这样,可以避免联机过程中被插入恶意程序代码的问题,也就是说,SSH version 2 是比较安全的。

由于SSH1协议本身存在较大安全问题,在当前的Centos5.x系统ssh服务端的配置,默认就是配置只支持SSH2的,我们只需要在ssh客户端连接时指定通过ssh2协议连接即可。

点赞
收藏
评论区
推荐文章
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
技术小男生 技术小男生
5个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
5个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
刚刚好 刚刚好
5个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
Wesley13 Wesley13
1年前
ubuntu下允许root用户ssh远程登录
SSH服务器,可以通过SSH协议来访问远程服务器,代替telnet和ftp。但是ubuntu默认是不启用root用户也不允许root远程登录的。所以需要先启用root用户启用root用户:sudopasswdroot      //修改密码后就启用了。安装OpenSSHserver:1\.使用apt命令安装opensshserver
Wesley13 Wesley13
1年前
SSH(远程登录)
在linux中SSH服务对应两个配置文件:!(https://oscimg.oschina.net/oscnet/08d4b27dffc261d101b8c21c376a0c1e23a.png)ssh特点:在传输数据的时候,对文件加密后传输。ssh作用:为远程登录会话和其他网络服务提供安全性协议。ssh小结
Wesley13 Wesley13
1年前
SSH概述与配置文件说明
一、什么是SSH?简单说,SSH是一种网络协议,用于计算机之间的加密登录。在出现SSH之前,系统管理员需要登入远程服务器执行系统管理任务时,都是用telnet来实现的,telnet协议采用明文密码传送,在传送过程中对数据也不加密,很容易被不怀好意的人在网络上监听到密码。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可
Easter79 Easter79
1年前
ssh 登录出现的几种错误以及解决办法
首先、确保server端的ssh服务是开的(serviceshhdstart)然后在client端输入:sshusrname@serverip(远程登录)scpfilenameusrname@serverip:/URL(远程传输)常出现的问题:问题一ssh登录的时候链接端口失败提示(1):\ssh192.16
Stella981 Stella981
1年前
Linux单向免密登录最简配置
前置:两台linux,A和B需求:A免密登录B步骤:root用户登录A输入命令:sshkeygen之后一路按回车完成后进行公钥分发命令:sshcopyidi/root/.ssh/id\_rsa.pubB的IP示例:sshcopyidi/root/.ssh/id\_rsa.pub192.168.1
Wesley13 Wesley13
1年前
6、SSH远程管理服务实战
1.SSH基本概述SSH是一个安全协议,在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输。确保了数据传输安全。那SSH服务主要功能有哪些呢?1.提供远程连接服务器的服务、2.对传输的数据进行加密那么除了SSH协议能提供远程连接服务,Telnet也能提供远程连接服务,那么分别的区别是什么呢?ssh服务会对传输数据
Stella981 Stella981
1年前
Linux应急响应(一):SSH暴力破解
0x00前言SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全。SSH口令长度太短或者复杂度不够,如仅包含数字,或仅包含字母等,容易被攻击者破解,一旦被攻击者获取,可用来直接登录系统,控制服务器所有权限。0x01应急场景某天,网站