编辑
2024-11-27
服务器
00
请注意,本文编写于 149 天前,最后修改于 149 天前,其中某些信息可能已经过时。

目录

Windows 开启 OpenSSH 和 远程服务 和 Frp服务
1. OpenSSH
1.1 开启 OpenSSH 客户端 / 服务器
1.1.1 方法 1:通过「设置」安装
1.1.2 方法 2:使用 PowerShell 安装
1.2 配置 OpenSSH 服务器
1.3 使用 OpenSSH 客户端连接远程 SSH 服务器
2. RemoteServer
2.1 启用 Windows 11 远程桌面连接(被控端)
2.1.1 方法 1:通过「设置」
2.1.2 方法 2:通过「控制面板」
2.1.3 注意事项
2.2 连接远程桌面(控制端)
3. 安装 frp 服务-客户端
5. nssm 管理 frpc

Windows 开启 OpenSSH 和 远程服务 和 Frp服务

这篇博客详细介绍了如何在 Windows 系统上启用 OpenSSH 和远程服务,及安装和配置 FRP(Fast Reverse Proxy)服务。 1)如何开启 OpenSSH,包括通过「设置」和 PowerShell 安装客户端和服务器的步骤。同时,提供了配置 OpenSSH 服务器和使用 OpenSSH 客户端连接远程 SSH 服务器的指南。 2)如何在 Windows 11 上启用远程桌面连接,包括通过「设置」和「控制面板」的不同方法,并强调了注意事项。 3)如何安装 FRP 客户端,并详细说明了如何设置 FRP 服务在开机时自动启动。 3)如何使用 NSSM(Non-Sucking Service Manager)来管理 FRP 服务的过程。

1. OpenSSH

1.1 开启 OpenSSH 客户端 / 服务器

准备条件: 在开始安装 OpenSSH 之前,请确保你的电脑满足以下条件:

  • 操作系统:Windows 11 或 Windows 10(1809 版本或更高)。
  • PowerShell 版本:PowerShell 5.1 或以上。
  • 管理员权限:安装 OpenSSH 需要拥有管理员权限。

1.1.1 方法 1:通过「设置」安装

  1. 使用 Windows + I ​快捷键打开「设置」,依次选择「系统」>「可选功能」。

  2. 点击「查看功能」,在搜索框中输入 OpenSSH ​进行筛选。

  3. 根据需要勾选:

  • OpenSSH 客户端:可以使用 ssh 命令连接到其他支持 SSH 的设备。
  • OpenSSH 服务器:允许其他设备通过 SSH 连接到你的电脑。

  1. 选择好后点击「下一步」,然后点击「安装」开始安装过程。

1.1.2 方法 2:使用 PowerShell 安装

  1. 使用 Windows + R ​快捷键打开「运行」对话框,输入 powershell​,然后按 Ctrl + Shift + Enter ​以管理员权限打开 PowerShell 窗口。

  2. 执行以下命令查看 OpenSSH 安装状态:

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

如果返回 NotPresent​,表示未安装;返回 Installed ​则表示已安装。

  1. 根据需要安装 OpenSSH 客户端和服务器组件:
# 安装 OpenSSH 客户端 Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 # 安装 OpenSSH 服务器 Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

network-asset-openssh-windows-p3-20241127124658-slp7rsd.jpg

1.2 配置 OpenSSH 服务器

当你在 Windows 上安装了 OpenSSH 服务器之后,需要进行一些配置才能接受连接:

  1. 使用 Windows + R ​快捷键打开「运行」对话框,输入 powershell​,然后按 Ctrl + Shift + Enter ​以管理员权限打开 PowerShell。

  2. 设置 SSHD 服务自动启动:

Set-Service -Name sshd -StartupType 'Automatic'
  1. 启动 SSHD 服务:
Start-Service sshd
  1. 检查 SSH 服务器是否在侦听 22 端口:
netstat -an | findstr /i ":22"
  1. 确保 Windows Defender 防火墙允许 TCP 22 端口的入站连接:
Get-NetFirewallRule -Name *OpenSSH-Server* | select Name, DisplayName, Description, Enabled

network-asset-openssh-windows-p4-20241127124658-7yk6s1e.jpg 如规则丢失或被禁用,可以创建新规则:

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
  1. (可选)如果要修改配置,如设置用户访问权限,可以编辑 sshd_config ​配置文件:
Start-Process Notepad C:\Programdata\ssh\sshd_config
  1. 根据需要修改配置文件,保存后关闭记事本。

OpenSSH 服务器配置文件可以在 sshd_config 手册页中找到。

