在Windows系统中远程连接Linux服务器或主机是日常运维、开发和管理中的常见需求,主要可通过命令行工具(如SSH)或图形界面工具(如RDP、VNC)实现,本文将详细介绍具体操作步骤、所需工具及注意事项,帮助用户顺利完成连接。
前期准备工作
在开始连接前,需确保Linux端和Windows端满足以下条件:
Linux端配置
-
开启SSH服务(命令行连接必备)
SSH(Secure Shell)是Linux远程管理的标准协议,大多数Linux发行版默认安装OpenSSH服务,若未安装,可通过以下命令安装:- Ubuntu/Debian:
sudo apt update && sudo apt install openssh-server
- CentOS/RHEL:
sudo yum install openssh-server
安装后启动服务并设置开机自启:
sudo systemctl start sshd
sudo systemctl enable sshd
- Ubuntu/Debian:
-
配置防火墙
确保防火墙允许SSH流量(默认端口22),以UFW(Ubuntu)和firewalld(CentOS)为例:- Ubuntu:
sudo ufw allow 22/tcp
- CentOS:
sudo firewall-cmd --permanent --add-port=22/tcp && sudo firewall-cmd --reload
- Ubuntu:
-
创建用户并设置权限
若使用非root用户连接,需确保用户具有sudo权限(可选,根据操作需求)。
Windows端准备
-
网络连通性
确保Windows设备与Linux主机处于同一局域网,或Linux主机已配置公网访问(需注意安全组/防火墙规则),可通过Windows的ping [Linux_IP]
测试连通性。 -
安装客户端工具
- 命令行工具:Windows 10/11已内置OpenSSH客户端,可直接使用CMD或PowerShell;若使用旧版本系统,可下载PuTTY等第三方工具。
- 图形界面工具:需安装RDP客户端(Windows自带)或VNC Viewer(如RealVNC、TigerVNC)。
通过SSH实现命令行远程连接
SSH适用于无图形界面的服务器(如服务器版Linux)或需要高效命令行操作的场景。
方法1:使用Windows自带SSH客户端(推荐)
-
打开CMD或PowerShell
按Win+R
输入cmd
或powershell
,回车打开终端。 -
执行连接命令
输入以下命令(替换username
为Linux用户名,168.1.100
为Linux主机IP):ssh username@192.168.1.100
首次连接会提示确认主机指纹(输入yes
并回车),然后输入Linux用户密码即可登录。 -
密钥认证(更安全)
为避免每次输入密码,可配置SSH密钥认证:- Windows端生成密钥对:在CMD/PowerShell中运行
ssh-keygen -t rsa -b 4096
,按提示生成密钥(默认保存在~/.ssh/
目录)。 - 上传公钥到Linux:使用
ssh-copy-id
命令(需先通过密码登录):
ssh-copy-id username@192.168.1.100
或手动将公钥(id_rsa.pub
追加到Linux的~/.ssh/authorized_keys
文件中(需确保.ssh
目录权限为700
,authorized_keys
权限为600
)。
- Windows端生成密钥对:在CMD/PowerShell中运行
方法2:使用第三方工具(如PuTTY)
-
下载并安装PuTTY
访问PuTTY官网下载安装包(无需安装,解压即可使用)。 -
配置连接参数
打开PuTTY,在“Session”页面输入Linux主机IP(192.168.1.100),端口默认为22,连接类型选择“SSH”,点击“Open”。 -
登录并验证
弹出终端后输入用户名和密码,即可连接,若使用密钥认证,需在“Connection > SSH > Auth”中指定私钥文件(id_rsa.ppk
)。
通过RDP实现图形界面远程连接
RDP(Remote Desktop Protocol)适用于需要Linux图形界面的场景(如桌面版Linux),需在Linux端安装xrdp服务。
Linux端安装xrdp
-
安装桌面环境(若无)
若Linux无图形界面,需先安装轻量级桌面(如XFCE):- Ubuntu:
sudo apt install xfce4
- CentOS:
sudo yum groups install "X Window System" "XFCE"
- Ubuntu:
-
安装并配置xrdp
- Ubuntu:
sudo apt install xrdp
- CentOS:
sudo yum install epel-release && sudo yum install xrdp
启动服务并设置开机自启:sudo systemctl start xrdp && sudo systemctl enable xrdp
- Ubuntu:
-
配置防火墙
开放RDP端口(3389):- Ubuntu:
sudo ufw allow 3389
- CentOS:
sudo firewall-cmd --permanent --add-port=3389/tcp && sudo firewall-cmd --reload
- Ubuntu:
Windows端连接
-
打开远程桌面连接
在Windows搜索栏输入“远程桌面连接”,或运行mstsc
命令。 -
输入Linux主机信息
在“计算机”栏输入Linux主机IP,点击“连接”。 -
输入用户名密码
输入Linux用户名和密码(格式:username
或username@hostname
),若提示“未知发行者”,点击“是”继续,即可进入Linux图形界面。
通过VNC实现图形界面远程连接
VNC(Virtual Network Computing)是跨平台的图形协议,灵活性高,适合自定义桌面环境。
Linux端安装VNC服务器
以TigerVNC为例:
-
安装VNC服务器:
sudo apt install tigervnc-standalone-server tigervnc-xorg-extension
(Ubuntu)sudo yum install tigervnc-server
(CentOS) -
设置VNC密码:
运行vncpasswd
,输入密码(8-20位,仅支持数字和字母)。 -
配置启动脚本:
编辑~/.vnc/xstartup
文件,添加以下内容(以XFCE为例):#!/bin/bash unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
保存后赋予执行权限:
chmod +x ~/.vnc/xstartup
-
启动VNC服务:
运行vncserver :1
(1
表示显示端口,对应5901
),首次启动会生成配置文件。
Windows端连接
-
安装VNC Viewer
下载并安装RealVNC或TigerVNC Viewer(官网可免费获取)。 -
连接VNC服务器
打开VNC Viewer,输入Linux_IP:1
(如168.1.100:1
),点击“连接”,输入VNC密码即可进入图形界面。
连接方式对比
连接方式 | 适用场景 | 所需工具 | 特点 |
---|---|---|---|
SSH | 命令行操作、服务器管理 | Windows自带SSH/PuTTY | 安全高效,支持密钥认证 |
RDP | 图形界面、桌面管理 | Windows远程桌面连接/xrdp | 性能好,需Linux安装xrdp |
VNC | 跨平台图形界面、自定义 | VNC Viewer/TigerVNC | 灵活性高,兼容性强 |
常见问题解决
-
连接超时/拒绝连接
- 检查Linux主机SSH服务状态:
sudo systemctl status sshd
- 确认防火墙放行端口(22/3389/5900)
- 检查Linux主机IP是否正确(可通过
ip addr
查看)
- 检查Linux主机SSH服务状态:
-
图形界面卡顿/黑屏
- RDP:检查
~/.xsession
文件是否正确配置桌面启动命令 - VNC:尝试切换桌面环境(如GNOME→XFCE),或重启VNC服务:
vncserver -kill :1 && vncserver :1
- RDP:检查
FAQs
Q1:为什么使用SSH连接时提示“Permission denied, please try again.”?
A:可能原因包括:①用户名或密码错误;②密钥认证失败(公钥未上传或权限错误);③账户被锁定(多次输错密码),排查步骤:①确认用户名密码正确;②检查~/.ssh/authorized_keys
文件权限是否为600
,.ssh
目录权限是否为700
;③尝试通过sudo cat /var/log/auth.log
(Ubuntu)或sudo cat /var/log/secure
(CentOS)查看登录日志。
Q2:使用RDP连接Linux后出现黑屏,如何解决?
A:通常是由于xrdp与桌面环境兼容性问题导致,解决方法:①安装轻量级桌面(如XFCE):sudo apt install xfce4
;②配置xrdp使用XFCE:编辑~/.xsession
文件,添加startxfce4
;③重启xrdp服务:sudo systemctl restart xrdp
,若仍黑屏,可尝试切换用户登录(su - username
)后重新启动xrdp。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/27620.html