通过SSH设置密钥远程访问

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

一.简述

密钥登录的原理:利用密钥生成器制作一只公钥和一只私钥。将公钥添加到服务器上,然后在客户端利用私钥即可登录。

二.生成密钥

通过命令 ssh-keygen生成密钥是首选,密钥默认保留在 ~/.ssh目录中,可以先通过命令ls -al ~/.sshterminal/powershell中查询是否存在密钥。
没有密钥则在本地 terminal/powershell输入:
ssh-keygen -t rsa -b 4096

创建密钥的参数如下

-t rsa = 密钥类型,可以设置为RSA 格式

-b 4096 = 密钥的位数,这里为 4096

-m PEM = 密钥的格式,可以设置为 PEM

-C "annotation" = 密钥的注释,加到公钥文件末尾以便于识别。

-f ~/.ssh/keypath = 密钥的私钥文件的文件名(不输入则为默认名称)。

-N passpharse = 其他密码,用于访问私钥文件。

生成过程

在密钥生成中,会要求你确认密钥保存文件以及密钥锁码,默认的情况摁3次Enter就可以了,第一次确认文件目录,后两次确认密钥锁码(不输入就是不设置)。

Generating public/private rsa key pair.
Enter file in which to save the key (/user_root/.ssh/id_rsa): Enter
passphrase (empty for no passphrase): 
Enter same passphrase again: 
our identification has been saved in /user_root/.ssh/id_rsa.    #私钥
Your public key has been saved in /user_root/.ssh/id_rsa.pub.  #公钥
The key fingerprint is: 
The key's randomart image is:

三.授权登陆

mac/linux Local 连接 mac/linux Host

打开本地 terminal/powershell,输入

export USER_AT_HOST="your-user-name-on-host@hostname"
export PUBKEYPATH="$HOME/.ssh/id_rsa.pub"

ssh-copy-id -i "$PUBKEYPATH" "$USER_AT_HOST"

即可完成操作,不用输入密码也可以ssh直接访问。

mac/linux Local 连接 windows Host
export USER_AT_HOST="your-user-name-on-host@hostname"
export PUBKEYPATH="$HOME/.ssh/id_rsa.pub"

ssh $USER_AT_HOST "powershell New-Item -Force -ItemType Directory -Path \"\$HOME\\.ssh\"; Add-Content -Force -Path \"\$HOME\\.ssh\\authorized_keys\" -Value '$(tr -d '\n\r' < "$PUBKEYPATH")'"
windows Local 连接 mac/linux Host
$USER_AT_HOST="your-user-name-on-host@hostname"
$PUBKEYPATH="$HOME\.ssh\id_rsa.pub"

$pubKey=(Get-Content "$PUBKEYPATH" | Out-String); ssh "$USER_AT_HOST" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo '${pubKey}' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
windows Local 连接 windows Host
$USER_AT_HOST="your-user-name-on-host@hostname"
$PUBKEYPATH="$HOME\.ssh\id_rsa.pub"

