使用SSH ,让windows和linux互通

news2024/11/26 18:37:00

简介

        SSH 是一种安全网络协议,旨在让客户端和服务器之间进行安全的数据传输。SSH 的核心思想是利用公钥加密技术和共享密钥加密技术相结合的方式,使客户端和服务器之间建立起安全的连接。 当客户端发起连接请求时,服务器会对客户端进行身份验证,以确保它是合法的用户。为了达到这一目的,服务器会把自己的公钥发送给客户端,客户端使用这个公钥对一组随机数据进行加密,并返回给服务器。服务器收到后用自己的私钥解密,从而验证客户端的身份。 一旦客户端的身份得到确认,双方就开始协商共享会话密钥,即一个临时密钥,用于加密随后传输的所有数据。双方各自生成一段密钥,并交换,最终形成一致的会话密钥。这时,所有通过 SSH 发送的数据都会被用这个共享会话密钥进行加密,只有客户端和服务器才知道这个密钥,因此即使数据在传输过程中被截获,也不能被别人解读。 另外,为了防止中间人攻击,SSH 还会在一段时间后自动更新会话密钥。 以上就是 SSH 的基本运行原理,它可以通过这样的加密过程确保客户端和服务器之间数据的安全传输。

作用:当需要同时管理多个集群节点的时候,通过一个客户端就可以进行访问,相对来说就比较方便。

windows必备服务

       使用ssh -V 查看电脑是否安装了SSH ,一般电脑都会自带ssh服务

        

自行安装,非常简单不再累述

然后查看SSH的运行 ,使用Get-Service -Name ssh*

生成密钥

        在需要SSH互通的机器上都需要生成密钥。

1.生成密钥 

ssh-keygen -t rsa -f D://id_rsa

注意如果要免密登录生成密钥时不要输入密码;

复制  D://id_rsa.pub 文件  到服务器的 C:\Users\<user>\.ssh 文件夹 下的 authorized_keys文件,博主的路径为C:\Users\Administrator\.ssh

 

修改配置文件sshd_config,C:\Program Files\Git\etc\ssh,电脑不同路劲也会有些区别。

 

#注释这两行
#Match Group administrators
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

##添加这三行
PubkeyAuthentication yes
AuthorizedKeysFile    .ssh/authorized_keys
PasswordAuthentication yes

说明:

  1. 注释掉 #Match Group administrators 和 #AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys 两行将禁用针对管理员组的匹配和授权密钥文件。

  2. 添加 PubkeyAuthentication yes 一行将启用公钥身份验证。这意味着客户端连接到 SSH 服务器时将需要使用公钥和私钥进行身份验证,而不是使用密码。

  3. 添加 AuthorizedKeysFile .ssh/authorized_keys 一行将指定验证用户身份时要检查的授权密钥文件。默认情况下,SSH 服务器会在用户的家目录下查找名为 .ssh/authorized_keys 的文件。

  4. 修改 PasswordAuthentication yes 一行将启用密码身份验证。这意味着客户端连接到 SSH 服务器时,可以使用密码进行身份验证。

增加IP映射

修改文件 C:\Windows\System32\drivers\etc\hosts。

增加你需要的服务器名和IP  

格式: IP地址 <空格> hostname 

重启服务

使用指令services.msc  打开服务列表,并启动openssh。

linux配置

        编辑IP映射文件vim /etc/hostname

格式IP地址 <空格> hostname 

windows中查看本地机的IP使用ipconfig   查看本地机的hostname 使用hostname 

 在虚拟机中生成密钥

ssh-keygen-t rsa
此时会同步创建一个.ssh/  的文件夹   文件夹下方有两个文件,( cp id_rsa,cp id_rsa.pub)。将 id_rsa.pub文件备份一分为 authorized_keys

授权

chmod 700 .ssh/

