使用 msys2 sshd为 windows 搭建 ssh 服务器

文章目录

    • 概要
    • 整体架构流程
    • 技术名词解释
      • MSYS2
      • openSSH服务器
    • 技术细节
      • 安装 MSYS2 环境
      • 安装openSSH
      • 配置、启动SSH
    • 小结和扩展

概要

SSH服务器在Linux下的搭建一般的文章讨论的比较多了。在Windows下,我们常用Windows的Linux子系统来搭建ssh服务器。那有没有更好更简洁的方法呢?答案是有的,msys2环境为我们提供了Windows下的Linux解决方案,它的openSSH服务器搭建起来非常简单,而且因为它提供了近乎完整的bash,以及编译环境和GUI库的支持,这使得它比Linux子环境更为实用。

整体架构流程

首先是安装MSYS2环境,而后,使用pacman安装openssh。最后,配置证书、选项,并运行sshd实现功能。

技术名词解释

MSYS2

MSYS2 是一个为Windows操作系统提供类Unix环境的软件包管理器和工具集。它的目标是为开发人员提供一个在Windows上进行软件开发的便捷环境。MSYS2环境包括以下主要组件:

  • MinGW系列环境:一个用于Windows的开发工具集,包括GCC编译器和一系列常用的开发库,可以用于编译和构建各种开源软件。
  • Pacman:一个类似于Linux的软件包管理器,可以方便地安装、更新和卸载软件包。
  • MSYS2 Shell:一个基于Bash的命令行终端,提供了一系列常用的Unix命令和工具,使开发人员可以在Windows上进行类Unix环境下的操作。
  • MSYS2 Runtime:提供了一些必要的运行时库和工具,使得在MSYS2环境下编译的程序可以在Windows上正常运行。

通过安装MSYS2环境,开发人员可以在Windows上使用类Unix环境下的工具和命令,方便地进行软件开发和调试。同时,MSYS2还提供了一些常用的开发库和工具,可以帮助开发人员更高效地进行开发工作。

openSSH服务器

OpenSSH服务器是一种用于安全远程登录和文件传输的开源软件。它提供了加密的通信通道,使得用户可以通过网络安全地远程登录到服务器,并在服务器和客户端之间传输文件。OpenSSH服务器使用SSH(Secure Shell)协议来加密通信,防止敏感信息在传输过程中被窃取或篡改。

OpenSSH服务器具有以下特点:

  • 安全性:OpenSSH服务器使用公钥加密技术来验证客户端身份,并使用对称加密算法来保护通信内容的机密性和完整性。
  • 远程登录:用户可以通过SSH客户端远程登录到OpenSSH服务器,以执行命令和管理服务器。
  • 文件传输:OpenSSH服务器支持SCP(Secure Copy)和SFTP(SSH File Transfer Protocol)协议,可以安全地传输文件到服务器或从服务器下载文件。
  • 端口转发:OpenSSH服务器支持端口转发功能,可以将本地端口与远程服务器上的服务关联起来,实现安全的网络访问。

技术细节

安装 MSYS2 环境

