SSH key的使用

这篇具有很好参考价值的文章主要介绍了SSH key的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SSH key的简介

Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境,以便远程管理系统、传输文件和执行各种网络操作。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。SSH使用频率最高的场合是类Unix系统,但是Windows操作系统也能有限度地使用SSH。015年,微软宣布将在未来的操作系统中提供原生SSH协议支持,Windows 10 1803版本已提供OpenSSH工具。

SSH通过使用加密技术来保护通信,确保数据在传输过程中不会被窃取或篡改。

SSH key的介绍

SSH key是SSH协议的一种身份验证方式,用于验证用户或计算机的身份。SSH key由一对密钥组成:私钥和公钥。这两个密钥是相关的,但具有不同的用途。以下是SSH key及其使用的详细介绍:

SSH key的生成

首先,您需要生成一对SSH密钥,linux平台下使用如下命令:

ssh-keygen -t rsa -C "xxx@xxx.com"
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

生成密钥对后,系统将提示您选择保存密钥的位置和文件名。私钥通常存储在本地计算机上,而公钥则存储在远程服务器上,以便其他计算机可以使用它来验证您的身份。

-t 参数用来指定密钥的加密算法,一般会选择 DSA 算法或 RSA 算法。 如果省略该参数,默认使用 RSA 算法。指定密钥类型(通常是RSA或ED25519)。
-f 指定文件名称,默认会生成 ~/.ssh/id_rsa / id_rsa_pub
-C 参数可以为密钥文件指定新的注释,格式为username@host。 可选,用于添加注释以识别密钥的描述信息。
-b 参数指定密钥的二进制位数。这个参数值越大,密钥就越不容易破解,但是加密解密的计算开销也会加大。 一般来说,-b至少应该是1024,更安全一些可以设为2048或者更高。指定密钥位数(通常是2048或4096位)。

SSH key存放路径

当执行了上面的命令,生产ssh key 后,key就保存在当前用户下的.ssh 目录。 你的私钥被放在了~/.ssh/id_rsa 这个文件里,而公钥被放在了 ~/.ssh/id_rsa.pub 这个文件里。

SSH key的使用

本地计算机上的私钥:私钥通常保存在您的本地计算机上,并且必须始终保持私密。私钥用于对远程服务器进行身份验证。

远程服务器上的公钥:将您的公钥添加到远程服务器的~/.ssh/authorized_keys文件中。这可以手动完成,也可以使用ssh-copy-id命令自动完成。这样,远程服务器将能够验证您的SSH连接请求。

把主机A的公钥放在主机B上
scp -r /root/.ssh/id_rsa.pub 192.168.31.147:/root/.ssh/authorized_keys

此时用A登陆B就不需要密码了
ssh B_ip

SSH Key的使用场景

远程登录:使用SSH key进行身份验证,而不是使用密码进行远程登录。这提供了更高的安全性。

文件传输:通过SCP(Secure Copy Protocol)或SFTP(SSH File Transfer Protocol)等工具,可以使用SSH key来安全地传输文件到远程服务器。

自动化任务:SSH key也可以用于自动化脚本或任务,无需人工干预即可与远程服务器进行通信。

SSH Key的优点

更高的安全性:SSH key提供了比密码更强的身份验证,可以有效防止暴力攻击和密码破解。
方便的身份验证:一旦设置,使用SSH key进行身份验证通常比记住密码更方便。
适用于自动化:SSH key适用于自动化脚本和任务,使其可以无需用户干预地与远程服务器通信。
总之,SSH key是一种用于安全连接到远程服务器的强大工具。它提供了更高的安全性和便利性,是许多系统管理员和开发人员的首选身份验证方式。但是,请务必妥善保管您的私钥,以防止未经授权的访问。文章来源地址https://www.toymoban.com/news/detail-645705.html

