当前位置: 首页 > news >正文

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.mrgr.cn/news/77723.html

相关文章:

  • hive3.1.2编译spark3安装包
  • 何以解忧-解决python问题的辛酸泪
  • PostgreSQL WITH 子句:提高查询效率和可读性
  • excel打开csv文件乱码的问题
  • 排序算法:直接插入排序,希尔排序,选择排序,快速排序,堆排序,归并排序
  • YOLOv8-ultralytics-8.2.103部分代码阅读笔记-block.py
  • Python 神经网络项目常用语法
  • 葡萄酒(wine)数据集——LDA、贝叶斯判别分析
  • 力扣整理版八:回溯算法(待更新)
  • ReactPress vs VuePress vs WordPress
  • Java进阶五 -IO流
  • 【代码随想录day36】【C++复健】1049. 最后一块石头的重量 II ; 494. 目标和 ;474.一和零
  • 大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结
  • 大语言模型---ReLU函数的计算过程及其函数介绍
  • 计算机网络实验
  • 【Oracle实战】文章导读
  • 大语言模型中Softmax函数的计算过程及其参数描述
  • JS文件相关✅
  • GPT系列文章
  • buuoj WEB做题笔记
  • STL中vector实现——简单易懂版
  • Kylin Server V10 下基于Sentinel(哨兵)实现Redis高可用集群
  • 【笔记】Android Gradle Plugin配置文件相关说明-libs.versions.toml
  • win10 mmpose mmdeploy mmaction2
  • 单元测试框架gtest学习(二)—— 认识断言
  • Java开发者必备:23种设计模式全面解析