通过服务器访问自己的电脑-20260320
先给自己的笔记本电脑安装SSH.Server
管理员打开powershell,运行:
Get-WindowsCapability -Online | Where-Object Name -like OpenSSH*返回:
(base) PS C:\Users\13283> Get-WindowsCapability -Online | Where-Object Name -like OpenSSH*Name : OpenSSH.Client~~~~0.0.1.0State : InstalledName : OpenSSH.Server~~~~0.0.1.0State : NotPresent提示安装了OpenSSH.Client,但是没有OpenSSH.Server。
安装OpenSSH.Server。
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0这一步需要挺久的,很容易以为是卡住了,不过确实不要关,等他自己运行完。

最后运行结束:
(base) PS C:\Users\13283> Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0Path :Online : TrueRestartNeeded : False请按顺序在同一个管理员 PowerShell 中继续执行以下命令:
第 1 步:启动 OpenSSH 服务并设置开机自启
Start-Service sshdSet-Service -Name sshd -StartupType Automatic第 2 步:添加防火墙规则(允许外部连接 22 端口)
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22第 3 步:验证服务是否正在运行
Get-Service sshd应该显示 Status: Running
第 4 步:验证 22 端口是否已经在监听
PowerShell
netstat -ano | findstr :22(应该看到一行 TCP 0.0.0.0:22 或 TCP [::]:22)
执行完后立刻在本机测试 SSH 是否可用
ssh 13283@localhost如果提示输入密码 → 说明本地 SSH 服务正常! 输入你的 Windows 账户密码后,应该能成功进入命令行。
代码返回:
(base) PS C:\Users\13283> Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0Path :Online : TrueRestartNeeded : False(base) PS C:\Users\13283> Start-Service sshd(base) PS C:\Users\13283> Set-Service -Name sshd -StartupType Automatic(base) PS C:\Users\13283> New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22Name : sshdDisplayName : OpenSSH Server (sshd)Description :DisplayGroup :Group :Enabled : TrueProfile : AnyPlatform : {}Direction : InboundAction : AllowEdgeTraversalPolicy : BlockLooseSourceMapping : FalseLocalOnlyMapping : FalseOwner :PrimaryStatus : OKStatus : 已从存储区成功分析规则。 (65536)EnforcementStatus : NotApplicablePolicyStoreSource : PersistentStorePolicyStoreSourceType : LocalRemoteDynamicKeywordAddresses : {}PolicyAppId :PackageFamilyName :(base) PS C:\Users\13283> Get-Service sshdStatus Name DisplayName------ ---- -----------Running sshd OpenSSH SSH Server(base) PS C:\Users\13283> netstat -ano | findstr :22 TCP 0.0.0.0:22 0.0.0.0:0 LISTENING 25712 TCP 127.0.0.1:22684 0.0.0.0:0 LISTENING 123984 TCP [::]:22 [::]:0 LISTENING 25712(base) PS C:\Users\13283> tasklist.exe | findstr.exe 25712sshd.exe 25712 Services 0 11,276 K本地的ssh服务配置好了,就可以用cpolar了。
cpolar tcp 22返回:
cpolar by @bestexpresser (Ctrl+C to quit)Tunnel Status onlineAccount kichen (Plan: Pro)Version 3.18/3.18Web Interface 127.0.0.1:4042Forwarding tcp://6.tcp.vip.cpolar.cn:13442 -> tcp://127.0.0.1:22# Conn 0Avg Conn Time 0.00ms在服务器上可以访问本地了:
ssh 13283@6.tcp.vip.cpolar.cn -p 13442需要输入密码,密码就是你的开机密码。
这里有一个bug,就是很多电脑都没有开机密码,都用的是PIN码,PIN码很简单,可能4位数字就够了。
关于找不到自己笔记本电脑的开机密码的解决办法:win+I,打开设置,账户,登录选项,关闭Windows Hello。
如果不关闭这个,是看不到登录方式下有 密码这个选项的。

