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

devtools/2025/3/1 19:18:46/

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 1000link/ether 08:00:27:00:00:0a brd ff:ff:ff:ff:ff:ffinet **192.168.1.100**/24 brd 192.168.1.255 scope global eth0valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe00:a/64 scope linkvalid_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%9IPv4 地址 . . . . . . . . . . . . : 172.16.103.47子网掩码  . . . . . . . . . . . . : 255.255.252.0默认网关. . . . . . . . . . . . . : fe80::1%9172.16.100.1

上面IPv4 地址172.16.103.47

1.6 快捷设置

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

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

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

ssh linux

2.1 SSH 文件传输功能

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

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

示例:

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


http://www.ppmy.cn/devtools/163704.html

相关文章

python-leetcode-第 N 个泰波那契数

1137. 第 N 个泰波那契数 - 力扣&#xff08;LeetCode&#xff09; 解法 1&#xff1a;递归&#xff08;O(3^n)&#xff0c;不推荐&#xff09; 递归直接按照数学定义实现&#xff0c;但时间复杂度高&#xff0c;不适合大 n。 class Solution:def tribonacci(self, n: int) -…

Linux:ELF文件-静动态库原理

✨✨所属专栏&#xff1a;Linux✨✨ ✨✨作者主页&#xff1a;嶔某✨✨ ELF文件 什么是编译&#xff1f;编译就是将程序源代码编译成能让CPU直接执行的机器代码 如果我们要编译一个 .c文件&#xff0c;使用gcc -c将.c文件编译为二进制文件.o &#xff0c;如果一个项目有多个.…

Grok3使用体验与模型版本对比分析

文章目录 Grok的功能DeepSearch思考功能绘画功能Grok 3的独特功能 Grok 3的版本和特点与其他AI模型的比较 最新新闻&#xff1a;Grok3被誉为“地球上最聪明的AI” 最近&#xff0c;xAI公司正式发布了Grok3&#xff0c;并宣称其在多项基准测试中展现了惊艳的表现。据官方消息&am…

飞鱼科技游戏策划岗内推

协助策划完成相关工作&#xff0c;包括但不仅限于策划配置&#xff0c;资料搜集&#xff0c;游戏体验&#xff1b; 游戏策划相关作品&#xff1b;游戏大赛经历&#xff1b;游戏demo制作经历&#xff1b;游戏公司策划岗位实习经历优先 内推码 DSZP7YFU

【面试】Java 之 String 系列 -- String 为什么不可变?

在 Java 编程中&#xff0c;String 类是一个使用频率极高的类。而 String 对象具有不可变的特性&#xff0c;这一特性在 Java 设计中有着重要的意义。本文将深入探讨 String 不可变的含义、原因以及带来的好处。 一、String 不可变的含义 1. 概念解释 所谓 String 不可变&am…

使用torch.compile进行CPU优化

在PyTorch中&#xff0c;使用torch.compile可以自动地将模型转换成优化的执行代码&#xff0c;这对于提升模型在CPU上的运行效率尤其有用。torch.compile是基于TorchDynamo实现的&#xff0c;它可以将Python代码转换为高效的TorchScript代码。这对于那些在CPU上运行的大型模型尤…

AI人工智能机器学习之聚类分析

1、概要 本篇学习AI人工智能机器学习之聚类分析&#xff0c;以KMeans、AgglomerativeClustering、DBSCAN为例&#xff0c;从代码层面讲述机器学习中的聚类分析。 2、聚类分析 - 简介 聚类分析是一种无监督学习的方法&#xff0c;用于将数据集中的样本划分为不同的组&#xff…

DeepSeek 提示词:常见指令类型

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;精通Java编…