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

Windows机器安装SSH搭建,自己搞个局域网机房玩一玩

Windows机器安装SSH搭建

  • 为啥要装SSH
  • 安装OpenSSH
    • 使用 Windows 设置来安装 OpenSSH
    • ps脚本在线安装
    • ps脚本离线安装
    • 其他二进制安装包安装

为啥要装SSH

家里有多台Win机器,一台主机两个笔记本,本着不浪费的原则,打算把它们在平时的工作学习中利用起来。

在这里插入图片描述

家里的三台电脑都链接了同一个路由器,所有设备都在同一个子网下面,那么只需要开启端口确定协议,那么所有设备均可以进行互通互联,包括Android手机也可以使用ADB工具进行控制,那就可以抱着笔记本Surface(一台非常轻的电脑)躺床上远程开发。

让我们梳理下目标:

  • 使用笔记本连上台式机上远程开发
  • 开发时提供集成环境(组件这些东西当然交给台式机啦)
  • 控制Android手机进行一些自动化操作(需要将手机通过USB链接电脑并打开调试模式)

既然咱们目标确定了,那么来这些目标怎么实现呢,笔者以前操作linux比较多,那肯定毫无疑问,SSH协议通信必须是我最佳选择,再通过使用zshpowershellbash就能控制家里的所有设备了,嘻嘻,果然懒就是生产力。

安装OpenSSH

如果你有曾经有安装过git的话,那么指不定你的电脑可能已经存在ssh客户端了,客户端只能是让你的机器有了链接别人的能力。
下图就是ssh-client已安装并且已经配置到环境变量中。
使用CMD,或者powershell均可以执行ssh username@hostname,结合快捷键win+R食用更佳方便。
在这里插入图片描述

