SSH服务详解

第1章 SSH服务

1.1 SSH服务协议说明

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

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

在默认状态下,SSH服务主要提供两个服务功能:

一是提供类似telnet远程联机服务器的服务,即上面提到的SSH服务。

另一个是类似FTP服务的sftp-server,借助SSH协议来传输数据的.提供更安全的SFTP服务(vsftpproftp)

1.1.1 ssh远程连接排错过程

1.2 SSH加密技术说明

简单的说,SSH加密技术就是将人类可以看得懂的数据,通过一些特殊的程序算法,把这些数据变成杂乱的无意义的信怠,然后,通过网络进行传输,而当到了目的地后,在通过对应的解密算法,把传过来的加密的数据信怠解密成加密前的可读的正常数据。因此,当数据在互联网上传输时即使被有心的黑客监听窃取了,也很难获取到真正黑要的数据。

当前,网络上的数据包加密技术一般是通过所谓的一对公钥与私钥(PublickeyandPivatekey)组合成的密钥对进行加密与解密操作。如下图,A-Server要给B_Client传数据,首先会通过本地的公钥加密后再到发到网络上传输。而加密的数据到达B_Client端后,再经由B_Client本地的私钥将加密的数据解密出来。由于在intemet上传输过程中的数据是加密过的,所以,传输的数据内容一般来说是比较安全的。

 

图1-1 ssh认证连接的过程

1.2.2 ssh实现安全链接建立,利用要是和锁头

1. 钥匙=私钥 锁头=公钥,私钥可以解密公钥

2. 公钥可以再网络中传输,私钥再本地主机保存

1.2.3 ssh加密算法

v1漏洞: 密钥不更换

v2 定期更换密钥

利用Diffie-Hellman机制定期更新密钥

1.3 ssh知识要点

* ssh是安全的加密协议,用于远程链接linux服务器

* ssh 默认端口是22,安全协议版本sshv2,出来2之外还有1(有漏洞)

* ssh服务端主要包括两个服务功能 ssh远程链接和sftp服务

* linux ssh 客户端包括ssh 远程链接命令,以及远程拷贝scp命令

1.4 SSH服务软件详细说明

1.4.1 什么是ssh服务

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

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

ssh的工作机制大致是本地的ssh客户端先发送一个连接请求到远程的ssh服务端,服务端检查连接的客户端发送的数据包和IP地址,如果确认合法,就会发送密钥给 SSH的客户端,此时,客户端本地再将密钥发回给服务端,自此连接建立。

1.4.2 ssh软件安装

客户端

[root@nfs01 ~]# rpm -qf `which ssh`

openssh-clients-5.3p1-122.el6.x86_64

服务端软件

[root@nfs01 ~]# rpm -qf `which sshd`

openssh-server-5.3p1-122.el6.x86_64

1.4.3 openssh-clinets 软件的主要内容:

[root@nfs01 ~]# rpm -ql openssh-clients

/etc/ssh/ssh_config         ---ssh客户端配置文件

/usr/bin/.ssh.hmac

/usr/bin/scp                  ---远程复制命令

/usr/bin/sftp                 ---远程文件传输服务

/usr/bin/slogin              ---远程登陆命令

/usr/bin/ssh                  ---ssh远程登陆管理主机

/usr/bin/ssh-add

/usr/bin/ssh-agent

/usr/bin/ssh-copy-id        ---ssh服务分发公钥命令

/usr/bin/ssh-keyscan

1.4.4 openssh-server 软件的主要内容

[root@nfs01 ~]# rpm -ql openssh-server

/etc/rc.d/init.d/sshd      #ssh服务启动脚本

/etc/ssh/sshd_config       #ssh服务配置文件

/etc/sysconfig/sshd        #ssh创建密钥有关

/usr/sbin/.sshd.hmac       #ssh加密算法有关文件

/usr/sbin/sshd             #ssh服务进程启动命令

注意:使用sshd采用绝对路径进行启动

[root@test ~]# sshd

sshd re-exec requires execution with an absolute path

1.5 ssh服务配置文件说明:

01. 配置文件中所有注释信息,表示默认参数配置

02. 配置文件中#空格 后面内容表示说明信息

              #参数 表示配置参数信息

03. 配置文件参数信息修改后,一旦变为注释,即还原为默认配置

1.5.1 ssh服务的配置文件路径

vim  /etc/ssh/sshd_config

修改SSH服务的运行参数,是通过修改配置文件/etc/ssh/sshd_config实现的。

一般来说SSH服务使用默认的配置已经能够很好的工作了,如果对安全要求不高,仅仅提供SSH服务的情况,可以不需要修改任何配置。

1.5.2 配置文件中常用配置说明

[root@test ~]# vim /etc/ssh/sshd_config

#       $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $

 

# This is the sshd server system-wide configuration file.  See</

  • 8
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值