vscode 远程连接ssh 密钥方式

目录

1. powershell 生成key:

2. 在服务器上安装公钥

3).为了确保连接成功,输入如下指令以保证以下文件权限正确:

3 开启 ssh 密钥登录

vscode 远程连接配置

python连接

python实现


1. powershell 生成key:

在命令行执行ssh-keygen来创建密钥对,默认情况下,会生成一个私钥(id_rsa)和一个公钥(id_rsa.pub

一般保存目录:

C:\Users\xxxx\.ssh

2. 在服务器上安装公钥

1).
拷贝id_rsa.pub中的公钥,并添加到authorized_keys中:

mkdir -p ~/.ssh
# {YOUR_PUB_KEY}是拷贝的公钥,以ssh-rsa开头
echo "{YOUR_PUB_KEY}" >> ~/.ssh/authorized_keys

2). 把 id_rsa.pub文件拷贝到服务器上,

执行覆盖:

cat id_rsa.pub > ~/.ssh/authorized_keys

执行追加:

cat id_rsa.pub >> ~/.ssh/authorized_keys


如此便完成了公钥的安装。

3).为了确保连接成功,输入如下指令以保证以下文件权限正确:

cd /root/.sshchmod 600 authorized_keys 
chmod 700 ~/.ssh

方法2

chmod 600 /root/.ssh/authorized_keys 
chmod 700 /root/.ssh

3 开启 ssh 密钥登录

vim /etc/ssh/sshd_config


将 PubkeyAuthentication 和 AuthorizedKeysFile 这两个选项的注释取消掉AuthorizedKeysFile 选项后面的路径指定了从哪里读取公钥文件

修改完毕重启远程服务器

vscode 远程连接配置

Host xxxxHostName xxxUser xxxPort xxxIdentityFile "C:\Users\xxx\.ssh\id_rsa"


                        
原文链接:https://blog.csdn.net/TheKoi/article/details/129571955

python连接

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

import paramiko  # 导入paramiko库# 创建SSHClient实例
ssh = paramiko.SSHClient()  
# 自动添加未在known_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())  # 通过密钥进行连接
try:ssh.connect(hostname='your_windows_ip', username='your_username', key_filename='path_to_your_private_key')  # 连接到Windowsprint("连接成功!")# 执行命令stdin, stdout, stderr = ssh.exec_command('dir')  # 执行Windows命令print(stdout.read().decode())  # 打印命令输出except Exception as e:print(f"连接失败: {e}")  # 处理异常finally:ssh.close()  # 关闭SSH连接

python实现

"""ssh-copy-id for Windows.
Example usage: python ssh-copy-id.py ceilfors@my-remote-machine
This script is dependent on msysgit by default as it requires scp and ssh.
For convenience you can also try that comes http://bliker.github.io/cmder/.
"""
#ssh-copy-id.py
import argparse, os
from subprocess import calldef winToPosix(win):"""Converts the specified windows path as a POSIX path in msysgit.Example:win: C:\\home\\userposix: /c/home/user"""posix = win.replace('\\', '/')return "/" + posix.replace(':', '', 1)parser = argparse.ArgumentParser()
parser.add_argument("-i", "--identity_file", help="identity file, default to ~\\.ssh\\idrsa.pub",default="C:\\Users\\Administrator\\.ssh\\id_rsa.pub")
parser.add_argument("-d", "--dry", help="run in the dry run mode and display the running commands.",action="store_true")
parser.add_argument("remote", metavar="user@machine")
args = parser.parse_args()local_key = winToPosix(args.identity_file)
remote_key = "~/temp_id_rsa.pub"# Copy the public key over to the remote temporarily
scp_command = "scp {} {}:{}".format(local_key, args.remote, remote_key)
print(scp_command)
if not args.dry:call(scp_command)# Append the temporary copied public key to authorized_key file and then remove the temporary public key
ssh_command = ("ssh {} ""mkdir ~/.ssh;""touch ~/.ssh/authorized_keys;""cat {} >> ~/.ssh/authorized_keys;""rm {};").format(args.remote, remote_key, remote_key)
print(ssh_command)
if not args.dry:call(ssh_command)



重启服务:sudo service ssh restart

查看日志:

cat /var/log/auth.log

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

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

相关文章

【数据库入门】关系型数据库入门及SQL语句的编写

1.数据库的类型: 数据库分为网状数据库,层次数据库,关系型数据库和非关系型数据库四种。 目前市场上比较主流的是:关系型数据库和非关系型数据库。 关系型数据库使用结构化查询语句(SQL)对关系型数据库进行…

【通俗理解】ELBO(证据下界)——机器学习中的“情感纽带”

【通俗理解】ELBO(证据下界)——机器学习中的“情感纽带” 关键词提炼 #ELBO #证据下界 #变分推断 #机器学习 #潜变量模型 #KL散度 #期望 #对数似然 第一节:ELBO的类比与核心概念【尽可能通俗】 ELBO,即证据下界,在…

react后台管理系统(二)

​🌈个人主页:前端青山 🔥系列专栏:React篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来React篇专栏内容:react后台管理系统(二) 前言 本文档旨在详细说明如何在一个基于React的应用程序中实现左侧菜单…

【学习笔记】AD智能PDF导出(装配文件)

