远程访问及控制——ssh

一.ssh远程管理

1.ssh的作用

是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令因此SSH协议具有很好的安全性。
在这里插入图片描述

2.ssh的组成结构

2.1传输层协议:ssh-trans组件

(1)作用
服务器认证,具有保密性、完整性
压缩功能
一般运行在tcp/IP的连接上,也可能用于其他可靠的数据流上。
(2)总概括
提供加密技术,密码主机认证,书记完整性,保护以及数据压缩
密码主机认证:基于主机,不能进行用户认证

2.2用户认证协议:ssh-userauth组件

(1)作用
向服务器提供客户端用户鉴别功能,运行在ssh-trans之上
开始执行用户认证,从底层协议接受会话标识符,认证私钥的所有权
(2)流程
root——认证用户是否存在,在服务端有没有这个用户——提示输入密码——认证密码是否和用户相符合——登陆成功

2.3连接协议:ssh-connect组件

多个加密隧道分成逻辑通道
运行在用户认证之上,提供了交互式的登录会话,远程命令的执行,转发tcp/IP的连接

2.4步骤机制

连接协议(提供交互模式登录)——用户认证(认证用户是否存在,密码和用户是否匹配)——传输协议(建立连接、数据加密,数据压缩)

二.ssh的相关配置

test1服务端:192.168.198.11
test2客户端:192.168.198.12

1.ssh的指定端口登录

(1)针对服务端的配置文件(一般改服务器即可)

[root@test1 /]# vim /etc/ssh/sshd_config

请添加图片描述
(2)重启

[root@test1 /]# systemctl restart sshd

(3)测试
命令测试:请添加图片描述
xshell测试
请添加图片描述
(4)test2客户端指定端口登录

[root@test2 /]# ssh -p 1314 root@192.168.198.11

请添加图片描述

2.远程复制功能

2.1远程复制文件

scp远程复制:将远程主机的文件复制到本机,从test2中的文件复制到test1中

[root@test2 /]# ssh -p 1314 root@192.168.198.11

请添加图片描述
请添加图片描述

2.2远程复制目录

请添加图片描述
请添加图片描述
请添加图片描述

3.ftp基于ssh

3.1特点

具有加密技术,传输效率比ftp低,但安全性更高,语法和ftp一致

3.2连接上传下载文件

(1)客户端test2登录服务端test1上传
从test2连接到test1,查看test1的文件,上传下载文件默认为当前目录存放

请添加图片描述
请添加图片描述
请添加图片描述

请添加图片描述
(2)客户端test2登录服务端test1下载
请添加图片描述
请添加图片描述

4.用户登陆限制

4.1特点

多个用户空格隔开,不可以允许和拒绝同时针对同一个用户
允许哪些用户:AllowUsers
拒绝哪些用户:DenyUsers

4.2限制配置

4.2.1允许、限制配置

(1)创建用户,设置密码
请添加图片描述
(2)修改配置文件
在test1中进入添加允许用户、允许用户从某个地址登录、限制用户

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

请添加图片描述
(3)重启

[root@test1 ~]# systemctl restart sshd

(4)测试
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

4.2.2指定拒绝用户从终端登录

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

请添加图片描述
请添加图片描述

三.构建密钥对验证的ssh体系(免密登录)

1.整体实现过程

在这里插入图片描述

2.什么是密钥

在ssh当中就是一个参数,明文转换为密文或者把密文转换为明文的算法输入中的参数。主要用于:

  • 用户账户登录
  • 密钥登录

2.1密钥的形式

(1)对称密钥
(2)非对称密钥

2.2密钥的配置文件

vim /etc/ssh/ssh_config

在这里插入图片描述

2.3 用rsa的方式加密实现免密登录

test1:客户端
test2:服务端
(1)创建rsa的的密钥对

[root@test1 ~]# ssh-keygen -t rsa

在这里插入图片描述

ls -a

在这里插入图片描述

(2)公钥文件传输给服务器test2

[root@test1 .ssh]# ssh-copy-id -i id_rsa.pub root@192.168.198.12

在这里插入图片描述
(3)刷新环境、生成并登录验证

[root@test1 .ssh]# ssh-agent bash
[root@test1 .ssh]# ssh-add
[root@test1 .ssh]# ssh root@192.168.198.12

在这里插入图片描述

2.4 用ecdsa的方式加密实现免密登录

test3:客户端
test4:服务端
(1)创建ecdsa的的密钥对

[root@test3 ~]# ssh-keygen -t ecdsa

在这里插入图片描述

[root@test3 ~]# ls -a

在这里插入图片描述

(2)公钥文件传输给服务器test4

[root@test3 .ssh]# ssh-copy-id -i id_ecdsa.pub root@192.168.198.14

在这里插入图片描述

(3)刷新环境、生成并登录验证

[root@test3 .ssh]# ssh-agent bash
[root@test3 .ssh]# ssh-add
[root@test3 .ssh]# ssh root@192.168.198.14

在这里插入图片描述

四.TCP Wrappers 概述

1.TCP Wrappers的作用

相当于防火墙,但是只针对TCP的服务,也针对的是TCP服务程序的端口

2.TCP Wrappers的保护原理

请添加图片描述

3.保护机制的实现方式

方式1:通过tcpd程序对其他服务程序进行包装。
方式2:由其他服务程序调用libwrap.so.*链接库。

4.访问控制策略的配置文件

(1)/etc/hosts.allow:允许个别,拒绝所有(白名单)
(2)/etc/hosts.deny:允许所有,拒绝个别(黑名单)

4.1访问控制策略配置文件的格式

(1)格式
服务名称:指定固定的IP地址或指定网段
(2)控制类型
请添加图片描述

4.2配置

(1)拒绝个别

[root@test1 .ssh]#vim /etc/hosts.deny

在这里插入图片描述

test2测试:
在这里插入图片描述
(2)拒绝所有,允许个别配置

root@test1 .ssh]# vim /etc/hosts.deny

请添加图片描述

[root@test1 .ssh]# vim /etc/hosts.allow

在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一杯甜酒z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值