chmod 700 .ssh/*

说明:

第一段指令:chmod 700 .ssh/ 会给整个 .ssh 目录赋予 700 权限,只允许所有者对该目录具有读写执行权限。

第二段指令:chmod 600 .ssh/* 会给 .ssh 目录下的所有文件赋予 600 权限,只允许所有者对该文件具有读写权限。

测试

使用ssh   用户名@hostname   便可以登录任意节点

第一次登录任意节点都需要yes  确认一下。

C:\>ssh hadoop@vm10
The authenticity of host 'vm10 (10.0.0.110)' can't be established.
ED25519 key fingerprint is SHA256:yUxCtH472lSUYgAgJqeOE9lvAiaMBwPO78SogOujnH4.
This host key is known by the following other names/addresses:
    C:\Users\Administrator/.ssh/known_hosts:1: vm08
    C:\Users\Administrator/.ssh/known_hosts:4: vm09
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'vm10' (ED25519) to the list of known hosts.
hadoop@vm10's password:
Last login: Mon Nov  6 10:11:33 2023 from vm08
[hadoop@vm10 ~]$ exit

使用方式登录到节点,命令适合对应服务器的操作命令匹配。 

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

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

相关文章

python的format函数的用法及实例

目录 1.format函数的语法及用法 &#xff08;1&#xff09;语法&#xff1a;{}.format() &#xff08;2&#xff09;用法&#xff1a;用于格式化字符串。可以接受无限个参数&#xff0c;可以指定顺序。返回结果为字符串。 2.实例 &#xff08;1&#xff09;不设置位置&…

RK3568平台开发系列讲解(音视频篇)RTMP 推流

🚀返回专栏总目录 文章目录 一、RTMP 的工作原理二、RTMP 流媒体服务框架2.1、Nginx 流媒体服务器2.2、FFmpeg 推流沉淀、分享、成长,让自己和他人都能有所收获!😄 📢目前常见的视频监控和视频直播都是使用了 RTMP、RTSP、HLS、MPEG-DASH、 WebRTC流媒体传输协议等。 R…

学习Opencv(蝴蝶书/C++)相关——2.用clang++或g++命令行编译程序

文章目录 1. c/cpp程序的执行1.1 cpp程序的编译过程1.2 预处理指令1.3 编译过程的细节2. macOS下使用Clang看cpp程序的编译过程2.1 示例2.1.1 第一步 预处理器-preprocessor2.1.2 第二步 编译器-compiler2.1.3 第三步 汇编器-assembler2.1.4 第四步 链接器-linker2.1.5 链接其他…

git commit规范提交

Git每次提交代码时&#xff0c;都要写Commit Message&#xff08;提交说明&#xff09;&#xff0c;通常情况下&#xff0c;Commit Message应该清晰明了&#xff0c;说明本次提交的目的和具体操作等。然而笔者工作多年来发现&#xff0c;有些公司对Commit Message没有明确的要求…

10 索引优化与查询优化

文章目录 索引失效案例关联查询优化对于左外连接对于内连接JOIN语句原理简单嵌套循环连接SNLJ索引嵌套循环连接INLJ块嵌套循环连接BNLJHash Join 子查询优化排序优化filesort算法&#xff1a;双路排序和单路排序 分组优化分页优化优先考虑覆盖索引索引下推ICP使用条件 其他查询…

[移动通讯]【Carrier Aggregation-13】【Carrier Aggregation】

前言&#xff1a; 前面分享过不同note CA 技术文档 这里主要参考 4G|ShareTechnote 《Carrier Aggregation》 CA SCell 添加的小区的流程&#xff1a; SCell addition and removal&#xff1a; 1 The carrier aggregation additional SCells cannot be activated immediately…

Firefox 119 正式发布

Firefox 119 已正式发布。新版本除了修复 Bug 之外&#xff0c;还增强了 Firefox View 功能、支持在 PDF 文档中插入图片&#xff0c;以及引入 Encrypted Client Hello (ECH) 以增强隐私保护等。 主要变化 改进 Firefox View&#xff1a;用户可以在该页面查看所有窗口打开的标…

uniapp 微信小程序 uni-file-picker上传图片报错 chooseAndUploadFile

这个问题真的很搞&#xff0c; 原因是微信开发者工具更新了&#xff0c;导致图片上传问题。 解决方法&#xff1a; 将微信开发者工具的基础库改为2.33.0一下即可。 在微信开发者工具详情 - 本地设置中&#xff08;记得点击‘推送’按钮&#xff09;&#xff1a;

20.8 OpenSSL 套接字SSL传输文件

有了上面的基础那么传输文件的实现就变得简单了&#xff0c;在传输时通常我们需要打开文件&#xff0c;并每次读入1024个字节的数据包&#xff0c;通过SSL加密传输即可&#xff0c;此处的文件传输功能在原生套接字章节中也进行过详细讲解&#xff0c;此处我们还是使用原来的密钥…

Spark 基础知识点

Spark 基础 本文来自 B站 黑马程序员 - Spark教程 &#xff1a;原地址 什么是Spark 什么是Spark 1.1 定义&#xff1a;Apache Spark是用于大规模数据&#xff08;large-scala data&#xff09;处理的统一&#xff08;unified&#xff09;分析引擎 Spark最早源于一篇论文 Re…

Linux 学习(CentOS 7)

CentOS 7 学习 Linux系统内核作者: Linux内核版本 内核(kernel)是系统的心脏&#xff0c;是运行程序和管理像磁盘和打印机等硬件设备的核心程序&#xff0c;它提供了一个在裸设备与应用程序间的抽象层。 Linux内核版本又分为稳定版和开发版&#xff0c;两种版本是相互关联&am…

深度优先遍历与连通分量

深度优先遍历(Depth First Search)的主要思想是首先以一个未被访问过的顶点作为起始顶点&#xff0c;沿当前顶点的边走到未访问过的顶点。当没有未访问过的顶点时&#xff0c;则回到上一个顶点&#xff0c;继续试探别的顶点&#xff0c;直至所有的顶点都被访问过。 下图示例的…

设置Linux时间格式

一、事因 不知道什么时候我在输入ls -l 命令时候的显示变成了。 -rw-r--r-- 1 bossftp ftp 6796376499 915 05:31 rac_full_20230915.gz -rw-r--r-- 1 bossftp ftp 6804104515 104 05:25 rac_full_20231024.gz -rw-r--r-- 1 bossftp ftp 6804365525 105 05:29 rac_full_202…

技术分享 | Selenium多浏览器处理

实战演示 Python 版本 #导入依赖 import os from selenium import webdriverdef test_browser():#使用os模块的getenv方法来获取声明环境变量browserbrowser os.getenv("browser").lower()#判断browser的值if browser "headless":driver webdriver.Ph…

python web框架 flask基础入门教程

python web框架 flask基础入门教程 今天我们写一个flask基础入门教程&#xff0c;当然也会覆盖很多重要的知识点&#xff0c;在这篇博客中&#xff0c;我们主要会讲解如下内容&#xff1a; 1、通过flask框架向web传输和接收参数 2、实现静态图片插入和图书上传 3、实现搭建…

函数调用指令, 返回机制分析(x86_64)

预备 #include <stdio.h>int addDetail(int a, int b) {return a b; }int add(int a, int b) {int c;c addDetail(a, b);return c; }int main(int argc, char *argv[]) {int sum;sum add(3, 5);printf("sum %d\n", sum);return 0; }汇编 main add addDeta…

前端食堂技术周刊第 103 期:10 月登陆 Web 平台的新功能、TS 5.3 RC、React 2023 状态、高并发的哲学原理、Web 资源加载优先级

美味值&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f; 口味&#xff1a;夏梦玫珑 食堂技术周刊仓库地址&#xff1a;https://github.com/Geekhyt/weekly 大家好&#xff0c;我是童欧巴。欢迎来到前端食堂技术周刊&#xff0c;我们先来看下…

数据集划分:手动划分文件夹中的图片数据集为训练集、验证集和测试集

1.需求 手动划分文件夹中的图片数据集为训练集、验证集和测试集&#xff0c;即进行文件夹中的数据集&#xff08;都是图片&#xff09;进行划分。 2.步骤 使用文件处理库&#xff08;如os&#xff09;遍历读取文件夹中的图片文件。将读取到的图片文件路径存储到列表中。打乱…

8、Python模块和包:导入模块、创建自己的模块和包

文章目录 Python模块和包:导入模块、创建自己的模块和包导入模块创建自己的模块创建包使用相对导入结论Python模块和包:导入模块、创建自己的模块和包 Python是一种功能强大的编程语言,它的模块和包系统是其强大功能的基石之一。在Python中,模块是包含Python定义和声明的文…

【MySQL事务篇】多版本并发控制(MVCC)

多版本并发控制(MVCC) 文章目录 多版本并发控制(MVCC)1. 概述2. 快照读与当前读2.1 快照读2.2 当前读 3. MVCC实现原理之ReadView3.1 ReadView概述3.2 设计思路3.3 ReadView的规则3.4 MVCC整体操作流程 4. 举例说明4.1 READ COMMITTED隔离级别下4.2 REPEATABLE READ隔离级别下 …