2.下一步“NEXT” 3.选择文件名称,下一步“NEXT” 4.可选导出原材料的BOM表 右键选择装配图“Create Assembly Drawings” 5.可以双击下图方框,或者右键需要编辑的标题,选择“Properties”,勾选如下图 6.装配文件,添加…

在win10环境部署opengauss数据库(包含各种可能遇到的问题解决)

适用于windows环境下通过docker desktop实现opengauss部署,请审题。 文章目录 前言一、部署适合deskdocker的环境二、安装opengauss数据库1.配置docker镜像源2.拉取镜像源 总结 前言 注意事项:后面docker拉取镜像源最好电脑有科学上网工具如果没有科学上…

如何构建高效的接口自动化测试框架?

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 在选择接口测试自动化框架时,需要根据团队的技术栈和项目需求来综合考虑。对于测试团队来说,使用Python相关的测试框架更为便捷。无论选…

AI Prompt Engineering

AI Prompt Engineering 简介 Prompt Engineering, 提示工程,是人工智能领域的一项技术,它旨在通过设计高效的提示词(prompts)来优化生成式 AI(如 GPT、DALLE 等)的输出。提示词是用户与生成式 AI 交互的核…

【bug】使用transformers训练二分类任务时,训练损失异常大

使用transformers训练二分类任务时,训练损失异常大 问题分析 问题 training_loss异常大,在二分类损失中,收敛在1~2附近,而eval_loss却正常(小于0.5) 分析 参考: Bug in gradient accumulation…

基于SpringBoot实现的城镇保障性住房管理系统(代码+论文)

🎉博主介绍:Java领域优质创作者,阿里云博客专家,计算机毕设实战导师。专注Java项目实战、毕设定制/协助 📢主要服务内容:选题定题、开题报告、任务书、程序开发、项目定制、论文辅导 💖精彩专栏…

springboot基于SpringBoot的社区居民诊疗健康管理系统

摘 要 社区居民诊疗健康管理系统的建设强化了社区医疗服务与居民之间的联系,优化了健康服务供给,提高了医疗资源的利用效率。它不仅有助于提升居民的健康素养和自我管理能力,也是推动实现全民健康信息化、构建以人为本的健康服务体系的重要步…

VSCode 间距太小

setting->font family 使用:Consolas, Courier New, monospace 字体

IntelliJ+SpringBoot项目实战(九)--整合Thymyleaf模版引擎

一、Thymeleaf 基本介绍 Thymeleaf是一款模板引擎产品,是一款优秀的面向JAVA的XML/XHTML/HTML5页面模板,具有丰富的标签语言和函数。因此,在使用SpringBoot开发前端网页,经常选择Thymeleaf。 在前后端分离框架流行的今天&a…

Python中常用的函数介绍

Python中常用的几种函数 1、input函数 input()函数:主要作用是让用户输入某个内容并接收它。 #输入你的年龄 >>> age input("my age is :") my age is :20 执行代码后输入年龄,年龄被存放到age变量中,执行print后终端会…

【动手学深度学习Pytorch】1. 线性回归代码

零实现 导入所需要的包: # %matplotlib inline import random import torch from d2l import torch as d2l import matplotlib.pyplot as plt import matplotlib import os构造人造数据集:假设w[2, -3.4],b4.2,存在随机噪音&…

亿咖通科技应邀出席微软汽车行业智享会,分享ECARX AutoGPT全新实践

11月14日,全球出行科技企业亿咖通科技(纳斯达克股票代码:ECX)应邀于广州参加由微软举行的汽车行业智享会,揭晓了亿咖通科技对“AI定义汽车”时代的洞察与技术布局,分享了亿咖通科技汽车垂直领域大模型ECARX…

鸿蒙开发学习|Promise的介绍与在鸿蒙中的使用

Promise的介绍与在鸿蒙中的使用 异步编程 学习Promise的开始,我们要先了解异步编程 一般代码的执行是单线程的机制,就是按次序执行,执行完一个任务后,再执行下一个,如果我们在页面加载的同时时候执行一个请求,拿到数据后映射到界面上,这时我们就需要异步操作来执行这个请求 异…

第二课 Model模型资源导入设置检查与优化

上期我们学习了最简单的audio音效的优化,接下来我们继续model模型资源的优化,我将汇总各路大神关于模型优化的思路和方法供你和我学习。 首先我们还是要把我们优化的目标重申一遍: 优化的目标 1.文件体积尽可能小 2.内存占用尽可能小 3.…

小米路由器用外网域名访问管理界面

本文在Redmi AX3000 (RA81)设置,其他型号路由器的管理界面端口可能各不相同。 开始之前需要保证路由器SSH功能正常,如果没有SSH可以参考这里。 1. 给WAN口开放80端口 可以通过下载mixbox的firewall插件或者其他防火墙插件开放端口。 2. 把域名解析到路…

一次需升级系统的wxpython安装(macOS M1)

WARNING: The scripts libdoc, rebot and robot are installed in /Users/用户名/Library/Python/3.8/bin which is not on PATH. 背景:想在macos安装Robot Framework ,显示pip3不是最新,更新pip3后显示不在PATH上 参看博主文章末尾 MAC系统…

Leetcode 求根节点到叶节点数字之和

使用深度优先搜索 DFS 来做 我提供的代码使用的是 深度优先搜索(DFS,Depth-First Search) 算法。以下是具体的算法思想和实现步骤的解释: 算法思想 树的路径代表数字: 树中每条从根节点到叶子节点的路径可以看作一个整…