什么是 SSH 密钥? 生成、身份验证、密钥对信息等

news2024/10/5 4:26:54

SSH 密钥不仅可以提高安全性,还可以实现当今企业所需的大规模连接流程、单点登录 (SSO) 以及身份和访问管理的自动化。

什么是 SSH 密钥?

SSH 密钥是安全外壳 (SSH) 协议中使用的安全访问凭证。 SSH 密钥使用基于公钥基础设施 (PKI) 技术(数字身份认证和加密的黄金标准)的密钥对来提供安全且可扩展的认证方法。

由于 SSH 协议广泛用于云服务、网络环境、文件传输工具、配置管理工具和其他依赖计算机的服务中的通信,大多数组织使用 SSH 密钥来验证身份并保护这些服务免受意外使用或恶意攻击。

SSH 密钥不仅可以提高安全性,还可以实现当今企业所需的大规模连接流程、单点登录 (SSO) 以及身份和访问管理的自动化。

SSH 密钥认证与密码

在高层次上,SSH 密钥通过控制访问来起到密码的作用。但这就是相似性结束的地方。数字身份需要强大以防被盗,方便以快速访问且永不中断,并且面向未来,以使企业能够领先于威胁。

密码用于提供一定程度的安全性,但不再像以前那样有效。那是因为不良行为者越来越擅长在通过互联网传输的过程中窃取密码,将它们从存储库中取出,并通过暴力攻击获取它们。

人为因素加剧了这些问题:人们重复使用、共享和不断忘记密码。企业的成本很高,不仅因为数据丢失、中断和信息泄露,还因为密码需要时间输入,需要大量支持资源,并且必须经常重置。

使用 PKI 的加密强度和身份验证方法,SSH 密钥不易受到恶意攻击,并且如果系统或服务器遭到破坏,则不会暴露有效凭据。 PKI 加密技术正在不断改进,以确保身份能够抵御新的和不断发展的威胁。并且 SSH 密钥认证比密码认证更方便。密钥通过启动身份验证和自动授予访问权限将用户和进程连接到服务器,因此用户不必记住或输入每个系统的密码。

公钥和私钥使用

SSH 密钥依赖于使用两个相关的密钥,一个公钥和一个私钥,它们共同创建一个用作安全访问凭证的密钥对。私钥是秘密的,只有用户知道,应该加密并安全存储。公钥可以与用户希望连接的任何 SSH 服务器自由共享。这些密钥通常由组织的 IT 团队管理,或者更好的是,在受信任的证书颁发机构 (CA) 的帮助下,以确保它们的安全存储。

为了创建数字身份,会生成公钥和私钥,并使用强大的公钥加密算法将这对相互关联。用于生成密钥的最常用数学算法是 Rivest-Shamir-Adleman (RSA) 和椭圆曲线数字签名算法 (ECDSA)。

这些算法使用各种计算方法来生成不同长度的随机数字组合,因此它们不能被蛮力攻击所利用。 SSH 密钥的密钥大小或位长有助于确定保护强度。 2048 位 RSA 密钥或 521 位 ECDSA 密钥提供了足够的加密强度来防止黑客破解算法。

身份验证如何使用 SSH 密钥对工作?

SSH 密钥对用于验证想要使用 SSH 协议访问远程系统的用户或进程的身份。用户和远程服务器都使用公钥来加密消息。在远程服务器端,它保存在一个文件中,其中包含所有授权公钥的列表。在用户方面,它存储在 SSH 密钥管理软件或他们计算机上的文件中。私钥仅保留在用于访问远程服务器的系统上,并用于解密消息。

当用户或进程使用 SSH 客户端请求连接到远程服务器时,将启动质询-响应序列以完成身份验证。 SSH 服务器识别出正在请求连接,并使用共享的公钥信息发送加密的质询请求。然后 SSH 客户端解密质询消息并响应服务器。用户或进程必须正确响应要被授予访问权限的质询。这种质询-响应序列在 SSH 客户端和服务器之间自动发生,无需用户进行任何手动操作。

 

如何创建 SSH 密钥并存储它

在使用 SSH 密钥之前,需要生成一个密钥对。 这可以使用自动证书管理系统执行,也可以由系统管理员手动执行。

可以在最常见的操作系统上手动生成和存储密钥。 在 Windows 系统上,可以使用命令行或 SSH 客户端(如 PuTTy)生成它们。 在 MacO 和 Linux 系统上,它们是使用终端窗口生成的。

