山西格泰网站建设,空间商网站,建设一个网站需要多久多少钱,中标查询结论
VSCode Server不能启动#xff0c;无法建立连接。
原因
.vscode-server 目录中的 node.exe 无法运行。 原因是Node.js仅在Windows 8.1、Windows Server 2012 R2或更高版本上受支持。 由于vscode基于node.js v14#xff0c;不支持Windows 7操作系统。
另#xff…结论
VSCode Server不能启动无法建立连接。
原因
.vscode-server 目录中的 node.exe 无法运行。 原因是Node.js仅在Windows 8.1、Windows Server 2012 R2或更高版本上受支持。 由于vscode基于node.js v14不支持Windows 7操作系统。
另Electron计划支持Windows 7到chrome将其标记为EOL定于2022年1月。
来源https://github.com/microsoft/vscode-remote-release/issues/5306
尝试过程
Windows 7安装SSH服务端并开启sshd服务
Windows 7安装SSH服务端
下载Win32 port of OpenSSH项目https://github.com/PowerShell/Win32-OpenSSH中的 OpenSSH-Win64.zip 压缩包。 由于SSH服务端的操作系统是Windows 7不支持如v9.5.0.0p1-Beta、v9.4.0.0p1-Beta等较新版本所以索性选择如v8.0.0.0p1-Beta这样的旧版本安装。
OpenSSH-Win64.zip 是离线安装包解压就好。将 OpenSSH-Win64.zip 解压到 C:\Program Files\ 目录。右键单击计算机属性——高级系统设置——环境变量在系统变量框里面找到 Path编辑由于Windows 7是以文本形式编辑的所以就需要在最后先添加 ;再把你安装路径 C:\Program Files\OpenSSH-Win64 粘贴进去保存。
使用cmd或者PowerShell输入ssh如果得到命令菜单则SSH客户端安装成功。 使用cmd或者PowerShell
安装sshd服务
powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1配置windows防火墙入站规则sshd开放XX端口XX端口可自定义
netsh advfirewall firewall add rule namesshd dirin actionallow protocolTCP localportXX配置sshd服务开机自启动
sc config sshd start autosshd服务常用命令
开启sshd服务
net start sshd关闭sshd服务
net stop sshd验证服务是否开启 查看本机的XX端口是否是监听状态。
netstat -an配置sshd服务
首次启动sshd后会生成 C:\ProgramData\ssh\ 目录打开 C:\ProgramData\ssh\ 目录下的 sshd_config 文件将一些常用项的注释去掉并按需要修改
Port XX这是sshd服务的端口这里的 XX 就是之前开放的XX端口。
以下这两条是口令验证相关配置项
PasswordAuthentication yes密码认证默认为 yes即允许使用口令登录。如果修改为 no 则只允许使用秘钥登录不能使用口令登录。
PermitEmptyPasswords no无密码登录。这个选项默认是注释掉的并且是默认关闭的不允许空密码登录。
以下这两条是密钥验证相关配置项
PubkeyAuthentication yes用来设置是否开启公钥验证。这个选项默认是注释掉的并且是默认开启的允许密钥认证。 并不需要专门写一行 RSAAuthentication yesRSAAuthenticationrsa认证这个配置项被废除了。
AuthorizedKeysFile .ssh/authorized_keys设置公钥验证文件的路径.ssh/authorized_keys 是默认公钥存放的位置一般不用修改。
以下这两条需要注释掉
#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys修改完后需要重启sshd服务。
测试ssh连接
ssh 要登录的用户名服务端IP -p sshd服务端口在第一次建立ssh连接的时候系统会有提示大概意思是无法确认主机XXXXXXXXX的真实性知道公钥指纹是否继续连接 输入 yes 之后提示该host已经被确认该host key会写入到客户端 C:\Users\你的用户名\.ssh 目录下的 known_hosts 文件中。
之后输入完密码就能建立ssh连接。
配置免密登录密钥验证
在客户端生成密钥对把密钥对中的公钥上传至服务端
在客户端上生成秘钥对文件
ssh-keygen -t rsa -d 4096-t可选参数指定加密算法密钥的文件名称的格式必须为 id_xxx其中 xxx 就是指定的密钥类型如 id_rsa -d可选参数设置加密位数指定生成的密钥长度
执行上面的命令后会提示让输入一个文件名也就是密钥文件名称格式 id_xxx 中的 id用于保存刚才生成的SSH key如果是第一次生成密钥文件直接点回车使用默认文件名就行会生成 id_rsa 和 id_rsa.pub 秘钥对文件。
接着又会提示输入两次密码用于密钥验证登录时进行二次验证如果不想进行二次验证就直接点回车。
之后就会在 C:\Users\你的用户名\.ssh 目录下生成公钥文件 id_rsa.pub 和私钥文件 id_rsa。后缀是.pub的为公钥
在服务端配置免密登录
将客户端生成的公钥文件内容复制到服务端 C:\Users\你的用户名\.ssh 目录下的 authorized_keys文件中如果没有 authorized_keys文件就新建一个。
配置服务端 C:\ProgramData\ssh\ 目录下的 sshd_config 文件
PasswordAuthentication no即只允许使用秘钥登录不能使用口令登录。
在客户端配置免密登录
在 C:\Users\你的用户名\.ssh 目录下的 config 文件中配置
Host SSH连接的名称一般写IP、域名或者主机名HostName IP或者域名User 要登录的用户名Port sshd服务的端口IdentityFile C:\Users\你的用户名\.ssh\id_rsa # 私钥文件的路径IdentityFile路径上一定不能有中文如果你的用户名是中文那么就要将秘钥放置到别的文件路径中。
配置完成后就可以用ssh登录服务端了。
使用VSCode进行远程开发
安装 Remote Development 插件 这里需要用到的是 Remote Development 的一个扩展包Remote - SSH 插件。
操作比较简单这里就不赘述了。
更新windows 7系统的PowerShell
由于Windows7 sp1系统内置的PowerShell的版本是v2.0其较低的版本会导致在使用VSCode进行ssh连接时无法安装VSCode Server所以需要更新PowerShell版本。
Windows7系统大概只能更新到PowerShell Core 6.0PowerShell 7已经不支持了。
来源https://learn.microsoft.com/zh-cn/powershell/scripting/whats-new/migrating-from-windows-powershell-51-to-powershell-7?viewpowershell-7.4 Powershell项目https://github.com/PowerShell/Powershell 不过这里安装的是PowerShell 5.1减少不必要的麻烦。
来源https://learn.microsoft.com/zh-cn/previous-versions/powershell/scripting/windows-powershell/install/installing-windows-powershell?viewpowershell-7.1
查看PowerShell版本
$PSVersionTable安装Microsoft .NET Framework 4.61https://www.microsoft.com/zh-cn/download/details.aspx?id49982 下载安装即可。
安装Windows Management Framework 5.1https://www.microsoft.com/en-us/download/details.aspx?id54616 下载这个 解压 Win7AndW2K8R2-KB3191566-x64.zip执行 Install-WMF5.1.ps1 脚本。
由于Windows 7默认的PowerShell 2.0不允许运行脚本所以先改配置
查看当前执行策略
Get-ExecutionPolicyRestricted默认的设置 不允许任何脚本运行 AllSigned只能运行经过数字证书签名的脚本 RemoteSigned运行本地的脚本不需要数字签名但是运行从网络上下载的脚本就必须要有数字签名 Unrestricted允许所有的脚本运行
将执行策略修改为 RemoteSigned
Set-ExecutionPolicy RemoteSigned -Force或者
set-ExecutionPolicy RemoteSigned然后选 y更改执行策略。
执行 Install-WMF5.1.ps1 脚本
.\Install-WMF5.1.ps1安装完成后重启PowerShell就是5.1版本了。 好了现在可以用VSCode进行ssh连接来在服务端上安装VSCode Server了。