ssh配置 远程控制 远程协作 github本地配置

0.设备版本

windows11
ubuntu24.0.4
 1.1 在 Linux 上启用 SSH 服务

首先,确保 Linux 计算机上安装并启用了 SSH 服务。

安装和启动 OpenSSH 服务(如果未安装)
# 在终端安装 OpenSSH 服务(如果尚未安装)
sudo apt update
sudo apt install openssh-server
检查 SSH 服务状态

确认 SSH 服务正在运行:

sudo systemctl status ssh

 如果服务没有运行,可以启动它:

sudo systemctl start ssh

# 如果希望 SSH 服务在系统启动时自动启动,可以使用以下命令:
sudo systemctl enable ssh

  1.2 在 Windows 上安装 OpenSSH 客户端

打开 PowerShell(管理员模式)并运行:

Add-WindowsCapability -Online -Name OpenSSH.Client

 确认 OpenSSH 客户端已经安装并能够使用:

ssh -V

1.3 生成SSH密钥对

1.3.1 在windows平台上生成 SSH 密钥对

SSH 密钥对用于认证,可以避免每次连接时输入密码。你可以在任意计算机上生成 SSH 密钥对,并将公钥复制到对方计算机。

ssh-keygen -t rsa -b 4096 -f C:\Users\<YourUsername>\.ssh\id_rsa

记得更改<YourUsername> ,在 C:\Users\<YourUsername>\.ssh 目录下会生成两个文件:

  • id_rsa(私钥,保密,不要与他人共享)
  • id_rsa.pub(公钥,可以与其他计算机共享,通常用于将公钥添加到远程服务器)

PS:ssh-keygen 是 OpenSSH 提供的用于生成和管理 SSH 密钥对的命令。通过 -t rsa 选项指定使用 RSA 加密算法生成密钥,这是一种广泛采用的公钥加密方式,其他可选类型包括 DSA(dss)、椭圆曲线(ecdsa)及更高效的 Ed25519(ed25519)等。-b 4096 定义了密钥长度为 4096 位,较长的位数提升了安全性(尤其适用于敏感场景),但生成和使用时略慢于常见的 2048 位标准。-f ~/.ssh/mykey 则自定义密钥存储路径和文件名,生成的私钥(mykey)需严格保密,公钥(mykey.pub)可自由分发并添加到远程服务器的授权列表中。默认情况下,密钥会保存在用户主目录的 .ssh 文件夹内,该目录通常用于集中管理 SSH 相关配置与密钥文件。

 配置成功你将看到:

1.3.2 在Linux平台上生成 SSH 密钥对

ssh-keygen -t rsa -b 4096 -f ~/.ssh/mykey

        内容几乎与windows平台一致。

1.4 将公钥复制到对方计算机

 1.4.1 将 Windows 公钥添加到 Linux 计算机

将 Windows 上的 id_rsa.pub 公钥复制到 Linux 上,Linux 计算机的 ~/.ssh/authorized_keys 文件中:

# 打开 PowerShell,在 Windows 上查看公钥:
cat C:\Users\<YourUsername>\.ssh\id_rsa.pub


# 在 Linux 计算机,将公钥复制到 ~/.ssh/authorized_keys 文
# 使用终端将公钥粘贴到 Linux 上的 authorized_keys 文件中
echo "<Windows Public Key>" >> ~/.ssh/authorized_keys

  在.ssh文件夹下一般有三个文件:authorized_keys mykey mykey.pub,authorized_keys 是一个非常重要的文件,用于存储 SSH 公钥。它的作用是允许持有对应私钥的用户无需密码即可通过 SSH 登录到当前系统。

  • 记住文件内容要全部复制

  • authorized_keys 文件可以包含多个公钥,每个公钥占一行。

  1.4.2 在Linux 平台上生成 SSH 密钥对

        将 Linux 上的 id_rsa.pub 公钥复制到 Windows 上的 authorized_keys 文件中。首先,确保 Windows 上的 C:\Users\<YourUsername>\.ssh 目录存在,然后将 Linux 的公钥复制到该目录下的 authorized_keys 文件中,如果没有authorized_keys文件请创建。

1.5 连接与测试

1.5.1 从 Windows 连接到 Linux

在 Windows 上,使用以下命令连接到 Linux 计算机:

ssh <username>@<linux-ip-address>

# 可以通过:
whoami # 获取用户名
ip addr show # 获取ip地址

在接口信息中,查找 inet 开头的一行,后面跟着的就是 IPv4 地址。例如:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:00:00:0a brd ff:ff:ff:ff:ff:ff
    inet **192.168.1.100**/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe00:a/64 scope link
       valid_lft forever preferred_lft forever