network-asset-openssh-windows-p5-20241127124658-r5eyoa7.jpg 8. 完成更改后,重启 SSHD 服务应用配置:

Restart-Service sshd

network-asset-openssh-windows-p6-20241127124658-5097s2g.jpg

按照这些步骤,你的 Windows 就能通过 SSH 协议接受连接了。

1.3 使用 OpenSSH 客户端连接远程 SSH 服务器

在 Windows 中安装完 OpenSSH 客户端后,就可以立即与远程 SSH 设备建立连接:

  1. 打开命令提示符或 Powershell,执行以下命令来检查 OpenSSH 客户端是否已经正确安装:
ssh
  1. 使用以下命令连接到配置了 SSH 的服务器:
ssh [用户名]@[服务器IP]

network-asset-openssh-windows-p7-20241127124658-vemi8jg.jpg

  1. 首次连接时,会要求你输入密码。如果远程设备使用非标准 22 端口,需要指定端口号:
ssh 用户名@服务器名称 -p 端口号

2. RemoteServer

Windows 11 的远程桌面功能可以让你直接操控另一台电脑,并在上面运行软件、管理系统设置,或者远程解决问题。被控制的电脑称为「远程桌面主机」,而控制端则称为「客户端计算机」。默认情况下,远程桌面功能会使用远程桌面协议(RDP),通过 TCP 3389 ​端口传输数据。让你可以在 Windows、macOS、iOS 和 Android 设备上连接到 Windows 11 远程桌面主机,而且数据传输经过加密,十分安全可靠。Windows 11 家庭版只能作为客户端计算机,不能作为远程桌面主机,也就是被控制端。详细区别请访问 Windows 11 家庭版与专业版功能对比

2.1 启用 Windows 11 远程桌面连接(被控端)

为了确保安全,默认情况下,Windows 11 并不允许远程桌面连接,但可以通过以下 2 种方式打开该功能:

2.1.1 方法 1:通过「设置」

  1. 使用 Windows + I ​快捷键打开「设置」,选择「系统」>「远程桌面」。

  2. 打开「远程桌面」开关。

  3. 建议保留默认开启的「要求设备使用网络级别身份验证连接(推荐)」设置。

network-asset-remote-desktop-windows-p2-20241127125219-dbl51nv.jpeg 4. 点击「远程桌面用户」,添加要允许进行远程连接的用户账户。

network-asset-remote-desktop-windows-p3-20241127125219-rz6m4hp.jpeg

2.1.2 方法 2:通过「控制面板」

  1. 使用 Windows + R ​快捷键打开「运行」对话框,执行 control ​打开控制面板。

  2. 选择「系统和安全」>「允许远程访问」。

network-asset-remote-desktop-windows-p4-20241127125220-exdqibs.jpeg

  1. 在「远程桌面」区域中,选择「允许远程连接到此计算机」,并勾选「仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)」。

  2. 点击「选择用户」,添加要允许进行远程连接的用户账户。

network-asset-remote-desktop-windows-p5-20241127125220-6eiqrc0.jpeg

2.1.3 注意事项

  • 网络级别身份验证(NLA)可以提高安全性,只有在使用不支持 NLA 的旧版 Windows 系统时,才需要关闭它。
  • 启用远程桌面功能后,系统会启动一个名为 TermService ​的服务,并监听 TCP 3389 ​端口的传入连接。还会在 Windows 防火墙中添加例外规则,允许该端口接收经过验证的数据。
  • 如果你使用了第三方安全软件,可能需要手动放行 TCP 3389 ​端口。
  • 默认情况下,当前用户和所有管理员组的用户账户都可以远程连接到这台电脑。

2.2 连接远程桌面(控制端)

Windows 11 自带的「远程桌面连接」应用,可以让你轻松访问远程电脑:

  1. 使用 Windows + R ​快捷键打开「运行」对话框,执行 mstsc ​打开「远程桌面连接」应用。

  2. 在「计算机」输入框中,输入远程电脑的名称或 IP 地址。

  3. 输入完成后,点击「连接」按钮,即可开始连接远程电脑。

network-asset-remote-desktop-windows-p6-20241127125220-uykdd59.jpeg

默认情况下,远程电脑的桌面会全屏显示,分辨率与客户端电脑相同。屏幕顶部中央会显示一个连接栏,方便你在本地桌面和远程桌面之间切换。你也可以点击图钉按钮固定连接栏。

