如何用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 addr 或 ifconfig,查看enp0s3(网卡名称可能不同)下的inet地址,例如168.1.100。
  • 手动配置IP(静态):若需固定IP,编辑/etc/network/interfaces(Ubuntu)或/etc/sysconfig/network-scripts/ifcfg-ens33(CentOS),配置IPADDR、NETMASK、GATEWAY等参数,重启网络服务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. 找到linux或linux16行,在末尾添加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-8或zh_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的配置文件

    使用文本编辑器如 vi、nano 等打开查看,或用 `cat

    2025年8月16日
    21400
  • Linux系统如何升级JDK版本到最新稳定版?

    在Linux系统中升级JDK版本是开发环境中常见的操作,通常是为了使用新版本提供的特性、性能优化或安全补丁,本文将详细介绍Linux环境下升级JDK版本的完整流程,包括升级前的准备工作、旧版本卸载、新版本安装、环境变量配置及验证步骤,帮助用户顺利完成JDK版本升级,升级前的准备工作在开始升级JDK前,需要做好充……

    2025年9月21日
    23600
  • Linux如何实现多设备兼容与支持?

    Linux作为开源操作系统的核心优势之一在于其对多样化硬件设备的强大支持能力,这种能力并非偶然,而是源于内核设计的模块化、抽象化与层次化架构,通过统一设备模型、总线抽象、驱动框架等核心机制,Linux能够高效管理从嵌入式传感器、移动设备外设到服务器级硬件的各类设备,实现硬件与软件的解耦和动态适配,统一设备模型与……

    2025年8月26日
    20600
  • Linux cmd窗口如何正确关闭?

    在Linux操作系统中,命令行窗口(通常称为终端或Terminal)是用户与系统交互的核心界面,无论是系统管理、软件开发还是日常操作,都离不开终端的使用,在完成操作后,正确关闭终端窗口是避免资源浪费、防止进程异常的重要步骤,由于Linux终端的使用场景多样(如图形界面下的本地终端、远程SSH终端、TTY虚拟终端……

    2025年9月20日
    17700
  • Linux创建启动脚本的方法是什么?

    在Linux系统中,启动脚本是实现自动化任务、服务管理和环境配置的核心工具,通过编写启动脚本,可以让系统或用户在开机、登录时自动执行预设命令,例如启动服务、初始化环境、备份数据等,本文将详细讲解Linux中创建启动脚本的完整流程,涵盖脚本编写、权限管理、开机自启配置及常见问题解决方法,启动脚本的类型与适用场景L……

    2025年9月29日
    17400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信