1、SSH介绍:

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

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

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

  SFTP:加密的FTP

(1)ssh 是安全的加密协议,用于远程连接服务器。

(2)默认端口是22,安全协议版本 ssh2。

(3)服务端主要包含两个服务功能:ssh 远程连接,SFTP 服务。

(4)ssh客户端包含 ssh 连接命令,以及远程拷贝 scp 命令等。

2、SSH 结构:

  SSH 服务由服务端软件 OpenSSH和客户端组成。常见的有ssh(linux)、CRT、Putty、xshell等。SSH 服务默认使用 22 端口提供服务,它有两个不兼容的 SSH 协议版本,分别是 1.x 和2.x

  OpenSSL 负责加密。

  SSH 服务端是一个守护进程(demon),它在后台运行并相应来自客户端的连接请求。SSH 服务端的进程名为 sshd,负责实时监听远程 SSH 客户端的连接请求,并进行处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接等。这个 SSH 服务就是我们前面基础系统优化中保留开机自动的服务之一。

  SSH 客户端包含 SSH程序以及像scp(远程拷贝)、slogin(远程登录)、sftp(安全FTP文件传输)等应用程序。

3、SSH 的工作机制

  本地的 ssh 客户端先发送一个连接请求到远程的 ssh 服务端,服务端检查连接的客户端发送的数据包和IP地址,如果确认合法,就会发送秘钥给SSH的客户端,此时,客户端本地再将秘钥发回给客户端,自此连接建立。SSH 1.x和SSH 2.x在连接协议上有一些安全方面的差异。

4、SSH 加密技术:

  简单的说,SSH 加密技术就是将人类可以看得懂的数据,通过一些特殊的程序算法,把这些数据变成杂乱的无意义的信息,然后通过网络进行传输,而当到了目的地后,在通过对应的解密算法,把传来的加密的数据信息解密成加密前的可读的正常数据。

  每一台SSH 服务器主机都可以使用 RSA 加密方式来产生一个 1024-bit 的RSA  Key,这个 RSA 的加密方式就是用来产生公钥与私钥的算法之一。

  1.x 版本只支持 RSA。

  当SSH 服务启动时,就会产生一个 768-bit 的临时公钥(sshd_config 配置文件中 ServerKeyBits 768)存放在 Server 中。

5、面试题:给定一个端口,确定是哪个服务。

lsof  -i  :端口号    #例:lsof  -i  :  查看22端口属于哪个服务

6、两个ssh文件。

  sshd_config  服务端

  ssh_config    客户端

7、安装 SSH 服务:

  Centos6里默认安装 SSH 的服务端, 但是需要手动安装 SSH的客户端。

  服务端:192.168.3.137

  客户端:192.168.3.138

yum install -y openssh-clients    #安装ssh服务的客户端
ssh -p22 root@192.168.3.138    #通过192.168.3.137连接对端,指定端口22(默认端口,可更改),
                     中间需要输入对端密码。

8、小结: 

  (1)切换到别的机器 ssh -p22 user@ip

  (2)到其他机器执行命令(不会切到机器上) ssh -p22 user@ip  命令

  (3)第一次连接的时候,本地会产生一个秘钥   ~/.ssh/known_hosts

9、ssh 客户端附带的远程拷贝 scp 命令:

  (1)推:本地将文件推到对端。

scp -P22 /本地文件路径 user@ip:/对端存放路径    #scp 指定端口用 P
scp -p22 /data/abc.txt root@192.168.3.138:/file

通过对端查看:

  (2)拉:对端将本地文件拉到对端下。

scp -P22 user@ip:/对端文件位置  /本地存放位置    #推、拉只是将源目调换位置
scp -P22 root@192.168.3.138:/file/a.org /data

10、SSH 服务附带的sftp 功能服务:

  基于ssh ,加密传输。

sftp  -oPort= user@对端ip    #-oPort 指定端口号
sftp -oPort= root@192.168.3.138

  使用 put 进行文件传输,在对端查看:

  下载对端的文件,使用 get

  上传--传到对方的家目录

  下载--下载到当前目录下 --

  sshd 守护进程,开机要自启动