举个例子,你要约喜欢的女孩子去看电影,那么你得先要有时间+获取到电影票的能力,而你喜欢的女孩子没有时间,那就算你发起“请求”(邀约),也肯定不能约到的。
在这里插入图片描述
上图就是192.168.1.9这台机器不支持SSH协议链接,导致请求被拒(;´д`)ゞ
因此我们为了能链接上目标机器,需要给目标机器安装好能够接收到我们请求的服务端,即OpenSSH-Server。


接下来笔者会介绍三种安装OpenSSH的方法,更推荐脚本离线安装,又快又稳。

曾经笔者为了管理上百台windos服务器就是用的这个方法安装的,那服务器绝了,windowsXP、windows98 都有,这是没想到的。

使用 Windows 设置来安装 OpenSSH

可以使用 Windows Server 2019 和 Windows 10 设备上的 Windows 设置安装这两个 OpenSSH 组件。

  1. 打开“设置”,选择“应用” >“应用和功能”
  2. 然后选择“可选功能”,扫描列表,查看是否已安装 OpenSSH。
    在这里插入图片描述
    如果未安装,请在页面顶部选择“添加功能”,然后:
    在这里插入图片描述
    查找“OpenSSH 客户端”,再单击“安装”
    查找“OpenSSH 服务器”,再单击“安装”
    设置完成后,回到“应用”>“应用和功能”和“可选功能”,你应会看到已列出 OpenSSH
    在这里插入图片描述
    这种安装方法其实和ps脚本在线安装差不多,但这种安装貌似不支持同时安装sftp这种工具,并且安装可能还会失败(可能是受到网络限制)。

ps脚本在线安装

这个安装方式就很简单了,不过要使用这种安装方式必须检查电脑上是否支持Get-WindowsCapability这种powershell命令,一般Windows10机器都是支持的,问题不大,笔者是Win11必然没问题,就挺酷hhh
微软官方参考

打开Powershell,或者再CMD中执行一下下powershell,使终端中激活Powershell环境。

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

如果你客户端和服务端都没有安装,则会出现

Name  : OpenSSH.Client~~~~0.0.1.0
State : NotPresentName  : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

然后,根据需要安装服务器或客户端组件:

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

安装过程中会出现如下图的进度条,反正……慢的很
在这里插入图片描述
无论Client还是Server安装好后都会出现,这样就算安装好了。

Path          :
Online        : True
RestartNeeded : False

ps脚本离线安装

这个安装就需要先去github下载release的制品,点击右侧release

选择符合你版本的zip文件,我选择的是OpenSSH-Win64.zip
在这里插入图片描述
下载好后放到你期望的目录下解压,并进入Terminal
在这里插入图片描述
在终端执行install-sshd.ps1,执行安装脚本,此处执行一定要是管理员身份!!
在这里插入图片描述
打开install-sshd.ps1脚本我们就可以看到,其实是主要是将目录中的一些exe文件注册到了服务列表中,并将其添加到了机器变量中。

New-Service -Name sshd -DisplayName "OpenSSH SSH Server" -BinaryPathName "$sshdpath" -Description $sshdDesc -StartupType Manual | Out-Null

最后我们看到如下就算安装成功了

sshd and ssh-agent services successfully installed

如果需要在防火墙中添加入栈规则,执行如下命令,这样别人访问你机器的22端口就不会被拦截了

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

其他二进制安装包安装

二进制安装就是指安装包一键安装,也是在GitHub下载,下载msi后缀的就可以了,根据自己电脑的cpu指令集架构下载就行。
在这里插入图片描述

相关文章:

Windows机器安装SSH搭建,自己搞个局域网机房玩一玩

Windows机器安装SSH搭建为啥要装SSH安装OpenSSH使用 Windows 设置来安装 OpenSSHps脚本在线安装ps脚本离线安装其他二进制安装包安装为啥要装SSH 家里有多台Win机器,一台主机两个笔记本,本着不浪费的原则,打算把它们在平时的工作学习中利用起…...

二叉树的前序遍历(力扣144)

目录 题目描述: 解法一:递归法 解法二:迭代法 解法三:Morris 遍历 二叉树的前序遍历 题目描述: 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root […...

【数据库管理】①实例与数据库

1.Oracle RDBMS 架构图 2. Oracle 体系结构 由此区分database和instance的区别 No.1.oracle serverdatabase instance2.databasedata file、control file、redo log file3.instancean instance accesses a database4.oracle memorySGA PGA(oracle的内存结构)5.instanceSGA …...

vba:单元格的选择,查找,合并,批注,SpecialCells,图形插入

一: 活动单元格:activecell,工作表中活动单元格只有一个 Sub activecells() a activecell.Address 取得活动单元格地址 Cells(2, 3).Activate 激活指定单元格 End Sub selection光标所选区域 Sub 光标所选区域() Selection 1 End Sub Sub …...

【内网安全】横向移动域控提权NetLogonADCSPACKDC永恒之蓝

文章目录章节点横向移动-系统漏洞-CVE-2017-0146(永恒之蓝)影响版本插件检测-横向移动CS联动MSF-检测&利用横向移动-域控提权-CVE-2014-6324横向移动-域控提权-CVE-2020-1472影响版本横向移动-域控提权-CVE-2021-42287前提条件影响版本python版本EXP利用过程C#版本EXP利用过…...

将本地项目上传到远程仓库的步骤

文章目录将本地项目上传到远程仓库的步骤1.进入想上传的项目文件夹2.初始化本地仓库3.添加该项目下的所有文件4.将文件添加到本地仓库中5.添加远程仓库6.将文件更新到远程仓库上7.将本地文件推送回到指定的远程仓库中将本地项目上传到远程仓库的步骤 1.进入想上传的项目文件夹…...

selenium+opencv实现模拟登陆(滑块验证码)

很多网站登录登陆时都要用到滑块验证码,在某些场景例如使用爬虫爬取信息时常常受到阻碍,想着用opencv的模板匹配试试能不能实现模拟登陆。本来觉得网上资料多应该还蛮容易,但实际上手还是搞了蛮久,在这里记录一下整个流程&#xf…...

辽宁申请互联网医院牌照流程

辽宁申请互联网医院牌照流程|沈阳市|大连市|鞍山市|抚顺市|本溪市|丹东市|锦州市|营口市|阜新市|辽阳市|盘锦市|铁岭市|朝阳市|葫芦岛市   很多的人对互联网医院都不是很了解,也不太清楚互联网医院牌照怎么申请,其实牌照申请每个地区都不太一样&#x…...

java实现布隆过滤器

什么是布隆过滤器 布隆过滤器(Bloom Filter)是1970年由布隆提出来的。 它实际上是由一个很长的二进制数组一系列hash算法映射函数,用于判断一个元素是否存在于集合中。 布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和…...

gitlab部署及整合Jenkins持续构建(三)nexus私服的安装及实战、linux安装mysql

文章目录敏捷持续集成是什么?linux安装jdk和maven安装jdk安装mavenlinux安装nexus3.xnexus私服的使用编译安装mysql可能遇到的问题使用cmake时报错敏捷持续集成是什么? 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作&#x…...

一、Java基础(2)

本章概要 异常的分类及处理 异常的概念异常的分类处理异常的方式 反射机制 动态语言的概念反射机制的概念反射的作用Java 的反射 API反射的过程创建对象的两种方式Method 的 invoke 方法 1.2 异常的分类及处理 1.2.1 异常的概念 异常指在方法不能按正常方式完成时&#xf…...

软件设计师重要知识点——第一章——计算机组成与体系结构

目录 1.1数据的表示 1.2数值表示范围 1.3浮点的运算 1.4计算机结构 1.5计算机体系结构分类——Flynn 1.6指令的基本概念 1.7寻址方式 1.8CISC与RISC 1.9流水线 1.10层次化存储结构 1.11Cache 1.12主存——编址与计算 1.13总线 1.14串联系统与并联系统 1.15N模混…...

编程学习心得

我来写一些,我关于编程的简单认识吧。 我觉得编程是一门艺术,也是一项技能,需要不断地学习和练习。无论是初学者还是有经验的开发人员,都需要耐心和恒心,才能够成为一名优秀的程序员。以下是一些关于编程学习的心得和…...

web获取媒体流

1. 下面例子演示了录屏和截图功能&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport"…...

代码随想录算法训练营第四十二天 | 01背包问题,你该了解这些、01背包问题,你该了解这些 滚动数组、 416. 分割等和子集

打卡第42天&#xff0c;搞搞01背包。 今日任务 01背包问题&#xff0c;你该了解这些&#xff01;01背包问题&#xff0c;你该了解这些&#xff01; 滚动数组416.分割等和子集 背包问题1.0 &#xff1a;0-1 背包 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weig…...

【Android】JNI静态与动态注册介绍

JNI的两种注册机制&#xff1a;静态注册和动态注册. 一、JNI介绍 JNI(Java Native Interface)&#xff0c;即Java本地接口&#xff0c;JNI是Java调用Native 语言的一种特性。通过JNI可以使得Java与C/C机型交互. 方式&#xff1a; 静态注册动态注册&#xff1a;需要提供Java中…...

【算法题解】22. 接雨水

这是一道 困难 题 题目来自&#xff1a; https://leetcode.cn/problems/trapping-rain-water/ 题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,…...

集合详解之(四)集合的遍历

文章目录&#x1f412;个人主页&#x1f3c5;JavaSE系列专栏&#x1f4d6;前言&#xff1a;&#x1f380;ArrayList集合forEach()方法遍历&#x1f380;for循环遍历&#xff08;针对List集合&#xff09;&#x1fa85;增强for循环&#xff08;也支持Set集合&#xff09;&#x…...

【I2C】通用驱动i2c-dev分析

文章目录1. 前言2. i2c-dev驱动的注册过程3. open_i2c_dev函数分析4. set_slave_addr函数分析5. i2c_read_bytes函数分析1. 前言 前面分析i2c-tool测试工具就是基于drivers/i2c/i2c-dev.c驱动来实现的。i2c-dev驱动在加载时会遍历所有的I2C总线(i2c_bus_type)上所有注册的adap…...

用GPT-4写代码不用翻墙了?Cursor告诉你:可以~~

目录 一、介绍 二、使用方法 三、其他实例 1.正则表达式 2.自动化测试脚本 3.聊聊技术 一、介绍 Cursor主要功能是根据用户的描述写代码或者进行对话&#xff0c;对话的范围仅限技术方面。优点是不用翻墙、不需要账号。Cursor基于GPT模型&#xff0c;具体什么版本不祥&#…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险

C#入门系列【类的基本概念】&#xff1a;开启编程世界的奇妙冒险 嘿&#xff0c;各位编程小白探险家&#xff01;欢迎来到 C# 的奇幻大陆&#xff01;今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类&#xff01;别害怕&#xff0c;跟着我&#xff0c;保准让你轻松搞…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文通过代码驱动的方式&#xff0c;系统讲解PyTorch核心概念和实战技巧&#xff0c;涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

Linux 下 DMA 内存映射浅析

序 系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存&#xff0c;但最终会调到 DMA 子系统的dma_alloc_coherent()/dma_alloc_attrs() 等接口。 关于 dma_alloc_coherent 接口详细的代码讲解、调用流程&#xff0c;可以参考这篇文章&#xff0c;我觉得写的非常…...