以下是生成 SSH 密钥的命令行步骤:

  • 输入密钥生成命令 $ ssh-keygen -t rsa
  • 输入保存密钥的文件。 通常,密钥存储在主目录或 ~/.ssh/ 目录中(例如 /home/foldername/.ssh/id_rsa 或 /c/Users/username/.ssh/id_rsa)
  • 输入可选密码或留空表示无密码。 注意:密码短语为密钥对提供了额外的密码保护层,但用户必须在每次使用密钥对时输入密码短语。

生成配对后,下一步是将公共配对放在远程服务器上。 系统管理员可以使用 ssh-copy-id 命令(例如 $ ssh-copy-id username@IP address)将公钥复制到远程服务器的 authorized_keys 文件中。 或者,您可以使用安全 shell 命令粘贴密钥(例如 $ cat ~/.ssh/id_rsa.pub | ssh username@IP address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~ /.ssh/authorized_keys”)。

SSH 密钥管理

正确的 SSH 密钥管理对组织至关重要,因为这些密钥授予对任务关键型业务系统和数据的访问权限。然而,手动管理它们可能既耗时又容易出错。组织通常在其整个环境中存储数千甚至数百万个 SSH 密钥这一事实使情况变得更加复杂。如果配置、供应和终止策略没有到位并没有积极管理,这些密钥提供的安全性很容易受到破坏。

例如,当不再需要颁发的密钥时,例如员工离开组织时,IT 人员可能会忘记终止密钥。发现此类孤立密钥几乎是不可能的,这会产生公钥和私钥存在于不受严格控制的系统上的风险。如果这些孤立的密钥没有受到保护,它们可能会被恶意行为者窃取,然后他们可以使用仍然有效的凭据来访问您的关键业务系统和数据。

使用 ssh-agent 帮助程序的专用 SSH 密钥管理解决方案可用于供应、配置和终止密钥。使用这些解决方案比手动管理要好得多,但是这种方法需要繁忙的 IT 员工在他们现有的安全和管理解决方案之外使用其他管理工具。相反,IT 团队应该使用自动管理所有基于 PKI 的证书的集中式证书管理解决方案。利用单一的证书管理方法,IT 人员可以在一个仪表板中完成所有关键管理任务。


 

 

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

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

相关文章

Android12窗口模糊(二)高斯模糊API源码解析

前言 在 Android 12 中,提供了一些用于实现窗口模糊处理效果(例如背景模糊处理和模糊处理后方屏幕)的公共 API。窗口模糊处理或跨窗口模糊处理用于模糊处理给定窗口后方的屏幕。 有两种窗口模糊处理方式,可用于实现不同的视觉效果…

不小心清空了回收站怎么恢复,回收站删除的东西可以恢复吗

不小心清空了回收站怎么恢复?回收站是操作系统提供的一个非常实用的功能,专门为用户保存从电脑硬盘删除的各种数据,因而很多时候我们都会用到回收站,它能够保存各种数据,我们也能够在里面恢复自己想要的数据&#xff0…

Flutter组件--AppBar相关属性

AppBar介绍 AppBar是基于Material Design设计风格的应用栏,一般使用在Scaffold内部,作为顶部导航栏。 为什么需要AppBar 1、因为导航栏里面一般由左侧功能键(返回键、菜单键)、标题、右侧功能键组成,而AppBar里面内置…

django的使用步骤详细

一、安装django pip install django 二、创建django项目 放django文件的的文件路径上输入cmd进入终端输入下面的命令 django-admin startproject 项目名称 三、app的创建 进入创建好的项目里面输入一下的命令 python manage.py startapp app名称 四、注册app 五、编写U…

计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析(PCA)

计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析🏳️‍🌈 文章目录计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析:rainbow_flag:图像主成分…

企业数据泄漏事件频发,如何防止企业数据泄漏?

2022年即将接近尾声,这一年受疫情和国际经济形势影响,各行各业都不太好过,同样互联网领域发展不平衡、规则不健全、秩序不合理等问题日益凸显,虽然互联网的快速发展为企业数字化转型提供了支撑,但是互联网发展进程中“…

Android App开发动画特效之利用滚动器实现平滑翻页(附源码和演示 简单易懂)

需要图片集请点赞关注收藏后评论区留言~~~ 一、利用滚动器实现平滑翻页 在日常生活中,平移动画比较常见,有时也被称为位移动画,左右翻页和上下滚动其实都用到了平移动画,譬如平滑翻书的动画效果,就是位移动画的一种应…