到了这里,关于SSH key的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mac ssh登陆服务器: no matching host key type found. Their offer: ssh-rsa问题处理

    Mac 上iterm2 脚本连接堡垒机报错 nbsp;openssh觉得ssh-rsa加密方式不安全, 直接从8.8开始默认不允许这种密钥用于登陆了 方案1: 临时性方案(命令行增加参数 -oHostKeyAlgorithms=+ssh-rsa) 连接成功 方案2:持久化方案(配置文件持久化) 输入sudo nano ~/.ssh/config,然后在出现提示时,输入您

    2024年02月12日
    浏览(49)
  • 【SSH】在VScode远程开发 使用SSH远程连接服务器

    转发自cpolar极点云的文章:【Vscode远程开发】使用SSH远程连接服务器 「内网穿透」 远程连接服务器工具有很多,比如XShell、putty等,可以通过ssh来远程连接服务器,但这用于写代码并不方便,可能需要现在本地写好代码后再将源代码传送到服务器运行、服务器上的图片也无法

    2024年02月08日
    浏览(52)
  • Golang笔记:使用ssh包作为客户端与SSH服务器交互

    Golang中可以使用 golang.org/x/crypto/ssh 包作为SSH客户端或者SSH服务使用。这篇文章将简单记录下作为客户端使用的一些内容。 Package ssh implements an SSH client and server. 作为客户端与SSH服务器操作上来说主要分为三步: 使用一定的参数与SSH服务器建立连接得到 Client 对象; 在 Client 之

    2024年02月09日
    浏览(63)
  • Linux: 使用 ssh 连接其他服务器

    通过ifconfig 查看要连接的服务器地址: 输入要连接的服务器密码: 连接服务器成功:

    2024年02月11日
    浏览(51)
  • Pycharm使用ssh远程链接服务器

    🖐哈喽!本篇文章主要是想记录一下自己找资料配置 pycharm 使用 ssh的过程,pycharm 相对于 vscode 有一个好处就是断点调试比较方便(个人看法) ❓但是我没有掌握如何在 pycharm 中显示运行服务器时候产生的图像,而如果用本机的 plt 来画图是能够直接看到的,如果你知道请和

    2024年02月03日
    浏览(48)
  • 【服务器】SSH 私钥报错 Permissions for ‘id_rsa‘ are too open. It is required that your private key

    (发现XShell自带的公私钥生成工具,生成的公私钥对不好使) 使用ssh-keygen生成公私钥对之后,直接在cmd命令行中进行连接: 得到 将公钥添加到服务器的authorized_keys之后, 报错如下 主要是因为本地的私钥文件 id_rsa 的权限太开放了 Windows环境下 在Windows本地环境下: 右键id

    2024年02月02日
    浏览(42)
  • VSCode使用ssh连接服务器跑代码

    如图所示安装插件remote-ssh 2.1这时候VSCode左下角就会出现一个双向箭头,打开他 2.2在弹出的窗口当中选择Connect to Host 2.3接下来选择Add New SSH Host 2.4接下来输入登入服务器的账户名,ip地址,如果是,端口号 **格式:**账户@地址 -p 端口号 有些租服务器平台可能给的不是ip地址例

    2024年02月04日
    浏览(51)
  • 使用SSH远程连接Ubuntu服务器系统

    实现目的:安装完Ubuntu系统后只能在Ubuntu命令行中输入命令,不能将外面的代码复制进Ubuntu命令行里面,所有本教程是为了配置ssh服务,可以将Ubuntu系统远程通过cmd或者windows Powershell登录,就可以实现代码复制功能。OK,下面介绍如何开启SSH服务。 启用SSH服务,输入以下指令

    2024年02月05日
    浏览(80)
  • Termux的ssh使用方式(连接云服务器,ssh密钥登录和Termux互联)

     Termux作为强大的终端模拟软件,通过ssh可以轻松的连接到云服务器上,这里以连接阿里云服务器为例  一般在服务器运营商上购买的服务器都开启了远程连接服务。先在ternux上安装openssh。  安装完成后,在服务器控制台找到需要连接的服务器的ip地址,以47.115.217.154为例,

    2024年02月06日
    浏览(58)
  • 使用 Python 连接 SSH 服务器并执行命令

    实际开发中,有时候经常需要查看日志,有时候使用ssh工具打开就为了看一下错误日志又比较麻烦,所以今天带来一个简单的基于python的小工具. 首先需要先安装一个库 paramiko 使用命令直接安装 paramiko库是一个开源的、基于SSH2协议的库,可以实现SSH连接以及数据的传输。 paramik

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包