如何用Xshell连接虚拟机Linux系统?

要通过Xshell连接虚拟机中的Linux系统,需完成虚拟机网络配置、Linux SSH服务开启、Xshell客户端设置及连接测试等步骤,以下是详细操作流程:

xshell如何连接虚拟机linux

准备工作:虚拟机与Linux系统配置

虚拟机网络模式设置

虚拟机需确保与宿主机(运行Xshell的电脑)网络互通,推荐使用NAT模式桥接模式

  • NAT模式(默认):虚拟机通过宿主机共享网络,IP由虚拟机DHCP自动分配,适合局域网环境。
  • 桥接模式:虚拟机直接连接外部网络,与宿主机处于同一网段,需手动配置IP或使用DHCP。

操作步骤(以VMware为例)

  • 打开虚拟机设置,选择“网络适配器”,勾选“NAT模式”或“桥接模式”,保存后重启虚拟机。

Linux系统获取IP地址

虚拟机启动后,需确认Linux系统的IP地址(后续Xshell连接需用到):

  • 自动获取IP(DHCP):执行命令 ip addrifconfig,查看enp0s3(网卡名称可能不同)下的inet地址,例如168.1.100
  • 手动配置IP(静态):若需固定IP,编辑/etc/network/interfaces(Ubuntu)或/etc/sysconfig/network-scripts/ifcfg-ens33(CentOS),配置IPADDRNETMASKGATEWAY等参数,重启网络服务systemctl restart networking

开启Linux的SSH服务

Xshell通过SSH协议连接Linux,需确保SSH服务已安装并启动:

  • 检查SSH服务状态:执行 systemctl status sshd(CentOS/Ubuntu 18+)或 /etc/init.d/sshd status(旧版)。
  • 安装SSH服务(若未安装):
    • CentOS:yum install openssh-server -y
    • Ubuntu:apt install openssh-server -y
  • 启动并设置开机自启
    systemctl start sshd          # 启动SSH服务
    systemctl enable sshd        # 设置开机自启

Xshell客户端安装与连接配置

下载并安装Xshell

  • 官网下载:访问Xshell官网,下载“Xshell 7”免费版,安装过程一路“下一步”即可,无需特殊配置。

新建Xshell会话

  • 打开Xshell,点击工具栏“新建”按钮,或按快捷键Ctrl+N

    xshell如何连接虚拟机linux

  • 填写基本信息(以下为关键参数):

    • 名称:自定义会话名称(如“CentOS虚拟机”)。
    • 协议:默认“SSH”。
    • 主机:输入Linux虚拟机的IP地址(如168.1.100)。
    • 端口:默认SSH端口为22,若Linux修改过SSH端口,需填写对应端口。
    • 用户身份验证:选择“密码”,输入Linux系统的用户名(如root普通用户名)和密码;若后续使用密钥认证,此处需选择“公钥”。
  • 保存会话:点击“确定”,会话会出现在Xshell左侧“会话”列表中,双击会话即可连接。