SSH服务协议的更多相关文章

  1. SSH服务详解

    第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定:在进行数 ...

  2. 【转】SSH服务详解

    [转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...

  3. ssh软件及命令的使用

    常用软件安装及使用目录 第1章 ssh常用用法小结 1.1 连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以 ...

  4. (转)SSH服务详解

    SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...

  5. Linux下 SSH远程管理服务

    第1章 SSH基本概述 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定 在进 ...

  6. centos7服务搭建常用服务配置之一:SSH

    目录 1 SSH服务协议 1.1 ssh服务协议说明 1.2 ssh服务工作机制 1.3 ssh加密技术说明 1.3.1 ssh实现安全链接建立,利用要是和锁头 1.3.2 ssh加密算法 1.4 s ...

  7. linux系统安全设置策略

    1.检查是否设置口令长度至少8位,并包括数字,小写字符.大写字符和特殊符号4类中至少2类. 在文件/etc/login.defs中设置 PASS_MIN_LEN 不小于标准值 修改/etc/pam.d ...

  8. SSHD

    SSH基本概述 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定在进行数据传输之前,S ...

  9. 关于ssh的一篇很好的文章

    源地址:http://www.w3hacker.com/?p=156   ssh-agent的manual写得倒是挺详细,可看了好几次都没怎么搞明白.08年在网上找到了非常好的一篇文章,An Illu ...

随机推荐

  1. java中存储机制堆栈。

    一.java的六种存储地址及解释 1) 寄存器(register):这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部.但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配.你不 ...

  2. jquery ajax到servlet出现中文乱码(utf-8编码下)

    个人遇到的该问题有两大类: 第一类很普遍,就是jsp页面编码没有规定,servlet中接收参数没有转码,response没有使用setContentType()和setCharacterEncodin ...

  3. 大数据平台搭建 - cdh5.11.1 - hadoop集群安装

    一.前言 由于线下测试的需要,需要在公司线下(测试)环境搭建大数据集群. 那么CDH是什么? hadoop是一个开源项目,所以很多公司再这个基础上进行商业化,不收费的hadoop版本主要有三个,分别是 ...

  4. JavaScript中的this到底是怎样的?

    this是困惑JavaScript开发者的一大‘毒瘤’,在开发过程中,但凡用到this的时候,我们都会很头疼,那么这个this在JavaScript中到底是怎么样的?身为一个前端coder,这是一个避 ...

  5. Java第三次作业第四题

    4. [问题描述]读取一个文本文件in.txt,然后将这个文件的内容,反序写到另一个文件out.txt中. [输入形式]从文件in.txt中读信息. [输出形式]反序内容写入out.txt文件中. [ ...

  6. 自定义View入门-绘制基础(1)

    ### 前言 说道自定义View,我们一定会想到,自定义View的绘制流程 - 测量阶段(measure) - 布局阶段(layout) - 绘制阶段(draw) 我们看到的一些炫酷的view效果,都 ...

  7. jvm 内存溢出

    堆内存溢出 堆内存中存在大量对象,这些对象都有被引用,当所有对象占用空间达到堆内存的最大值,就会出现内存溢出OutOfMemory:Java heap space 永久代溢出 类的一些信息,如类名.访 ...

  8. EasyJson 发布

    JSON库很常用了,现在开源的JSON库也有很多.但是我们仍然面临下列问题 1)时不时的爆出这个Json库出现漏洞,那个json库出现漏洞.一旦出现漏洞只能升级,想切换JSON都不成. 2)一个项目中 ...

  9. webstorm中关闭烦人Eslint语法检查

    打开许久没打开的webstrom,以前关闭的配置不知道怎么又乱了,react项目到处报错,真是没法忍. 关闭eslint位置:File-->Setting-->Languages& ...

  10. 品Spring:SpringBoot发起bean定义注册的“二次攻坚战”

    上一篇文章整体非常轻松,因为在容器启动前,只注册了一个bean定义,就是SpringBoot的主类. OK,今天接着从容器的启动入手,找出剩余所有的bean定义的注册过程. 具体细节肯定会颇为复杂,同 ...