BHQ-3 amine,1661064-89-6可在430nm至730nm范围内猝灭所有普通荧光团

英文名称:BHQ-3 amine CAS:1661064-89-6 外观:深紫色粉末 分子式:C32H36N7 分子量:518.69 储存条件:-20C,避光避湿 结构式: 凯新生物产品简介:干燥的寡核苷酸在环境…

如今传统企业如何做数字化转型?

如今传统企业如何做数字化转型? 传统企业的数字化转型,也分为大型企业和中小企业,二者的侧重是十分不同的! 大型传统企业数字化转型的侧重点是—— 如何利用新一代信息技术,整合其现有技术和资源优势,在相…

MyBatis的缓存

目录 1.一级缓存 情况一 : 不同的SqlSession对应不同的一级缓存 情况二 : 同一个SqlSession但是查询条件不同 情况三 : 同一个SqlSession两次查询期间执行了任何一次增删改操作 情况四 : 同一个SqlSession两次查询期间手动清空了缓存 2.二级缓存 2.1二级缓存的相关配置 3.MyBa…

内网渗透神器CobaltStrike之会话管理(五)

CS之间派生会话 将CS1管理的会话派生至CS2中, 简单来说就是将CS1服务器的肉鸡送给CS2服务器 准备环境 主机描述Kali(192.168.47.134)CS TeamServer1Kali2(192.168.47.144)CS TeamServer2Windows7(192.168.47.133)CS客户端,攻击机Windows7(192.168.47.141)受害机操作步骤 首先…

详解:MySQL自增ID与UUID的优缺点及选择建议,MySQL有序uuid与自定义函数实现

文章目录1.自增ID的优缺点1.1 优点1.2 缺点1.3 不适合以自增ID主键作为主键的情况2.UUID作为主键2.1 介绍2.2 优点2.3 缺点3.有序UUID作为主键3.1 介绍3.2 演示使用3.2.1 前提知识3.2.1.1 数据类型 - binary3.2.1.2 函数 - hex()3.2.1.3 函数 - unhex()3.2.2 数据库层3.2.3 JAV…

web自动化测试(java+seleium)环境安装

目录0、应用1、linux安装1.1 安装chromium1.2 安装chromedriver1.3 安装xvfb2、java maven依赖selenium依赖3、入门案例0、应用 前一段时间,需要实现一个模拟页面操作的功能,去检测程序运行是否稳定,因此就用到了web自动化检测的功能。 1、实…

Centos8安装部署JumpServer堡垒机

1:安装支持在线安装和离线安装,我们选择在线安装一键部署。安装需要的环境要求。 OS/ArchArchitectureLinux KernelSoft Requirementlinux/amd64x86_64> 4.0wget curl tar gettext iptables pythonlinux/arm64aarch64> 4.0wget curl tar gettext …

highcharts 堆积图

参考 多坐标轴混合图 | JShare 使用 js资源 https://cdn.highcharts.com.cn/10.2.1/highcharts.js https://cdn.highcharts.com.cn/10.2.1/modules/exporting.js https://img.hcharts.cn/highcharts-plugins/highcharts-zh_CN.js 效果 js 引用 <script src"https…

【网页设计】期末大作业html+css(体育网站)--杜丹特篮球介绍8页 带报告

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 校园篮球网页设计 | 足球体育运动 | 体育游泳运动 | 兵乓球 | 网球 | 等网站的设计与制作 | HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&…

代码随想录刷题|LeetCode 343. 整数拆分 96.不同的二叉搜索树

目录 343. 整数拆分 思路 整数拆分 96.不同的二叉搜索树 思路 不同的二叉搜索树 343. 整数拆分 题目链接&#xff1a;力扣 思路 动态规划的题目虽然说是要先确定dp数组的含义&#xff0c;再确定递归公式&#xff0c;但是总感觉这两者是相辅相成的&#xff0c;是一起出来的&…

[附源码]java毕业设计校园飞毛腿系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

【三维点云】2-三维点云表征

文章目录内容概要1 三维数据的获取方式及原理1.1 被动测量单目立体视觉双目立体视觉多目立体视觉1.2 主动测量结构光3D成像TOF 3D成像脉冲法相位法2 三维数据的获取原理立体视觉测量法相机成像模型小孔成像模型&#xff08;相机成像模型的理想情况&#xff09;单目立体视觉聚焦…

[附源码]计算机毕业设计JAVA基于web的球类体育馆预定系统

[附源码]计算机毕业设计JAVA基于web的球类体育馆预定系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; …