因为每次cpolar穿透的时候,就会更换公网地址,所以暴露也无所谓。
进去以后处于cmd的命令行:
说一点最实用、最基础的 CMD 语法:
1. 最常用的几个命令
dir | dirdir /a | /a | |
cd | cd C:\Users\你的用户名 | ||
cd .. | cd .. | ||
mkdir | mkdir 新文件夹 | md 新文件夹 | |
copy | copy 文件1.txt D:\备份\ | ||
xcopy | xcopy C:\data D:\备份\ /s /e | /s /e | |
del | del 文件.txt | ||
rd | rd 文件夹名 | ||
cls | cls | ||
echo | echo Hello World |
2. 路径写法小技巧(超级重要!)
Windows 路径用 反斜杠
\示例:cd C:\Users\Administrator\Desktop如果路径有空格,必须用双引号包起来 示例:
cd "C:\Program Files\My Folder"快速回到 C 盘根目录:
cd \快速回到用户文件夹:cd %userprofile%
3. 你现在远程连接时特别有用的命令
ipconfig # 查看当前笔记本的 IP 地址ping 192.168.1.100 # 测试能不能连上服务器(把 IP 换成服务器的)whoami # 查看当前登录的是哪个用户tasklist # 查看正在运行的程序netstat -ano # 查看网络连接(看端口占用)systeminfo # 查看笔记本系统信息(超详细)4. 快捷键(提升效率)
↑↓ 方向键:调出上一条/下一条命令(超级好用) Tab:自动补全文件名或文件夹名 Ctrl + C:强行停止当前命令(比如 ping 一直跑的时候) Ctrl + V:粘贴(Windows 10/11 CMD 已经支持) F7:显示命令历史记录
5. 一个实用小例子(你现在可以直接复制试试)
# 1. 先看看你在哪里dir# 2. 去桌面cd %userprofile%\Desktop# 3. 创建一个叫“备份”的文件夹mkdir 备份# 4. 把桌面所有文件复制到这个备份文件夹xcopy *.* 备份\ /s /e /y# 5. 清屏cls如果cmd的代码有点生疏,切换起来不方便,可以直接用powershell,跟shell很像。
你现在在 CMD 界面里,只要输入下面这行回车,就能立刻进入 PowerShell:
powershell1. 最常用命令(Linux → PowerShell 直接对照表)
lsll | Get-ChildItem | lsdir | ls -a | |
cd | Set-Location | cd | cd ~/Desktopcd C:\Users\你的用户名 | |
cd .. | Set-Location .. | cd .. | cd .. | |
mkdir | New-Item -ItemType Directory | mkdirmd | mkdir 新文件夹 | |
cp | Copy-Item | cpcopy | cp 文件.txt D:\备份\ | |
mv | Move-Item | mvmove | mv 旧名.txt 新名.txt | |
rm | Remove-Item | rmdel | rm 文件.txt-r 删除文件夹) | |
rm -r | Remove-Item -Recurse -Force | rm -r | rm -r 旧文件夹 | |
cat | Get-Content | cattype | cat 文件.txt | |
touch | New-Item | touch | touch 新文件.txt | |
echo | Write-Output | echo | echo "Hello World" | |
clearcls | Clear-Host | clearcls | clear |
小技巧(和 Linux 几乎一样):
路径支持 /和\都可以(PowerShell 更聪明) 示例:cd C:/Users/你的用户名/Desktop路径有空格用双引号: cd "C:/Program Files"回到家目录: cd ~或cd $env:USERPROFILE快速补全:Tab 键(比 Linux 还强,能补全参数)
2. 你远程连接服务器时特别有用的 PowerShell 命令(Linux 风格)
# 查看 IP(类似 ifconfig/ip addr)Get-NetIPAddress | Select-Object IPAddress, InterfaceAlias# 测试连通性(类似 ping)Test-NetConnection 192.168.1.100 -Port 3389 # 测试远程桌面端口# 查看当前用户(类似 whoami)whoami# 查看正在运行的进程(类似 ps)Get-Process | Sort-Object CPU -Descending# 查看网络连接(类似 netstat)Get-NetTCPConnection | Select-Object LocalPort, State, RemoteAddress# 系统信息(比 systeminfo 更强大)Get-ComputerInfo | Select-Object WindowsVersion, WindowsBuildLabEx# 查看磁盘空间(类似 df -h)Get-Volume3. 实用小例子(直接复制粘贴就能跑)
# 1. 先看看你在哪里ls# 2. 去桌面cd ~/Desktop# 3. 创建备份文件夹mkdir 备份# 4. 把桌面所有文件复制到备份文件夹(支持子文件夹)cp *.* .\备份\ -Recurse -Force# 5. 清屏clearPowerShell 最强大之处在于管道(|) 和对象,不像 Linux 只是文本流:
# 示例:列出占用 CPU 前 5 的进程Get-Process | Sort-Object CPU -Descending | Select-Object -First 5# 示例:查找包含 “关键词” 的文件(类似 grep + find)Get-ChildItem -Recurse -Filter *.txt | Select-String "关键词"退出powershell,就输入:
exit如果你觉得powershell还不够熟悉,那就直接进入WSL吧,纯linux操作。
1. 快速检查 WSL 是否已安装(在 CMD 里直接敲)
wsl --list --verbose如果显示已安装的发行版(如 Ubuntu),就可以直接用了。 如果提示“未找到 wsl”,说明 WSL 还没启用,需要先安装(见最下面)。
2. 在 CMD 里打开 WSL 的几种方式
wsl | ||
wsl -d Ubuntu | Ubuntu 换成你的发行版名 | |
| 直接运行一条 Linux 命令 | wsl echo "Hello from Linux!" | |
wsl -d Ubuntu -- ls -la /home | -- | |
wsl -d Ubuntu -- bash -c "cd /tmp && ls" | bash -c 包裹多条命令 |
超实用例子(你现在直接复制试试):
# 1. 直接在 WSL 里查看 Linux 文件系统wsl ls -la ~# 2. 在 WSL 里运行 Python(假设你 WSL 里装了 Python)wsl python3 -c "print('我在 WSL 里跑代码啦!')"# 3. 进入 WSL 后直接执行你熟悉的 Linux 工作流wsl -d Ubuntu -- bash -c "cd ~/project && git status && python3 main.py"3. 路径互通小技巧(Windows ↔ WSL)
在 WSL 里访问 Windows 文件: /mnt/c/Users/你的用户名/在 CMD 里访问 WSL 文件: \\wsl$\Ubuntu\home\你的用户名\(直接复制粘贴用)推荐用 PowerShell 的话路径更友好( wsl命令也完全支持)。
4. 如果 WSL 还没安装(一键安装)
在 CMD(最好用管理员身份运行)直接敲下面这行:
wsl --install它会自动安装 WSL + 默认 Ubuntu。装完重启一下笔记本就行。
cmd界面直接输入:wsl就进入wsl界面,输入exit,就可以退出。

夜雨聆风