在Windows下安装和配置MSYS2环境可以按照以下骤进行:

  1. 下载MSYS2安装程序:访问MSYS2官方网站(https://www.msys2.org/)下载最新的MSYS2安装程序。也可以直接去清华,中科大下载,更快。

  2. 运行安装程序:双击下载的安装程序,按照提示选择安装路径和其他选项。建议选择默认选项进行安装。

  3. 替换源:MSYS2替换国内源,清华,中科大

安装openSSH

在MSYS2下安装OpenSSH可以通过以下步骤进行:

  1. 打开MSYS2终端。
  2. 更新MSYS2的软件包列表,输入以下命令并按回车键执行:
    pacman -Syu
    
  3. 安装OpenSSH软件包,输入以下命令并按回车键执行:
    pacman -S openssh
    
  4. 安装过程中,系统会提示你选择安装哪个版本的OpenSSH。你可以选择最新版本,输入对应的数字并按回车键继续安装。

配置、启动SSH

此时,ssh仍旧没有证书。
运行:

ssh-keygen -t rsa -b 4096 -A

生成证书,即可使用命令:

/usr/bin/sshd

启动服务。注意,必须用绝对路径启动,否则会报错。

小结和扩展

笔者一直以携带 Qt, GIMP, InkScape, openSSH的MSYS2作为开发环境。作为一个在Windows平台上提供类似Linux环境的软件包管理器,它提供了Qt,结合使用MSYS2和Qt可以在Windows上进行Linux子环境的开发和编译。

对于Qt开发者来说,MSYS2提供了一个理想的开发环境。首先,MSYS2中已经包含了Qt的编译器和相关工具,可以直接使用Qt进行开发和编译。其次,MSYS2还提供了GIMP和Inkscape等图像处理软件,这些软件在Qt应用程序的GUI开发中经常会用到,可以方便地进行图像编辑和处理。MSYS2还支持SSH协议,可以方便地进行远程连接和操作。开发者可以通过SSH连接到其他Linux服务器或设备,进行远程调试和部署。

综上所述,使用MSYS2和Qt可以在Windows平台上搭建一个功能强大的Linux子环境,方便开发者进行应用程序的开发、编译和调试。通过MSYS2提供的工具和环境,开发者可以更加高效地进行开发工作,并且能够充分利用Qt框架的优势。

尤其是MSYS2还携带了Rust,可以作为学习Rust的平台。
msys

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据挖掘|关联分析与Apriori算法详解

数据挖掘|关联分析与Apriori算法 1. 关联分析2. 关联规则相关概念2.1 项目2.2 事务2.3 项目集2.4 频繁项目集2.5 支持度2.6 置信度2.7 提升度2.8 强关联规则2.9 关联规则的分类 3. Apriori算法3.1 Apriori算法的Python实现3.2 基于mlxtend库的Apriori算法的Python实现 1. 关联分…

京东云服务器4核8G主机租用价格418元一年,1899元3年

京东云轻量云主机4核8G服务器租用价格418元一年,1899元3年,配置为:轻量云主机4C8G-180G SSD系统盘-5M带宽-500G月流量,京东云主机优惠活动 yunfuwuqiba.com/go/jd 可以查看京东云服务器详细配置和精准报价单,活动打开如…

idea开发 java web 酒店推荐系统bootstrap框架开发协同过滤算法web结构java编程计算机网页

一、源码特点 java 酒店推荐推荐系统是一套完善的完整信息系统,结合java web开发和bootstrap UI框架完成本系统 采用协同过滤算法进行推荐 ,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式…

(西部数码)-域名注册购买实名流程

1,进入西部数码官网 输入网址 https://www.west.cn/services/domain/ 注册域名 ,域名推荐com(国际顶级域名) ,cn(国内顶级域名)。其中cn价钱比com便宜。 特别提醒: (…

【C++】引用

目录 ​编辑 1.引用概念 2.引用特性 2.1一个变量可以取多个别名,别名还可以取别名 2.2一个别名不可以对应多个变量。 ​编辑2.3 别名的地址一样: 2.4引用必须初始化,必须有个引用实体 2.5 引用不能改变指向 3 .引用的价值和意义 3.1.做参数 …

关于 QSound播放wav音频文件,播放失败“using null output device, none available” 的解决方法

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/137264493 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

【简单讲解下epoll】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

LabVIEW深度学习

目录 一、配置环境1.1、显卡选择1.2、下载显卡驱动1.3、下载并安装Anaconda1.4、配置Anaconda软件包下载服务器1.5、配置虚拟环境tf_gpu1.6、安装vscode1.7、安装tensorflow1.8、下载安装Git1.9、安装TensorFlow Object Detection API框架1.10、安装依赖的python软件包1.11、配…

包子凑数【蓝桥杯】/完全背包

包子凑数 完全背包 完全背包问题和01背包的区别就是,完全背包问题每一个物品能取无限次。 思路:当n个数的最大公约数不为1,即不互质时,有无限多个凑不出来的,即n个数都可以表示成kn,k为常数且不为1。当n个…

Vue关键知识点

watch侦听器 Vue.js 中的侦听器(Watcher)是 Vue提供的一种响应式系统的核心机制之一。 监听数据的变化,并在数据发生变化时执行相应的回调函数。 目的:数据变化能够自动更新到视图中 原理: Vue 的侦听器通过观察对象的属性&#…

Redis实战篇-集群环境下的并发问题

实战篇Redis 3.7 集群环境下的并发问题 通过加锁可以解决在单机情况下的一人一单安全问题,但是在集群模式下就不行了。 1、我们将服务启动两份,端口分别为8081和8082: 2、然后修改nginx的conf目录下的nginx.conf文件,配置反向代…

蓝桥杯杯赛之深度优先搜索优化《1.分成互质组》 《 2.小猫爬山》【dfs】【深度搜索剪枝优化】【搜索顺序】

文章目录 思想例题1. 分成互质组题目链接题目描述【解法一】【解法二】 2. 小猫爬山题目链接题目描述输入样例:输出样例:【思路】【WA代码】【AC代码】 思想 本质为两种搜索顺序: 枚举当前元素可以放入哪一组枚举每一组可以放入哪些元素 操…

天眼护航 安全无界:天通哨兵PS02—电力巡检保护的智能利器

在电力行业中,输电线路的安全稳定运行对于保障社会经济活动至关重要。然而,广阔的输电线路常常穿越复杂的地形和恶劣的自然环境,给电力巡检和保护工作带来了巨大挑战。 为了提高巡检效率和响应速度,更好地保障电力设施的安全运行…

鸿蒙OS元服务开发:【(Stage模型)学习窗口沉浸式能力】

一、体验窗口沉浸式能力说明 在看视频、玩游戏等场景下,用户往往希望隐藏状态栏、导航栏等不必要的系统窗口,从而获得更佳的沉浸式体验。此时可以借助窗口沉浸式能力(窗口沉浸式能力都是针对应用主窗口而言的),达到预…

聚能共创下一代智能终端操作系统 软通动力荣膺“OpenHarmony优秀贡献单位”

近日,由开放原子开源基金会指导,以“开源共享未来”为主题的OpenHarmony社区年会在北京成功举办。本次活动汇集OpenHarmony项目群共建单位及生态伙伴等多方力量,旨在对2023年度OpenHarmony年度开源事业全面总结的同时,吸引更多伙伴…

HFSS仿真环形耦合器学习笔记

HFSS仿真环形耦合器学习笔记 文章目录 HFSS仿真环形耦合器学习笔记1、 理论基础2、 设计分析3、 仿真验证1、 求解器设置2、 建模3、 激励方式设置4、 边界条件设置5、 扫频设置6、 设计检查,仿真分析7、 数据后处理 1、 理论基础 环形定向耦合器的结构示意图如图所…

HTML5.Canvas简介

1. Canvas.getContext getContext(“2d”)是Canvas元素的方法,用于获取一个用于绘制2D图形的绘图上下文对象。在给定的代码中,首先通过getElementById方法获取id为"myCanvas"的Canvas元素,然后使用getContext(“2d”)方法获取该Ca…

【JAVASE】带你了解面向对象三大特性之一(继承)

✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:再无B~U~G-CSDN博客 1.继承 1.1 为什么需要继承 Java 中使用类对现实世界中实体来…

基于SpringBoot Vue超市管理系统

一、📝功能介绍 基于SpringBoot Vue超市管理系统 角色:管理员、员工 管理员:管理员登录进入超市管理系统的实现可以查看首页、个人中心、员工管理、商品类型管理、商品信息管理、商品进货管理、商品出库管理、商品销量管理、销售退回管理等…

Jettison 1.8.7直装版 外部磁盘辅助弹出

Jettison 是一款适用于 macOS 的实用工具,旨在简化外部驱动器的管理。它可以自动卸载和重新挂载外部驱动器,帮助您更方便地使用和保护您的存储设备。 软件下载:Jettison 1.8.7直装版下载 自动卸载和重新挂载:Jettison 可以在您离开…