首次连接注意事项

  • 安全警告:首次连接时,Xshell会提示“主机密钥未验证”,点击“接受并保存”即可。
  • 连接测试:成功连接后,终端会显示Linux系统信息(如[root@localhost ~]#),表示连接成功。

常见问题与解决方法

以下是连接过程中可能遇到的问题及对应的解决方案:

问题现象 可能原因 解决方法
连接超时/无法连接 虚拟机IP错误、网络不通 检查虚拟机IP是否正确(ip addr);
宿主机ping虚拟机IP(ping 192.168.1.100),若不通,检查虚拟机网络模式或防火墙。
SSH服务未启动 Linux未开启SSH服务 执行systemctl start sshd并设置开机自启。
用户名/密码错误 输入的用户名或密码不正确 确认Linux系统用户名(whoami)和密码,区分大小写。
端口被占用/SSH端口非默认 Linux SSH服务端口被修改(如2222) 在Xshell会话中填写修改后的端口(如2222),并检查Linux防火墙是否开放该端口。
防火墙阻止连接 Linux防火墙拦截SSH端口 关闭防火墙(systemctl stop firewalld)或开放SSH端口(firewall-cmd --add-port=22/tcp --permanent)。

高级配置:密钥认证(更安全)

相比密码认证,SSH密钥认证更安全,可避免密码泄露风险,配置步骤如下:

在Linux生成密钥对

执行命令ssh-keygen -t rsa,一路回车即可生成密钥(默认保存在~/.ssh/目录):

xshell如何连接虚拟机linux

ssh-keygen -t rsa -b 4096  # 生成4096位RSA密钥

生成后,目录下会生成id_rsa(私钥,需保密)和id_rsa.pub(公钥,需上传到服务器)。

上传公钥到Linux追加到~/.ssh/authorized_keys文件:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys  # 追加公钥
chmod 600 ~/.ssh/authorized_keys  # 设置文件权限(仅所有者可读写)

Xshell配置密钥认证

  • 在Xshell会话属性中,选择“用户身份验证”→“方法”改为“public key”。
  • 点击“浏览”,选择Linux生成的id_rsa私钥文件(需提前通过Xftp等工具将私钥复制到宿主机)。
  • 保存会话后重新连接,无需输入密码即可登录。

会话管理与优化

  • 保存会话:Xshell会自动保存会话信息,也可手动点击“文件→属性”修改配置(如设置窗口颜色、字体大小、快捷键等)。
  • 多标签操作:支持同时打开多个会话标签,方便管理多台虚拟机。
  • 文件传输:结合Xftp工具(同开发商),可直接在Xshell中调用Xftp进行文件上传/下载。

相关问答FAQs

Q1:忘记Linux用户密码怎么办?

A

  1. 重启虚拟机,在GRUB引导界面按e进入编辑模式;
  2. 找到linuxlinux16行,在末尾添加rd.break,按Ctrl+X启动;
  3. 系统进入紧急模式,执行以下命令重置密码:
    mount -o remount,rw /sysroot   # 重新挂载根目录
    chroot /sysroot                # 切换到根环境
    passwd username                # 修改指定用户密码(username为用户名)
    touch /.autorelabel             # 标记需重新 SELinux 标签(可选)
    exit                           # 退出chroot
    reboot                         # 重启系统

Q2:Xshell连接后中文显示乱码怎么办?

A

  1. 在Xshell会话中,右键选择“属性→终端→编码”,选择“UTF-8”;
  2. 若仍乱码,检查Linux系统语言环境,执行echo $LANG,确保为en_US.UTF-8zh_CN.UTF-8,若不是,可通过export LANG=en_US.UTF-8临时设置,或修改/etc/locale.conf文件永久生效。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/31641.html

(0)
酷番叔酷番叔
上一篇 2025年9月28日 06:26
下一篇 2025年9月28日 06:39

相关推荐

  • 如何退出Linux命令行?新手必学实用方法

    在Linux系统中,“退出命令行”可能涉及多种场景,比如退出当前终端会话、关闭远程连接、返回图形界面或完全关闭系统等,不同场景对应的操作方式不同,需要根据具体情况选择合适的方法,以下从常见场景出发,详细说明Linux命令行的退出方法,并附操作总结表格及常见问题解答,退出当前终端会话(本地Shell)普通退出:e……

    2025年8月22日
    16300
  • Ubuntu 20.04比CentOS 7强在哪?

    在Linux系统上安装Oracle客户端是连接Oracle数据库的关键步骤,以下为详细操作指南(以Oracle Instant Client为例,适用于CentOS/RHEL/Ubuntu等主流发行版),整个过程注重安全性和可维护性,遵循Oracle官方最佳实践,依赖包:# CentOS/RHELsudo yu……

    2025年7月14日
    18300
  • Linux如何安装cc?

    在Linux系统中,“cc”通常指的是C语言编译器,最常见的是GNU Compiler Collection(GCC),安装“cc”本质上是安装GCC编译器及相关工具链,以便编译C语言源代码,不同Linux发行版的包管理器不同,安装步骤略有差异,但整体流程相似,以下是详细的安装指南,涵盖主流发行版、安装验证、常……

    2025年10月1日
    15700
  • 为什么你努力却失败,别人轻松成功?

    在Linux系统中配置互信(SSH无密码登录)是管理多台服务器、实现自动化运维的关键技术,以下为详细操作指南,严格遵循OpenSSH官方规范,兼顾安全性与实用性:互信原理通过非对称加密实现身份验证:私钥(~/.ssh/id_rsa):本地保留,需严格保密公钥(~/.ssh/id_rsa.pub):分发到目标服务……

    2025年6月13日
    15400
  • Linux下用gdb如何实现单步执行?调试步骤与操作方法详解

    Linux环境下,程序调试是开发过程中的关键环节,单步执行作为核心调试手段,允许开发者逐行或逐指令跟踪程序执行流程,观察变量状态变化,精准定位逻辑错误,本文将详细介绍如何通过主流调试工具实现单步执行,重点以GDB(GNU Debugger)为例展开说明,大多数Linux发行版默认已安装GDB,若未安装,可通过包……

    2025年10月4日
    14900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信