Get-Content "$PUBKEYPATH" | Out-String | ssh $USER_AT_HOST "powershell `"New-Item -Force -ItemType Directory -Path `"`$HOME\.ssh`"; Add-Content -Force -Path `"`$HOME\.ssh\authorized_keys`" `""

参考

1.https://code.visualstudio.com/docs/文章来源地址https://www.toymoban.com/news/detail-745108.html

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

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

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

相关文章

  • 华为交换机设置指定IP访问ssh端口

    1、华为交换机设置用户能够通过ssh访问已经完成 华为交换机SSH 创建管理账号密码 2、为了安全,需要指定特定IP才能访问ssh端口 Huawei_x.x.x.x system-view   Enter system view, return user view with Ctrl+Z. [Huawei_x.x.x.x] acl number 2100 [Huawei_x.x.x.x-acl-basic-2100] rule 9 permit source 192.168.x.x1 0 [Huawei_x

    2024年02月09日
    浏览(46)
  • ubuntu系统设置ssh远程访问

    本文档主要记录Ubuntu系统安装完成后,设置ssh远程访问的过程。 Ubuntu 20.04

    2024年02月16日
    浏览(35)
  • 如何在Windows通过固定tcp公网地址ssh远程访问本地Kali Linux

    本文主要介绍如何在Kali系统编辑SSH配置文件并结合cpolar内网穿透软件,实现公网环境ssh远程连接本地kali系统。 默认新安装的kali系统会关闭ssh 连接服务,我们通过命令打开: 启动后我们查看ssh 状态,active 表示ssh 正常运行 通常ssh 是使用账号或者密码进行登录连接,所以还需要开

    2024年04月23日
    浏览(47)
  • 通过ssh-keygen命令生成SSH密钥

    在GitHub、GitLab等代码托管平台上,通常在克隆仓库的时候,会提供ssh协议的链接。ssh协议链接的好处是只要在平台上配置好SSH密钥,就可以直接克隆当前账号下的所有仓库,而不用输入账号和密码。SSH密钥生成方法如下: 1.命令行中执行: 参数解释: -t 表示ssh的密钥类型,

    2024年01月17日
    浏览(46)
  • SSH通过VSCode远程访问服务器Opencv和matplotlib等无法直接显示图像问题

    需求描述: 在VSCode中通过SSH连接服务器,使用cv2.imshow或plt.show()无法显示图像。 解决思路如下: 1、首先查看与服务器之间的网络连接问题(百分之九十问题就是出在第一步骤,哈哈哈) 在本地端打开cmd,使用指令ping xxx.xxx.xxx.xxx,其中(xxx.xxx.xxx.xxx为服务器的IP地址) 在

    2024年02月15日
    浏览(41)
  • 【树莓派不吃灰】基础篇⑮ SSH远程访问安全,涉及/etc/hosts.allow白名单 和 /etc/hosts.deny黑名单、ufw防火墙、密钥登录

    ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️ ❤️ 本篇创建记录 2022-11-06 ❤️ ❤️ 本篇更新记录 2022-11-06 ❤️ 🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言 📝 🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请留言轰炸哦!及时修正

    2024年02月02日
    浏览(50)
  • MobaXterm通过SSH Key连接服务器,保存私钥密码

    (1)在连接设置中勾选Use private key (2)点击   (3)在弹窗中选择私钥文件  (不指定的话,每次连接时都要设置,比较麻烦) (1)勾选Specify username (2)点击 (3)(如果私钥存在密码)勾选Save SSH keys passphrases as well (4)点击New  (5)填写用户设置并OK保存 返回最初的界

    2024年02月08日
    浏览(69)
  • Linux创建SSH密钥、设置密钥登录、密钥登录原理

    Linux有2种登录方式: 使用用户名加密码的登录方式; 密钥登录; 密钥登录: SSH登录是用的RSA非对称加密的,SSH密钥登录的时候可使用RSA密钥登录,SSH有专门创建SSH密钥的工具 ssh-keygen 一般的密码方式登录,容易有密码被暴力破解的问题。 将 SSH 的端口设置为默认的 22 以外的

    2024年02月08日
    浏览(62)
  • github ssh密钥配置,克隆远程仓库

    GitHub的SSH配置 在往github上push项目的时候,如果走https的方式,每次都需要输入账号密码,非常麻烦。而采用ssh的方式,就不再需要输入,只需要在github自己账号下配置一个ssh key即可! 很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用

    2024年02月16日
    浏览(49)
  • Gitlab设置ssh密钥详解

    前提条件是,公司的gitlab,运维没有关闭ssh的权限获取,或者叫运维开通那个ssh权限,生成的公钥要给运维那边一个!这样设置是可以成功。 1.在客户端查看有没有密钥 如下图,是找不到ssh的文件夹,证明是没有密钥! 2.在客户端查看当前git的用户名和邮箱 3.输入密码创建

    2023年04月16日
    浏览(47)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包