【基于CentOS 7 的SSH服务】

news2024/11/22 16:29:53

目录

一、概念

二、特点

三、身份验证机制

1.密码验证

2.密钥对验证

四、验证过程

五、加密机制

1.单向加密

2.对称加密

3.非对称加密

六、基本参数

1.服务名

2.端口号

3.配置文件

3.1 服务器端

3.2 客户端

4.配置文件解析

4.1 /etc/ssh/sshd_config

4.2 /etc/ssh/ssh_config

七、基本操作 - 命令

1.ssh

1.1 作用

1.2 格式

1.3 选项

1.4 案例

1.4.1 指定用户登录

1.4.2 不登录执行命令

2.scp

2.1 作用

2.2 类型

2.3 案例

3.sftp

4.密钥对验证

4.1 作用

4.2 实验


一、概念

安全外壳协议(Secure Shell,简称SSH)是一种在不安全网络上用于安全远程登录和其他安全网络服务的协议。

二、特点

  • ssh是工作在传输层和应用层的协议
  • ssh提供了一组管理命令
  • 提供了多种身份验证机制

三、身份验证机制

1.密码验证

需要提供密码

2.密钥对验证

无需提供密码,直接登录

四、验证过程

  • 客户端发起请求,ssh 服务器IP地址
  • 确认是否保存指纹信息,yes确认保存
  • 输入目标主机密码
  • 打开子shell建立会话
  • 若退出,则使用exit

五、加密机制

1.单向加密

不可逆的加密算法

2.对称加密

加密和解密使用相同的密钥

3.非对称加密

加密和解密使用一组密钥对(公钥、私钥)

六、基本参数

1.服务名

sshd

2.端口号

TCP/22

3.配置文件

3.1 服务器端

/etc/ssh/sshd_config                  ssh主程序sshd的配置文件
/etc/ssh/ssh_host_*                   服务器的公钥和私钥文件
~/.ssh/authorized_keys             密钥库文件

 

3.2 客户端

/etc/ssh/ssh.config                客户端的全局配置文件
~/.ssh/known_hosts              客户端存储服务器主机指纹的文件
~/.ssh/id_rsa                         客户端生成的私钥
~/.ssh/id_rsa.pub                  客户端生成的公钥

:没有绝对的客户端和服务器,主要是看谁是发起端,谁是接收端

4.配置文件解析

4.1 /etc/ssh/sshd_config

Port                                                                    监听端口
Listenaddress                                                    监听地址,0.0.0.0表示监听所有地址
PubkeyAuthentication                                        是否启用密钥对验证
PasswordAuthentication                                    是否启用密码验证
PermitEmptyPasswords                                    是否启用空密码,密码验证时,最好关闭
AuthorizedKeysFile      .ssh/authorized_keys    密钥库文件

4.2 /etc/ssh/ssh_config

ConnectTimeout    连接超时时间

七、基本操作 - 命令

1.ssh

1.1 作用

远程连接的客户端工具

1.2 格式

ssh [options]  [user@]hostname  [command]

1.3 选项

-p,        指定端口

-b,        指定网卡

1.4 案例

1.4.1 指定用户登录

客户端以a1的用户身份登录到服务器

1.4.2 不登录执行命令

客户端使用a1的用户身份不登录到服务器,执行查看服务器网卡配置文件的内容

ssh a1@192.168.42.138 cat /etc/sysconfig/network-scripts/ifcfg-ens33

2.scp

2.1 作用

基于ssh的远程复制命令

2.2 类型

本地<-->本地
本地<-->远程
远程<-->远程  

2.3 案例

  • 将客户端192.168.42.140主机上的/etc/hosts文件复制到服务器192.168.42.138主机的mnt目录下

scp root@192.168.42.140:/etc/hosts root@192.168.42.138:/mnt

 

  • 通过客户端将服务器192.168.42.138上的/etc/hostname文件复制到另一个服务器192.168.42.141的opt目录下

scp root@192.168.42.138:/etc/hostname root@192.168.42.141:/opt

 