这里的ip地址是192.168.1.100,而127.0.0.1 (localhost/本地主机): 这个 IP 地址是回环地址,指的是你自己的电脑。

示例:

绿色命令行处代码已经远程连接成功。

 1.5.2 从 Linux 连接到 Windows

ipconfig # 获取ip地址
无线局域网适配器 WLAN:

   连接特定的 DNS 后缀 . . . . . . . :
   IPv6 地址 . . . . . . . . . . . . : 240e:3b2:3872:3b60:5da8:b5fe:7090:f908
   临时 IPv6 地址. . . . . . . . . . : 240e:3b2:3872:3b60:b0d1:a22d:3fc2:8028
   本地链接 IPv6 地址. . . . . . . . : fe80::49f5:aa1d:b3d6:fedf%9
   IPv4 地址 . . . . . . . . . . . . : 172.16.103.47
   子网掩码  . . . . . . . . . . . . : 255.255.252.0
   默认网关. . . . . . . . . . . . . : fe80::1%9
                                       172.16.100.1

上面IPv4 地址172.16.103.47

1.6 快捷设置

~/.ssh/config 文件中配置,没有则创建

Host linux
    HostName <linux-ip-address>
    User <username>
    IdentityFile ~/.ssh/id_rsa

然后你可以使用简化的命令连接:

ssh linux

2.1 SSH 文件传输功能

SCP(Secure Copy Protocol)是一个通过 SSH 进行文件传输的工具。它可以在本地计算机和远程计算机之间传输文件或目录。

scp 本地文件路径 用户名@远程服务器IP地址:远程目标路径

示例:

显示文件正在传输,进度为27%。 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言数据结构—堆的应用及Topk问题

目录 1、堆排序 1、把数组先原地调整成堆 1.1 向上调整 1.2 向下调整 1.3 两种调整方式的时间复杂度分析 2、进行排序 1、堆排序 堆排序即利用堆的思想来进行排序&#xff0c;总共分为两个步骤&#xff1a; 1、建堆 升序&#xff1a;建大堆 降序&#xff1a;建小堆 2、利…

贪心算法精品题