「远程桌面连接」应用还提供了丰富的配置选项,这里介绍两个常用功能:

  • 允许我保存凭据:在「常规」选项卡中,可以输入用户名并勾选「允许我保存凭据」。保存后,下次连接时,系统会自动填充这些信息,无需重复输入。
  • 本地资源:在连接对话框中点击「本地资源」选项卡,可以设置是否访问本地打印机、共享剪贴板内容,以及如何处理远程音频。

network-asset-remote-desktop-windows-p7-20241127125220-g8icxu7.jpeg

network-asset-remote-desktop-windows-p8-20241127125220-jclxh7y.jpeg

3. 安装 frp 服务-客户端

  1. 下载frp​客户端

在github中下载frp, 下载链接: https://github.com/fatedier/frp/releases,注意下载的时候需要结合服务器的版本来选择,例如旧版本: https://github.com/fatedier/frp/releases/tag/v0.36.2

image-20241127162910-lkpmbaj.png

  1. 客户端配置文件frpc.ini​如下:

[客户端对应为frpc开头的运行程序以及文件]

python
[common] # 配置服务端对外的ip地址 随意填写的 server_addr = 111.23.36.33 #配置服务端监听的端口 server_port = 7000 #如果服务端配置token,将服务端配置的token复制到此处# #token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2 #pool_count = 5 #我这里是配置端口范围转发 [range:services] #类型为tcp type = tcp #本地ip地址通常为127.0.0.1 local_ip = 0.0.0.0 #本地要映射的端口范围 bendi local_port = 8080 #映射到服务端的端口范围 fangwen remote_port = 7500
  1. 客户端运行,用下面的命令(该方法不适合自启动):

    shell
    frpc.exe -c frpc.ini

4. Windows 设置 frpc 开机自动启动 电脑时钟管理

新建 frpc.bat,内容如下(放到自己 frpc 实际目录下):

php
@echo off :home frpc -c frpc.ini goto home

打开开始菜单,输入 “任务计划程序” 将会自动搜索,接着打开它。

network-asset-6a687f946eb8a27493bdc33b2116521a-20241127154233-k7w7s6i.png

点击右侧的 “创建任务”,名称随意填写,安全选项选择 “不管用户是否登录都要运行”,当然你也可以选择 “只在用户登录时运行”。

选择 “不管用户是否登录都要运行” 可以让你的电脑在断电自动启动后自动运行 frp,你就可以远程桌面连接电脑了。

“使用最高权限运行” 也是可选的,根据个人需要可以选上。

最后勾选 “隐藏”,就不会在启动时弹出命令行窗口了。

network-asset-78662b6c3687fe93b6c17cd9e30ba0a2-20241127154325-m4cwk3t.png

接着转到 “触发器” 页,点击新建,选择 “启动时”

network-asset-d2843a7c1bd1be9969cc71eb2686da5e-20241127154325-4kdupmp.png

接着转到 “操作” 页,点击新建,选择 “启动程序”

在程序或脚本一栏选择第一步创建的 start.bat,下面的 “起始于” 填写 start.bat 的路径(不要包含 start.bat)

例如你的 start.bat 在 E:\frp\start.bat,那么你只需要在 “起始于” 填写 E:\frp\ network-asset-e48e75db8c3c640c3547f0cc39de606c-20241127154325-1t1u2ij.png

接着返回 “常规” 页,点击确定,此时会要求输入密码,输入你的电脑密码,然后点击确定即可。

以后就会开机自动启动 frp 了,并且不会弹出命令提示符窗口。

5. nssm 管理 frpc

  1. 下载与安装:

    因为服务端客户端不能总用 cmd 窗口打开,故注册为系统服务,需用到 nssm 软件来进行配置,下载链接,注意 需要关闭防火墙​​

  2. 根据电脑配置选择 32/64 位运行程序,把下载到的nssm.exe​放到C:\Windows\System32​下,其他可以不要

image-20241127161753-wprgbxs.png

  1. 使用管理员运行cmd​跳转到exe​所在目录,直接执行命令 nssm install frp

image-20241127162314-rlik1ja.png

其中,Path ​程序路径;Startup directory​ 选择 Path ​会自动配置;Arguments​ 为启动参数,frps ​配置为 -c frps.ini​,frpc​ 配置为 -c frpc.ini

  1. 其他命令行, 注意一般remove完后需要重启机器
shell
# 启动服务 frpc为安装服务时自定义名称 如:frp_amd64 nssm start frpc # 停止服务 nssm stop frpc # 编辑服务配置 nssm edit frpc # 删除服务 nssm remove frpc

本文作者:wenY

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!