3.sftp

作用:安全的文件传输程序

4.密钥对验证

4.1 作用

提供免交互的密码验证

4.2 实验

客户端生成密钥对                        ssh-keygen


客户端将公钥上传至服务器          ssh-copy-id


服务器启用密钥对验证


客户端测试

 


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/777753.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习 day29(高偏差、高方差,参数d对模型的影响)

1. 高偏差、高方差、拟合能力、泛化能力 偏差和方差分别代表拟合能力和泛化能力若给左图数据集拟合一阶多项式&#xff08;d取1&#xff09;&#xff0c;则该模型有很高的偏差&#xff08;欠拟合&#xff09;。因为它对训练集和验证集的表现均不好&#xff0c;所以Jtrain很高…

使用STM32 再实现循迹/跟随/摇头避障小车

循迹小车 硬件介绍和接线 TCRT5000 使用方法和原理见89C52时期的介绍。 循迹小车需要使用两个TCRT5000&#xff0c;左侧的DO接到PB3&#xff1b;右侧的DO接到PB4 CubeMX 1. 在上节的基础上进行修改 配置两个传感器的GPIO 2. 惯例配置更新代码 Keil 注意&#xff0c;如果…

Linux 学习记录54(ARM篇)

Linux 学习记录54(ARM篇) 本文目录 Linux 学习记录54(ARM篇)一、框图分析1. 芯片手册内部框图2. 操作GPIO过程 二、通过汇编完成GPIO操作1. 常用的汇编指令2. GPIO初始化流程3. 查找相关寄存器(1. RCC寄存器(2. GPIO寄存器>1. 模式配置寄存器>2. 输出模式配置寄存器>3…

【云原生】Prometheus之部署 Alertmanager 发送告警

前言 1. Alertmanager 发送告警的介绍 Prometheus 对指标的收集、存储与告警能力分属于 Prometheus Server 和 AlertManager 两个独立的组件&#xff0c;前者仅负责定义告警规则生成告警通知&#xff0c; 具体的告警操作则由后者完成。 Alertmanager 负责处理由 Prometheus…

wxchart 小程序 线条图不显示y轴的网格线 (分割线)

如下图&#xff1a;项目需求不显示包括x轴的6条灰色分割线。 分析&#xff1a; 看了一下源码已经写死了是5条分割线&#xff0c;加一条x轴刻度线。没给公开配置方法。 解决方案&#xff1a; 既然没有配置项目&#xff0c;可以转变思路&#xff0c;把这些线条配置成白色&…

一文掌握如何前后端分离?

随着科技的进步和发展&#xff0c;低代码开发产品拥有广阔的市场前景。前后端分离似乎早已经是发展趋势了&#xff0c;因为做好前后端分离对于前后端的工程师而言是非常有利的&#xff0c;这样也有利于提升办公协作效率。那么&#xff0c;如何前后端分离&#xff1f;分别都有哪…

CentOS 安装Mysql8

1.检查是否已经安装mysql&#xff0c;停止mysql服务&#xff0c;删除mysql ps -ef | grep -i mysql systemctl stop mysqld rpm -e mysql 2.配置仓库 更新秘钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 安装mysql8的yum源 rpm -Uvh https://dev.mysql.…

基于linux下的高并发服务器开发(第二章)- 2.17 内存映射(1)

11 / 内存映射相关系统调用 #include <sys/mman.h> void* mmap(void *addr, size_t length, int prot, int flags,int fd, off_t offset); - 功能&#xff1a;将一个文件或者设备的数据映射到内存中 - 参数&#xff1a; - void* addr:NULL,由内核指定 - length:要映射的…

【OpenCV】常见问题及解决办法

文章目录 0 前言1 中文乱码问题2 非法路径问题 0 前言 本篇博客主要是总结OpenCV使用过程中遇到的一些问题&#xff0c;以及对应的解决办法&#xff0c;这里重点是关注OpenCV&#xff0c;既有基于C的&#xff0c;也有基于Python的&#xff0c;比较全面&#xff0c;而且也会随着…

【Python】数据分析+数据挖掘——变量列的相关操作

前言 在Python和Pandas中&#xff0c;变量列操作指的是对DataFrame中的列进行操作&#xff0c;包括但不限于选择列、重命名列、添加新列、删除列、修改列数据等操作。这些操作可以帮助我们处理数据、分析数据和进行特征工程等。 变量列的相关操作 概述 下面将会列出一些基本…

对github项目提PR 请求的保姆级教程——以修改casdoor项目的swagger文档为例,干货满满

Github入门教程可以在腾讯犀牛鸟开源人才培养计划里面学习。 PR简介 PR(Pull Request) 即拉取请求,是 GitHub 上进行协同开发的一种非常常用的方式。 它的基本流程是&#xff1a; 开发者fork一个开源项目的代码库,将其克隆到本地。在本地对代码进行修改、添加新功能等。将本…

基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平教程

详情点击链接&#xff1a;基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平 一&#xff0c;空间数据获取与制图 1.1 软件安装与应用 1.2 空间数据 1.3海量空间数据下载 1.4 ArcGIS软件快…

MySQL数据库(七)

目录 一、联合查询 1.1内连接 1.2外连接 1.3自连接 1.4子查询 1.5合并查询 一、联合查询 实际开发中往往数据来自不同的表&#xff0c;所以需要多表联合查询。多表查询是对多张表的数据取笛卡尔积&#xff1a; 下面进行多表查询的练习&#xff0c;对应的在表的设计与数据插入中…

练习时长两年半的网络安全防御“first”

1.网络安全常识及术语 下边基于这次攻击演示我们介绍一下网络安全的一些常识和术语。 资产 任何对组织业务具有价值的信息资产&#xff0c;包括计算机硬件、通信设施、 IT 环境、数据库、软件、文档资料、信息服务和人员等。 网络安全 网络安全是指网络系统的硬件、软件及…

Stable Diffusion - 扩展 Roop 换脸 (Face Swapping) 插件的配置与使用

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/131856141 官网&#xff1a;GitHub - roop&#xff0c;参考论文&#xff1a;RobustSwap: A Simple yet Robust Face Swapping Model against Attr…

kubesphere部署谷粒商城, nginx无法路由到网关服务

使用kubesphere部署谷粒商城&#xff0c;微服务和nginx均已部署成功&#xff0c;其中ingress-controller已安装。但是nginx无法路由到网关服务。使用域名gulimall.com访问谷粒商城&#xff0c;默认访问的是nginx首页&#xff0c;路由失败。 校对nginx的配置信息&#xff0c;上游…

MySQL数据库第十课-------join连接的再续------强强连锁

作者前言 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com __________________________________________________________ 目录 join连接 内连接 左连接 右连接 外连接 其他连接 ______________________________________________________________ 作…

Unity 实用插件篇 | Tutorial Master 2 游戏引导教程 快速上手

前言【Unity 实用插件篇】 | Tutorial Master 2 游戏引导教程 快速上手一、Tutorial Master 2 介绍1.1 基本概念1.2 相关链接1.3 效果展示二、搭建简易测试环境三、制作简易引导教程3.1 挂载一个Tutorial Master Manager脚本3.2 设置引导预制体3.3 创建一个引导教程3.4 添加引导…

SpringBoot系列--【如何集成prometheus?】

如何集成prometheus&#xff1f; 1.添加pom依赖 注意&#xff1a;prometheus的版本依赖springboot版本&#xff0c;示例使用的springboot版本的2.3.X. 2.配置文件添加配置 3.主启动类添加如下配置 4.验证端点 SpringBoot项目到这里就配置完成了&#xff0c;启动项目&#xff0c…

将请求参数数据推送至RabbitMQ队列中并且捕捉消息没有到达交换机的异常

1&#xff1a;自定义mq信息类&#xff08;我的交换这些信息都从nacos上直接取的&#xff0c;怎么从nacos取配置信息看上篇文章&#xff09;&#xff1a; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor;impo…