1.找钱问题 本题的贪心策略在于我们希望就可能的保留作用大的5元 class Solution { public:bool lemonadeChange(vector<int>& bills) {std::map<int ,int> _map;for(auto ch:bills){if(ch 5) _map[ch];else if(ch 10){if(_map[5] 0) return false;else{_m…

【Blender】三、材质篇--01,Blender材质基础 原理化BSDF

0 00:00:05,460 --> 00:00:09,980 好 材质篇上一张呢 我们做了12个模型 我知道大家很想把它晒出来 1 00:00:10,440 --> 00:00:17,360 但是咱们先把材质学了吧 学材质 我们只要抓住那些对精髓的东西就好了 能够用手试出来的东西呢 你 2 00:00:17,530 --> 00:00:30,37…

博客系统完整开发流程

前言 通过前⾯课程的学习, 我们掌握了Spring框架和MyBatis的基本使用, 并完成了图书管理系统的常规功能开发, 接下来我们系统的从0到1完成⼀个项⽬的开发. 企业开发的流程 1. 需求评审(产品经理(PM)会和运营(想口号),UI,测试,开发等沟通) ,会涉及到背景/目标/怎么做,可能会有多…

iOS App的启动与优化

App的启动流程 App启动分为冷启动和热启动 冷启动&#xff1a;从0开始启动App热启动&#xff1a;App已经在内存中&#xff0c;但是后台还挂着&#xff0c;再次点击图标启动App。 一般对App启动的优化都是针对冷启动。 App冷启动可分为三个阶段&#xff1a; dyld&#xff1a…

一键导出数据库表到Excel

工作中&#xff0c;我们经常需要将数据库表导出到Excel&#xff0c;通常我们会用数据库编辑器之类的工具提供的导出功能来导出&#xff0c;但是它们的导出功能通常都比较简单。 这篇文章将介绍一种简单易用并且功能强大的导出方法。 新增导出 打开的卢导表工具&#xff0c;新…

1.1部署es:9200

安装es&#xff1a;root用户&#xff1a; 1.布署java环境 - 所有节点 wget https://d6.injdk.cn/oraclejdk/8/jdk-8u341-linux-x64.rpm yum localinstall jdk-8u341-linux-x64.rpm -y java -version 2.下载安装elasticsearch - 所有节点 wget ftp://10.3.148.254/Note/Elk/…

基于YOLO11深度学习的半导体芯片缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

财务运营域——营收稽核系统设计

摘要 本文主要介绍了营收稽核系统的背景、特点与作用。营收稽核系统的产生源于营收管理复杂性、财务合规与审计需求、提升数据透明度与决策效率、防范舞弊与风险管理、技术进步与自动化需求、多元化业务模式以及跨部门协作与数据整合等多方面因素。其特点包括自动化与智能化、…

SpringCloud系列教程:微服务的未来(二十五)-基于注解的声明队列交换机、消息转换器、业务改造

前言 在现代分布式系统中&#xff0c;消息队列是实现服务解耦和异步处理的关键组件。Spring框架提供了强大的支持&#xff0c;使得与消息队列&#xff08;如RabbitMQ、Kafka等&#xff09;的集成变得更加便捷和灵活。本文将深入探讨如何利用Spring的注解驱动方式来配置和管理队…

速通HTML

目录 HTML基础 1.快捷键 2.标签 HTML进阶 1.列表 a.无序列表 b.有序列表 c.定义列表 2.表格 a.内容 b.合并单元格 3.表单 a.input标签 b.单选框 c.上传文件 4.下拉菜单 5.文本域标签 6.label标签 7.按钮标签 8.无语义的布局标签div与span 9.字符实体 HTML…

ui设计公司兰亭妙微分享:科研单位UI界面设计

科研单位的UI界面设计是一项至关重要的任务&#xff0c;它不仅关乎科研工作的效率&#xff0c;还直接影响到科研人员的用户体验。以下是对科研单位UI界面设计的详细分析&#xff1a; 一、设计目标 科研单位的UI界面设计旨在提升科研工作的效率与便捷性&#xff0c;同时确保科…

蓝桥杯刷题-dp-线性dp(守望者的逃离,摆花,线段)

[NOIP 2007 普及组] 守望者的逃离 题目描述 恶魔猎手尤迪安野心勃勃&#xff0c;他背叛了暗夜精灵&#xff0c;率领深藏在海底的娜迦族企图叛变。 守望者在与尤迪安的交锋中遭遇了围杀&#xff0c;被困在一个荒芜的大岛上。 为了杀死守望者&#xff0c;尤迪安开始对这个荒岛…

【算法设计与分析】(一)介绍算法与复杂度分析

【算法设计与分析】&#xff08;一&#xff09;介绍算法与复杂度分析 前言一、什么是算法&#xff1f;二、算法的抽象机制三、描述算法四、复杂度分析4.1 时间复杂度4.2 空间复杂度 前言 从搜索引擎的高效检索&#xff0c;到推荐系统的个性化推荐&#xff0c;再到人工智能领域…

自动驾驶两个传感器之间的坐标系转换

有两种方式可以实现两个坐标系的转换。 车身坐标系下一个点p_car&#xff0c;需要转换到相机坐标系下&#xff0c;旋转矩阵R_car2Cam&#xff0c;平移矩阵T_car2Cam。点p_car在相机坐标系下记p_cam. 方法1&#xff1a;先旋转再平移 p_cam T_car2Cam * p_car T_car2Cam 需要注…

OpenGL ES -> GLSurfaceView绘制点、线、三角形、正方形、圆(顶点法绘制)

XML文件 <?xml version"1.0" encoding"utf-8"?> <com.example.myapplication.MyGLSurfaceViewxmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"…

基于springboot大学生学科竞赛管理系统(源码+lw+部署文档+讲解),源码可白嫖!

摘要 学科竞赛一直是检测学生学习能力好坏的重要手段&#xff0c;随着社会的发展&#xff0c;学科竞赛已经渗透到各个方面。但是传统方式的竞赛方式已经不能更好的胜任越来越多的需求&#xff0c;所以需要设计一个大学生学科竞赛管理系统&#xff0c;来满足日益重要的学科竞赛…

Dify私有化部署自己的AI Agent

1、下载Dify git clone gitgithub.com:langgenius/dify.git 2、创建Dify配置 进入dify目录下的docker目录中,复制.env.example为 .env 3、使用Docker命令进行部署Dify docker compose up -d 4、访问Dify http://localhost/install 5、 设置模型供应商 配置环境变量&#xff1…

【Deepseek+Browser-Use搭建 Web UI自动化】

参考文档&#xff1a;browser-use WebUI DeepSeek V3 把浏览器整成自动化了!_browser use webui 执行run agent chrome没出来-CSDN博客 1、 安装完成&#xff1a; 三、安装步骤&#xff08;适用于macOs、windows、linux&#xff09; 1、拉取WebUI项目 git clone https://gi…

DeepSeek + Mermaid编辑器——常规绘图

下面这张图出自&#xff1a;由清华大学出品的 《DeepSeek&#xff1a;从入门到精通》。 作为纯文本生成模型&#xff0c;DeepSeek虽不具备多媒体内容生成接口&#xff0c;但其开放式架构允许通过API接口与图像合成引擎、数据可视化工具等第三方系统进行协同工作&#xff0c;最终…