ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Windows与银河麒麟V10远程桌面互连:VNC与RDP配置实战

Windows与银河麒麟V10远程桌面互连:VNC与RDP配置实战 简介Windows与银河麒麟互相远程桌面连接的完整操作文档面向需要在国产化与Windows环境间跨平台协作的IT运维人员、技术支持工程师及系统管理员解决双系统互访桌面环境时普遍遇到的配置与防火墙问题。文档按两个方向分别讲解Win7连接银河麒麟V10时如何安装桌面共享、设置访问密码并通过VNC Viewer建立连接同时处理iptables或安全中心网络保护的放行策略银河麒麟V10连接Windows时以开启远程桌面服务为前提在麒麟商店安装桌面查看器并完成主机地址与账号认证。整个资源为单一doc格式文档共1个文件压缩包大小609KB轻量易用便于快速查阅或打印。该资源已有21601人学习下载实用性经过了较多用户验证。阅读后可完整掌握跨系统远程桌面的双向连接流程、所需工具及常见网络配置要点尤其适合参与政企国产化替代或日常混合系统环境维护的人员。1. 远程桌面连接Windows 与银河麒麟 V10 互连的核心思路很多人拿到银河麒麟 V10 的第一反应是装虚拟机或者换系统但日常办公里更常见的诉求是Windows 7 办公机和旁边的麒麟终端同时开着想坐在 Windows 前操作麒麟桌面或者在麒麟终端前操作 Windows 桌面。远程桌面连接就是这类场景下成本最低、见效最快的方案不需要额外硬件不需要申请公网地址只要两台机器在同一局域网或用网线直连配置好协议和账号就能互控。这篇文章拆的是 Windows 与银河麒麟 V10 互相远程的完整落地过程重点讲两条路径Windows 连麒麟走 VNC麒麟连 Windows 走 RDP。适合刚接触国产系统、需要在双机间切换的运维新手也适合想把连接过程固化下来、避免每次手工输密码的熟手。2. 远程桌面连接协议选型为什么 VNC 是麒麟端的主力注意先讲清协议边界再动配置能省掉后面大半的排错时间。2.1 协议对比RDP 与 VNC 的边界Windows 之间互连大家都习惯用系统自带的远程桌面也就是 RDP。RDP 的默认端口是 3389认证、加密、会话管理都很成熟带宽占用也低。但银河麒麟 V10 是基于 Linux 内核的桌面操作系统系统盘里并没有默认的 RDP 服务端。要在麒麟上启用 RDP需要额外安装 xrdp 等第三方包还要处理 PAM 认证、会话类型、显卡驱动等一系列权限问题配置成本远高于牵手 VNC。VNC 走的是 RFB 协议默认端口 5900。它最大的优势是平台无关服务端可以跑在 Linux 上客户端可以来自 Windows、macOS甚至手机。银河麒麟 V10 自带的“桌面共享”应用后端实际上就是 VNC 服务端vino-server启动后直接把当前桌面暴露给 5900 端口。这是我的首选理由因为少装一个东西就少一个故障点。项目RDPVNC默认端口33895900服务端支持Windows 原生Linux 需 xrdp跨平台Linux 下常见桌面共享认证方式Windows 账户体系独立 VNC 密码多会话支持会话切换一般单会话银河麒麟 V10 默认无服务端自带桌面共享vino这张表的现实意义是Windows 连银河麒麟用 VNC反向的银河麒麟连 Windows直接使用 Windows 自带的 RDP 服务端麒麟侧只要装一个支持 RDP 协议的客户端就行。两条路径不冲突但协议不能混用。我见过有人辛苦配好 vino却拿着 RDP 客户端去连自然一直连接超时。2.2 银河麒麟 V10 桌面共享配置从安装到密码落账配置银河麒麟 V10 的服务端核心操作是打开“桌面共享”应用。它一般预装在内开始菜单或应用列表里能找到图标名字就叫“桌面共享”。如果这台机器是精简版镜像没有预装去麒麟商店搜索“桌面共享”安装即可。注意安装完成后最好注销一次桌面确保 vino-server 进程被系统正常拉起。打开桌面共享应用后界面上需要处理三件事。第一勾选“允许其他人查看和控制您的桌面”第二在“安全”区域设置一个连接密码这个密码是 Windows 端 VNC Viewer 认证用的独立于系统登录密码第三如果界面里有“访问控制”选项把它设置为“允许所有人”或“不要求对访问进行确认”否则可能出现外部连接被静默拒绝的情况。配置完成前先跑一条命令确认服务端进程是否真的起来# 检查 vino-server 进程确认桌面共享服务在运行 ps -ef | grep vino-server # 如果没有任何输出说明服务没启动回图形界面重新打开桌面共享这条命令的参数很简单ps -ef 列出系统全部进程grep 按名称过滤。看到类似/usr/lib/vino/vino-server的进程就说明服务端已经就绪。如果没看到先检查桌面共享应用有没有关闭或者系统是不是处于锁屏状态。vino-server 在某些版本下只有活动会话里才运行锁屏后会被挂起。设置密码时注意 VNC 协议对密码的约束1 到 8 个字符而且为了兼容老客户端只取前 8 位有效。我遇到过同事在麒麟上设置了一个 12 位密码Windows 端怎么输都失败最后才发现 vino 只认前 8 位。这个细节很容易被忽略建议直接使用 8 位以内的强密码避免白折腾。2.3 防火墙策略清空规则与安全中心自定义的取舍服务端配置好还得过防火墙这一关。银河麒麟 V10 默认安全级别调得比较高默认策略下外部的 VNC 客户端很可能连不上。很多教程会教先清空 iptables 规则命令是sudo iptables -F。这条命令确实能临时让所有入站连接都放行但它把机器之前的规则一并清掉了不适合长期使用。# 方法一清空防火墙规则仅用于快速验证 VNC 连通性 sudo iptables -F # 查看当前规则是否已经清空默认策略是否 ACCEPT sudo iptables -L -n-F 是 flush清空当前链规则-L 是 list列出规则-n 是不做反向解析直接显示 IP 和端口。执行后如果发现 INPUT 链策略仍是 DROP说明光清空规则还不够还得执行sudo iptables -P INPUT ACCEPT把默认策略改成接受。但改默认策略属于放开整个入口我建议只把它用在实验环境。更稳妥的做法是走图形界面的安全中心。打开“安全中心”应用进入“网络保护”自定义配置找到与 VNC Server 或 vino 相关的服务项勾选放行。手填规则的话需要放行的是 TCP 5900 端口。这个方法只开一个洞不影响麒麟上跑的其他服务也不存在重启后策略反弹的问题。我自己的习惯是优先用安全中心只有排错时才执行iptables -F。配置完防火墙最后验证一遍监听状态。在麒麟终端执行# 查看 VNC 服务实际监听地址和端口 ss -tlnp | grep 5900 # 预期输出中应包含 0.0.0.0:5900 或 *:5900 而不是 127.0.0.1:5900如果输出是127.0.0.1:5900说明服务只绑定在本地回环地址上外部 Windows 机器永远连不进来。这通常是因为桌面共享里的访问控制误选了“仅限本机”。解决方式是回到桌面共享应用把访问控制调整为“允许所有人”。这一步做完服务端才算真正准备好。3. Windows 端连接Win7 下的 VNC Viewer 实操银河麒麟那边的窗口已经打开现在回到 Windows 7。Windows 连入麒麟最常用的客户端是 VNC Viewer资源包里已准备好安装包解压后直接安装。安装过程没有什么特殊选项一路下一步就好。安装完打开主界面左侧是连接列表顶部是地址栏这个布局和常见远程工具有点像上手成本很低。3.1 VNC Viewer 的安装与连接创建第一次连接有两种方式。临时连接直接在上方地址栏输入银河麒麟的 IP 地址例如192.168.1.100回车。VNC Viewer 会弹出一个未加密连接的警告因为 vino 默认没有启用加密通道直接选择继续。接着输入桌面共享里设置的那个 8 位密码就能看到麒麟桌面。如果要长期使用建议把连接保存下来。点击 File 菜单New Connection弹窗里填两个关键字段VNC Server 填 IP 地址Name 填一个自己认得出的连接名比如Kylin-Office。加密选项保持默认点击 OK 后这个连接会出现在左侧列表里下次双击即可。# VNC Viewer 也支持命令行直接发起连接适合放在启动脚本里 # 格式vncviewer.exe 服务器IP:端口端口默认 5900 可省略 vncviewer.exe 192.168.1.100:5900上面这行命令里的端口参数说明一下VNC 系客户端大多接受IP:Port写法如果桌面共享用的是默认 5900直接写 IP 就行。如果服务端改了端口或者端口被占用导致 vino 启动到 5901就必须在 IP 后带端口例如192.168.1.100:5901。不写端口时默认 5900。3.2 认证过程与密码保存的注意事项连接时输入的密码是银河麒麟桌面共享里手动设置的那个 VNC 密码不是麒麟系统的登录用户密码。这两个密码一定要区分开。系统登录密码是给本机用户登录用的VNC 密码是给远程认证用的两者是独立的两套东西。很多刚上手的人会拿系统密码去试 VNC反复认证失败后才意识到问题。VNC Viewer 认证对话框里有一个“记住密码”的选项。勾选后密码会以明文形式存放在当前 Windows 用户的配置目录下。如果这台电脑是多人共用或者有安全审计要求不建议勾选。默认不勾选每次连接时手动输入虽然麻烦一点但至少不会把麒麟桌面的钥匙直接挂在别人面前。认证失败时VNC Viewer 会给出Authentication failed的明确提示。这时回到银河麒麟桌面共享重新确认密码。如果密码确实无误把现有密码删除后重新设置一遍部分版本在密码长度或字符匹配上存在缓存问题重设一次就能解决。3.3 排错连不上时先看哪个信息连接失败时分两种情况处理。如果是Connection refused说明网络是通的但目的地没有进程在监听按 2.2 节的方法检查 vino-server 进程和 5900 端口监听如果是Connection timed out说明数据包没有到达对方优先检查 IP 是否填对、麒麟机器是否休眠、网线或 Wi-Fi 是否正常。还有常见的Authentication failed优先检查密码和认证方式。我排错时有个固定顺序先在麒麟本机执行ps -ef | grep vino-server再执行ss -tlnp | grep 5900然后回到 Windows 执行 ping。三步做完基本能把问题锁定在服务端进程、端口监听、网络通路这三层上。比打开 VNC Viewer 反复试错快得多。需要指出的是银河麒麟的安全中心可能还开了应用白名单即使防火墙放行了 5900也会拦截未知程序的入站流量。这种情况在图形界面上排错很隐蔽可以在麒麟终端执行sudo iptables -L -n看实际生效的规则。如果之前执行过iptables -F仍然不通就按第 5 章里的方法检查 firewalld 状态。4. 反向连接银河麒麟 V10 连入 Windows 远程桌面前面一章说的是 Windows 发起的 VNC 连接现在换一个方向银河麒麟作为控制端Windows 7 作为被控端。这个方向在许多双机场景里更重要比如人在麒麟终端前需要检查 Windows 上的业务系统。这个方向上Windows 原生提供的是远程桌面服务也就是 RDP 协议默认端口 3389。银河麒麟 V10 不自带专有的 RDP 客户端但麒麟商店里的“桌面查看器”封装了 Remmina支持 RDP 和 VNC 两种协议一个工具就能应对两边连接需求。4.1 Windows 远程桌面服务的开启与账号准备在 Windows 7 上开启远程桌面右键“计算机”选“属性”左侧“远程设置”勾选“允许运行任意版本远程桌面的计算机连接”。这个选项比“仅允许运行带网络级别身份验证的远程桌面的计算机连接”更兼容因为 Remmina 在不同版本下对 NLA 的支持有差异遇到兼容问题可以先换这个选项。开启后还有一个硬性条件用来登录的 Windows 账户必须有密码。远程桌面安全策略不允许空密码账户从网络侧登录这是默认行为即使勾选了允许远程连接也一样。如果当前用的是本地账户且密码为空先去控制面板用户账户里设置一个。如果用的是微软账户直接使用微软账户的邮箱和密码就能通过认证。开启后立即验证服务端口:: 在 Windows 命令行执行确认 3389 端口处于监听状态 netstat -an | findstr 3389 :: 看到 LISTENING 状态说明远程桌面服务已经就绪这条 Windows 命令的关键是 findstr 相当于 Linux 的 grep。执行后如果输出里有0.0.0.0:3389和 LISTENING 字样说明服务端正常。如果没有输出先检查服务进程在“运行”里输入services.msc找到 Remote Desktop Services确认状态为正在运行。还要检查 Windows 防火墙远程桌面通常会被自动放行但如果之前改过防火墙策略需要手动添加 3389 端口的入站规则。4.2 麒麟桌面查看器连接 WindowsIP、账号与端口在银河麒麟 V10 上打开麒麟商店搜索“桌面查看器”安装后打开。这是个基于 Remmina 的图形客户端主界面是连接列表。新建连接协议选择 RDPRemote Desktop Protocol服务器地址填 Windows 7 的局域网 IP如192.168.1.20端口保持 3389。然后填 Windows 用户名和密码。用户名格式是个高频翻车点。如果 Windows 是本地账户用机器名\用户名或直接填用户名如果是域账户用域名\用户名。不要把微软账户邮箱和本地账户名混淆。我在实际项目里见过同事填了 Windows 登录邮箱但本机其实是用本地账户登录的结果 Remmina 提示认证失败换了本地账户名后立刻通。命令行方式也可以绕过图形界面适合把连接命令写进脚本# 在麒麟终端用 Remmina 命令行直连 Windows临时排错时很快 # -n 给连接一个显示名-r 指定协议为 rdp-s 指定服务器地址 # -u 用户名-p 密码注意密码会出现在命令行历史里仅限测试使用 remmina -n Windows7 -r rdp -s 192.168.1.20 -u .\user -p mypassword这里参数中用户名前缀用了.\user.表示当前远程主机.\user等价于告诉 RDP 服务端使用本机账户解析。Remmina 会把这个连接解析成一次 RDP 会话。需要注意命令行携带密码存在日志泄露风险我用它做临时排错但一到正式使用就改回图形界面保存凭据。如果连接超时先回到 Windows 本机确认 3389 端口监听状态再用ping 192.168.1.20验证网络层面通不通。许多时候问题出在 Windows 防火墙远程桌面服务默认在没有启用规则时会被拦截需要在防火墙高级设置里新建入站规则协议 TCP端口 3389操作选允许。这一步做完后再回到麒麟重试连接。4.3 跨系统剪贴板与分辨率适配连上 Windows 桌面后第一件事往往是复制粘贴。默认情况下从 Windows 复制一段文本回到麒麟终端里粘贴可能没有任何反应。这是因为 Remmina 的剪贴板同步默认没有开启。解决办法是打开连接的属性找到“高级”或“常规”选项卡勾选“启用剪贴板同步”。这个选项在不同版本里位置略有不同但一般都在连接设置里。分辨率适配是另一个影响体验的点。Remmina 默认使用当前窗口大小窗口拉大远程桌面分辨率也会跟着变。如果需要在固定分辨率下使用比如在浮动窗口里保持 1600x900可以在连接属性的“分辨率”下拉框中手动指定。全屏模式的切换快捷键是 F11 或 CtrlAltEnter退出全屏回到窗口模式再按一次即可。低带宽环境下可以顺手把色彩深度从 32 位降到 16 位或 256 色操作位置同样在连接属性的“色彩深度”下拉框。这里有个取舍色彩深度越低画面更新越快但文字边缘会有明显锯齿。我一般只在远程播放视频或者操作图表时才切回 32 位。音频重定向默认是关闭的偶尔有远程播放 Windows 音效的需求可以在连接属性里打开音频输出重定向它会通过 RDP 协议把声音传到麒麟端不过延迟比较明显不建议依赖。5. 避坑清单双机远程连接中最常踩的五个坑前面两条路径的完整步骤已经跑通但实际操作中至少有一半人会卡在下面这些细节上。这些坑我都踩过按“现象-原因-解决”写清楚希望你能直接跳过。5.1 现象连上几秒后自动断开我曾在 Windows 端用 VNC Viewer 连麒麟看到桌面的一瞬间连接就断掉了提示 Connection closed。反复连接多次都能连上但每次都坚持不过三秒。原因是麒麟桌面共享的访问控制默认可能设置为“仅限本机”vino-server 只把服务绑定在 127.0.0.1Windows 客户端建立的连接被服务端主动关闭。另一个原因是 vino-server 起了两个实例两个进程同时监听 5900 端口端口冲突导致第一个连接被踢掉。解决方法是先回到桌面共享把访问控制改成“允许所有人”保存后退出。然后在麒麟终端执行ss -tlnp | grep 5900如果看到有两个不同 PID 监听同一个端口用pkill vino-server把进程全部停掉再重新打开桌面共享生成单个实例。从那以后我每次配完都会用这条命令确认端口归属不再凭感觉。5.2 现象提示 Authentication failed但密码明明是对的VNC Viewer 报认证失败确认桌面共享里设置的就是这个密码也没输错位数但就是进不去。原因可能出在密码编码上。vino 在某些版本中会把用户设置的密码用 base64 编码后写入配置图形界面和命令行工具读到的键值不一定能直接对应。另外密码大于 8 位时VNC 服务端只比对前 8 位而客户端用完整密码去认证两边比对长度不一致也会造成失败。解决方法是重新设置一个不超过 8 位的密码。如果重设后仍失败删除当前用户的密钥环再试# 备份密钥环目录后移除让桌面共享重新生成密码存储 mv ~/.local/share/keyrings ~/.local/share/keyrings.bak pkill vino-server这个操作会重置本用户的密钥环包括浏览器或其他应用存储的密码也会被清除所以只建议在测试机上使用。生产环境优先考虑第一种方案把密码控制在 8 位以内。5.3 现象执行 iptables -F 后 Windows 仍然连不上有次我在麒麟上执行了sudo iptables -F满心以为防火墙已经放空结果 Windows 端依然连接超时。原因在于银河麒麟 V10 的防火墙不一定是 iptables 单独负责firewalld 服务可能同时在起作用。iptables -F只清了 iptables 的规则firewalld 的 zone 策略还在拦截 5900 端口。另外如果默认策略是 DROP清空规则后依然拒绝所有入站连接。解决方法是先查看 firewalld 状态# 查看 firewalld 是否在运行 systemctl status firewalld # 如果运行中直接放行 5900 端口并重载配置 sudo firewall-cmd --permanent --add-port5900/tcp sudo firewall-cmd --reload如果是 iptables 默认策略问题执行sudo iptables -P INPUT ACCEPT改变默认策略。但我知道很多人对这条命令有顾虑所以更推荐只放行指定端口。这个坑提醒我清空防火墙规则并不等于打开网络先诊断再动手。5.4 现象VNC 连接成功但桌面黑屏连接建立后没有报错可窗口里是一片黑色只有鼠标指针能移动。这个现象在麒麟 V10 的当前版本里出现频率不低。原因是银河麒麟桌面默认会话可能是 Wayland而 vino-server 在 Wayland 下只能捕获部分窗口不能捕获完整桌面。如果 VNC Viewer 连到的是 Wayland 会话就会出现有窗口边框但桌面内容黑屏的问题。解决方法是切换到 X11 会话登录。在登录界面输入用户名密码前点击屏幕下方或右上角的会话类型图标选择“Xorg”或“经典 Xorg”登录然后重新配置桌面共享。会话切换后 vino-server 能正常抓取桌面画面黑屏问题消失。这里要补充一句切换会话不会删除数据只是改变显示服务类型可以放心操作。5.5 现象麒麟端 RDP 连接 Windows 提示用户名密码错误从麒麟桌面查看器连 Windows 7输了好几次密码都提示 The user name or password is incorrect。Windows 本机登录同样账号密码却正常。原因集中在用户名格式上。RDP 认证的账号有套独立的解析规则本地账户在远程桌面里需要写成计算机名\用户名或者.\用户名直接填纯用户名在部分场景下会解析失败。另一个原因是 Windows 远程桌面服务端开启了“仅允许使用网络级别身份验证的远程桌面的计算机连接”Remmina 的 RDP 实现在老版本里对 NLA 支持不完整导致认证被重置。解决方法是把用户名写成带前缀的格式。Remmina 里可以试试.\username这个写法在大部分版本里等价于当前机的本地账户。如果还是失败到 Windows 远程设置里取消勾选 NLA 相关选项然后重启远程桌面服务验证。6. 进阶固定 IP 与启动器把远程桌面变成一键连接整套流程配好之后剩下的烦恼是每天重复输入 IP、密码尤其是两边都是桌面终端的时候。我的做法是做一个带状态检查的一键启动器把连接过程压缩成双击一次。Windows 侧VNC Viewer 支持命令行参数可以直接把目标地址和密码写进快捷方式再配合 ping 做前置检查。创建Kylin.bat放在桌面echo off ping 192.168.1.100 -n 1 nul if errorlevel 1 ( echo 无法 ping 通 192.168.1.100请检查网络 pause exit /b ) vncviewer.exe 192.168.1.100:5900 -passwordxxx这个 bat 里的关键点是ping -n 1只发一个包-n是次数参数避免等待过久。errorlevel 1表示 ping 不通时进入错误分支。-passwordxxx里的 xxx 换成实际 VNC 密码注意它是明文只适合个人电脑。如果不想明文保存可以不加这个参数让 VNC Viewer 每次手动输入。麒麟侧的 RDP 连接也可以写成 .desktop 启动器。在桌面新建一个文本文件内容仿照下面[Desktop Entry] NameWindows7 Remote Execremmina -n Windows7 -r rdp -s 192.168.1.20 -u .\user -p mypassword TypeApplication Terminalfalse保存后双击图标就会直接打开 Windows 远程桌面。这里Terminalfalse表示不弹终端窗口双击就是完整操作。.desktop文件右键选择“允许启动”否则麒麟在部分版本下会拦截未信任的启动器。从那以后我每次面对新装的银河麒麟都强制自己走一遍“桌面共享配置-端口确认-安全中心放行-客户端连接”的流程不再上来就清防火墙。这套顺序帮我绕开了第五章节里大部分坑也让我深刻理解了一个道理远程桌面连接连通的前提不是密码多复杂而是服务端监听、客户端协议、防火墙放行三件事都要对位。希望帮到你。本文还有配套的精品资源点击获取
返回列表