SSH协议

目录

一.远程连接

1.1 Telnet 

1.2 SSH

1.2.1 ssh服务端主要包括两个服务功能

1.2.2 SSH协议主要由三个层次组成

1.3 openSSH

1.3.1 SSHD

1.3.2 sshd服务端后台程序的作用

1.3.3 提供的客户端工具

1.4 ssh远程登录方式

1.4.1 利用主机名登录

1.4.2 格式

1.4.3 扩展—警告信息

1.5 配置openSSH服务端安全机制

1.5.1 监听port端口

1.5.2 监听IP地址ListenAddress

1.5.3 Protocol 2协议

1.5.4 UseDNS

1.5.6 LoginGraceTime

1.5.7 PermitRootLogin

1.5.8 PasswordAuthentication

1.5.9 PermitEmptyPasswords

1.5.10 PrintLastLog

1.5.11 MaxAuthTries

1.5.12 AllowUsers

1.5.13 拓展

二. 密钥对验证的SSH体系

2.1 密码体系

2.1.1 对称加密

2.1.2 非对称(公钥)加密

2.1.3  单向加密(也称为不可逆加密或哈希)

2.1.4 认证协议

2.2 配置密钥对验证

2.2.1 普通用户密钥对登录

1.在客户端创建密钥对 rsa密钥

2.将公钥文件上传至服务器非root用户

3.客户端发送testmaster用户公钥

4.服务器要求只能普通用户登录,并只能用密钥登录

5.在客户端使用密钥对验证

6.在客户机设置ssh代理功能,实现免交互登录

2.3 使用SSH客户端工具

2.3.1 scp复制

1. 本地文件复制到服务器

2. 复制服务器的文件到本地

3. 本地目录复制到服务器

2.3.2 sftp传输 

1. 上传、下载

3. OpenSSH升级

三.TCP Wrappers

1.概念

2.工作原理

3.语法格式

4.实例

四.总结

1.SSH

2.客户端免密登陆远程主机

3.对系统安全方面的防护

思考


.远程连接

常见的远程连接工具:Xshell finalshell putty seruct MobaXterm

生产环境更多使用的是XshellMobaXterm

1.1 Telnet 

终端仿真协议

基于文本的双向交互式通信服务

不提供加密或安全性

所有的 telnet 通信都是明文传输的

利用telnet登录

第一次失败因为未修改client/etc/securetty

/etc/securetty 文件用于控制哪些终端(tty)设备允许 root 用户登录。这个文件包含了一个列表,列出了允许 root 用户登录的 tty 设备名。如果某个 tty 设备名不在这个列表中,那么 root 用户就不能从那个设备登录。

对于 telnet,情况有些特殊。telnet 是一个网络协议,它并不直接关联到某个特定的 tty 设备。然而,当 telnet 客户端连接到服务器时,它通常会在服务器上启动一个伪终端(pseudo-terminal),该伪终端有一个关联的 tty 设备。

因此要么加入

pts/1

要么将文件改名忽略该控制

Ctrl+]进入命令模式

1.2 SSH

是一种安全通道协议

对通信数据进行了加密处理,用于远程管理

对数据进行压缩

1.2.1 ssh服务端主要包括两个服务功能

ssh远程链接和sftp服务

1.2.2 SSH协议主要由三个层次组成

传输层(SSH-Transport Layer):这是SSH协议的基础,负责建立加密的通道。

身份验证层(SSH-Authentication Layer):在身份验证层,SSH提供了多种身份验证机制,包括基于密码的认证、基于公钥的认证和基于Kerberos的认证等。

应用层(SSH-Application Layer):在应用层,SSH为用户提供了一个安全的远程命令执行环境。用户可以通过SSH客户端发送命令到远程服务器,并接收执行结果。

1.3 openSSH

OpenSSH是实现SSH协议的开源软件项目,适用于各种UNIX、 Linux 操作系统。提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务。

1.3.1 sshd

据上面来说,OpenSSH提供的是服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据。

默认使用的是TCP的22端口,安全协议版本sshv2。

默认配置文件是/etc/ssh/sshd_config

ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于前者是针对客户端的配置文件,后者则是针对服务端的配置文件。

而提供的服务端后台程序则是sshd

1.3.2 sshd服务端后台程序的作用

1.监听连接请求:sshd是OpenSSH的服务端,它负责监听远程连接请求。当客户端尝试连接到服务器时,sshd会接受并处理这些连接请求。

2.验证客户端身份:sshd会验证尝试连接的客户端的身份,以确保只有经过授权的用户才能访问服务器。

3.提供加密通信:sshd使用SSH协议提供加密的通信通道,确保在服务器和客户端之间传输的数据是安全的。

4.处理远程命令和文件传输:一旦连接建立,sshd会处理客户端发送的远程命令和文件传输请求。

1.3.3 提供的客户端工具

1.远程登录:OpenSSH的客户端工具(如ssh命令)允许用户从本地计算机远程登录到另一台计算机。在登录过程中,它会与sshd进行通信,并使用加密的方式传输密码和会话数据。

2.文件传输:除了远程登录外,OpenSSH的客户端工具还提供了文件传输功能。例如,scp命令用于在本地和远程计算机之间复制文件,而sftp命令则提供了一个类似于FTP的文件传输协议,但使用的是SSH加密通道。

3.密钥管理:OpenSSH的客户端工具还包括密钥管理工具,如ssh-keygen命令用于生成密钥对,ssh-agent和ssh-add命令用于管理密钥的缓存和认证。

1.4 ssh远程登录方式

ssh [远程主机用户名] @[远程服务器主机名或IP地址] -p port

1.4.1 利用主机名登录

编辑/etc/hosts文件加入映射

1.4.2 格式

ssh -l [远程主机用户名] [远程服务器主机名或IP 地址] -p port

-l :-l 选项,指定登录名称。

-p:-p 选项,指定登录端口

1.4.3 扩展—警告信息

在工作中,需要SSH登陆到别的Linux主机上去,但有时候SSH登陆会被禁止,并弹出如下类似提示:

The authenticity of host '192.168.10.9 (192.168.10.9)' can't be established.

  • 14
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值