当前位置: 首页 > article >正文

告别复杂配置:5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问(含Cpolar固定TCP地址设置)

告别复杂配置5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问含固定公网地址设置每次想快速搭建一个临时的开发环境或者测试服务器你是不是都得花上大半天时间折腾网络配置、端口转发甚至还得去研究路由器后台尤其是在ESXi这类企业级虚拟化平台上虽然功能强大但一想到要配置复杂的网络策略很多人就望而却步了。今天我想分享一套极其精简的流程核心目标只有一个让你在5分钟内从零开始安全地通过互联网SSH连接到ESXi里那台刚装好的Ubuntu 22.04虚拟机。这不仅仅是“能连上”而是要实现一种“开箱即用”的远程工作流。无论是为了给客户做一次临时的线上演示还是你自己需要在外快速访问实验室的测试环境这套方法都能让你摆脱对固定公网IP和复杂网络知识的依赖。我们绕开那些令人头疼的防火墙规则和端口映射用一种更优雅、更安全的内网穿透思路直达目标。下面我就把每一步拆解开保证你跟着做一遍就能彻底掌握。1. 极速部署ESXi中Ubuntu虚拟机的创建与基础配置在开始远程访问之前我们得先有一个可以访问的目标。在VMware ESXi上部署Ubuntu 22.04其实可以非常快关键在于跳过非必要的自定义选项采用最简配置。首先通过浏览器登录你的ESXi管理界面。在左侧导航栏点击“虚拟机”然后选择“创建/注册虚拟机”。在弹出的向导中选择“创建新虚拟机”点击下一步。注意为了追求速度我们在此采用最简配置。如果你的虚拟机有特定的性能要求如大量编译任务可以在后续随时调整CPU和内存。在“选择名称和客户机操作系统”页面你需要填写几个关键信息名称给你的虚拟机起个容易识别的名字例如Ubuntu-22.04-Dev。客户机操作系统系列选择Linux。客户机操作系统版本选择Ubuntu Linux (64位)。ESXi 7.0 通常能自动识别 Ubuntu 22.04。接下来是选择存储。如果你的ESXi主机只有一块数据存储直接选择它即可。然后进入“自定义设置”环节这是决定部署速度的关键。我建议采用以下“够用就好”的配置模板配置项推荐值说明CPU2 个插槽 每插槽核心数 1总计2个vCPU足以应对大多数轻量级开发任务。内存4096 MB (4 GB)Ubuntu 22.04桌面版运行流畅的起步内存。硬盘25 GB 厚置备延迟置零系统盘空间安装基础开发工具足够。CD/DVD驱动器数据存储ISO文件关键步骤在这里点击“数据存储ISO文件”旁边的“浏览”上传你提前下载好的Ubuntu 22.04 LTS桌面版ISO镜像文件并务必勾选“连接”复选框。完成上述配置后直接点击“完成”。虚拟机创建好后在列表中找到它右键点击并选择“电源” - “打开电源”。双击虚拟机视图就会进入安装界面。Ubuntu的安装过程现在非常友好。语言选择“中文简体”键盘布局保持“Chinese”在“更新和其他软件”步骤建议勾选“为图形或无线硬件以及其他媒体格式安装第三方软件”这能省去后续手动安装一些驱动和编解码器的麻烦。安装类型选择“清除整个磁盘并安装Ubuntu”点击“现在安装”。时区地图上点击“Shanghai”然后设置你的用户名、计算机名和密码。提示密码请务必设置得足够复杂因为这台机器后续将通过公网访问。一个强密码是安全的第一道防线。点击“继续”后系统开始自动安装。泡杯咖啡的功夫安装完成点击“现在重启”。重启后你就拥有了一个全新的Ubuntu 22.04桌面环境。2. 核心服务启用在Ubuntu内一键激活SSH守护进程虚拟机跑起来了但默认情况下Ubuntu桌面版并没有开启SSH服务这意味着我们无法从外部连接。开启SSH服务是打通远程访问通道的第一步在Ubuntu上这只需要几条终端命令。首先在Ubuntu桌面按下Ctrl Alt T打开终端。我们需要更新一下软件包列表并安装OpenSSH服务器软件。在终端中依次输入以下命令sudo apt update sudo apt install openssh-server -y第一条命令sudo apt update会刷新本地的软件包仓库索引确保我们安装的是最新版本的软件。第二条命令sudo apt install openssh-server -y中的-y参数表示自动确认安装省去手动输入“Y”的步骤。安装完成后SSH服务通常会自动启动。但为了万无一失我们可以手动启动并设置它开机自启sudo systemctl enable ssh sudo systemctl start ssh sudo systemctl status sshsudo systemctl enable ssh将SSH服务设置为开机自动启动。sudo systemctl start ssh立即启动SSH服务。sudo systemctl status ssh查看SSH服务的运行状态。如果看到“active (running)”的字样说明服务已成功启动。服务启动后我们还需要知道虚拟机的IP地址以便后续连接。在终端中输入ip a或者如果你更喜欢传统的ifconfig命令可能需要先安装net-tools包sudo apt install net-tools -y然后再运行ifconfig。在输出信息中找到类似eth0或ens192这样的网络接口其下的inet字段显示的地址例如192.168.1.105就是虚拟机的局域网IP。请记下这个地址。至此Ubuntu虚拟机已经做好了被SSH连接的准备。你可以在同一局域网内的另一台电脑上使用SSH客户端如Windows上的PowerShell或CMDmacOS/Linux上的终端尝试连接ssh 你的用户名虚拟机IP地址。输入密码后如果能成功登录说明局域网内的SSH服务配置正确。3. 打通内外网无需公网IP的远程访问方案部署现在我们能在办公室或家里的局域网内访问这台Ubuntu了。但如何从公司、咖啡馆或者任何有互联网的地方访问它呢传统做法需要你拥有公网IP并在路由器上设置端口转发这不仅复杂还存在安全风险且很多家庭宽带或企业网络并不提供公网IP。这里我们采用一种更现代、更安全的方案安全的隧道内网穿透。其原理是在你的Ubuntu虚拟机或同一网络下的另一台主机上运行一个轻量级客户端这个客户端会与云端服务器建立一个加密隧道。外部访问者通过连接云端服务器分配的一个特定地址请求就会被加密转发到你的内网虚拟机。这完全绕开了对本地公网IP和路由器配置的依赖。市面上有多种工具可以实现此功能其核心流程相似。我们以其中一个工具为例演示如何快速建立隧道。首先你需要在其官网注册一个账户。注册成功后根据你的操作系统下载对应的客户端。由于我们的Ubuntu是图形界面可以直接打开浏览器访问下载页面。对于Ubuntu 22.04我们通常下载Linux版本。在终端中可以使用wget命令直接下载安装包请替换链接为实际下载链接wget -O cpolar-stable-linux-amd64.tar.gz https://www.cpolar.com/static/downloads/cpolar-stable-linux-amd64.tar.gz下载完成后解压文件tar -zxvf cpolar-stable-linux-amd64.tar.gz解压后你会得到一个可执行文件cpolar。我们可以将其移动到系统的可执行文件路径下方便全局调用sudo mv cpolar /usr/local/bin/接下来需要进行身份验证。在终端中输入以下命令并根据提示输入你注册时使用的邮箱和密码cpolar authtoken 你的认证令牌这里的“认证令牌”可以在登录官网后在“身份验证”页面找到。执行成功后隧道客户端就配置好了。现在我们来创建一条SSH隧道。这条隧道的作用是将本地Ubuntu的22端口SSH默认端口映射到公网。执行命令cpolar tcp 22执行后终端会显示类似下面的信息Tunnel Status: online Version: 3.0 Web Interface: http://localhost:4040 Forwarding: tcp://3.tcp.cpolar.top:11508 - localhost:22其中Forwarding一行就是关键。它告诉我们公网地址3.tcp.cpolar.top:11508现在已经被映射到了本机的22端口。任何人包括你自己通过SSH客户端连接3.tcp.cpolar.top的11508端口数据都会被安全地转发到你内网的这台Ubuntu虚拟机上。你可以立即在外网的电脑上打开终端如Windows PowerShell测试一下ssh 你的Ubuntu用户名3.tcp.cpolar.top -p 11508。输入密码应该就能成功建立远程连接了。4. 从临时到固定配置永久稳定的公网访问地址上一步我们成功实现了远程访问但细心的你可能发现了问题那个公网地址3.tcp.cpolar.top:11508是临时的。每次重启隧道客户端端口号如11508甚至域名都可能发生变化。这对于临时测试没问题但如果你需要长期、稳定地连接这台开发机每次都要查看并修改连接地址就太不“优雅”了。因此我们需要一个固定的公网地址。幸运的是大多数内网穿透服务都提供了“保留TCP地址”的功能。这相当于在云端为你预留了一个专属的、不变的接入点。登录你所用工具的管理后台通常是web界面。在左侧菜单中找到“预留”或“Reserved TCP Address”相关选项。点击“保留TCP地址”你需要填写以下信息地区选择离你或你的主要访问地最近的服务器区域例如“China”以获得更低的延迟。描述填写一个便于记忆的备注如“My-ESXi-Ubuntu-SSH”。点击“保留”按钮系统会立即为你分配一个固定的公网地址格式可能类似1.tcp.cpolar.top:14216。这个地址和端口号将不再改变请妥善保存。获得固定地址后我们需要更新本地的隧道配置让它指向这个固定地址而不是每次生成随机地址。首先停止当前运行的隧道在运行cpolar tcp 22的终端中按CtrlC。然后使用新的命令启动隧道并绑定固定地址cpolar tcp 22 -regioncn_vip -remote-addr1.tcp.cpolar.top:14216命令参数说明tcp 22指定映射本地22端口。-regioncn_vip指定使用中国区的VIP服务器线路通常更稳定。-remote-addr1.tcp.cpolar.top:14216指定使用我们刚刚保留的固定公网地址。执行后隧道会重新建立。此时你就可以在任何地方使用固定的命令ssh 用户名1.tcp.cpolar.top -p 14216来连接你的Ubuntu虚拟机了一劳永逸。为了让隧道在系统启动时自动运行我们还可以将其配置为系统服务。在Ubuntu上可以创建一个systemd服务文件sudo nano /etc/systemd/system/cpolar.service将以下内容粘贴进去请根据你的实际安装路径和固定地址修改[Unit] DescriptionCpolar Tunnel Service Afternetwork.target [Service] Typesimple User你的用户名 ExecStart/usr/local/bin/cpolar tcp 22 -regioncn_vip -remote-addr1.tcp.cpolar.top:14216 Restarton-failure RestartSec5 [Install] WantedBymulti-user.target保存退出后执行sudo systemctl daemon-reload sudo systemctl enable cpolar.service sudo systemctl start cpolar.service sudo systemctl status cpolar.service这样即使虚拟机重启SSH隧道也会自动建立确保你的远程访问通道始终可用。5. 安全加固与高效连接实践拥有了稳定便捷的远程访问能力后我们绝不能忽视安全。将一台服务器暴露在公网上哪怕是通过隧道也需要采取一些基本的安全加固措施。同时一些连接技巧也能极大提升使用体验。首要的安全措施是禁用密码登录改用SSH密钥对认证。密钥认证比密码安全得多因为它几乎无法被暴力破解。在你的本地电脑比如你的笔记本电脑上生成一对密钥ssh-keygen -t ed25519 -C your_emailexample.com按照提示你可以为私钥设置一个保护密码passphrase也可以直接回车留空。生成后公钥id_ed25519.pub和私钥id_ed25519通常保存在~/.ssh/目录下。接下来需要将公钥上传到ESXi上的Ubuntu虚拟机。一个简单的方法是使用ssh-copy-id命令如果你的本地系统支持ssh-copy-id -p 14216 你的用户名1.tcp.cpolar.top如果不支持可以手动操作先将本地公钥内容复制然后登录到Ubuntu虚拟机将公钥内容追加到~/.ssh/authorized_keys文件的末尾。密钥上传成功后登录Ubuntu虚拟机编辑SSH服务器配置文件sudo nano /etc/ssh/sshd_config找到并修改以下几行PasswordAuthentication no PubkeyAuthentication yes PermitRootLogin prohibit-password # 或者直接改为 no 以完全禁止root登录修改完成后保存文件并重启SSH服务sudo systemctl restart ssh现在尝试从本地使用密钥登录ssh -i ~/.ssh/id_ed25519 -p 14216 你的用户名1.tcp.cpolar.top。如果配置正确你将无需输入密码或只需输入私钥的保护密码即可登录。至此你的SSH连接安全性得到了质的提升。为了提升连接效率可以配置本地的SSH客户端配置文件。在你的本地电脑的~/.ssh/config文件没有则创建中添加如下配置Host esxi-ubuntu HostName 1.tcp.cpolar.top Port 14216 User 你的Ubuntu用户名 IdentityFile ~/.ssh/id_ed25519 ServerAliveInterval 60保存后以后你只需要在终端输入ssh esxi-ubuntu就能一键完成所有参数配置的连接极大简化了操作。最后记得保持系统更新。定期在Ubuntu虚拟机上运行sudo apt update sudo apt upgrade来安装安全补丁。同时关注你所使用的内网穿透服务客户端更新以确保服务的稳定性和安全性。这套从快速部署到安全加固的完整流程我本人在多个跨地协作项目和临时演示环境中反复使用过。它的优势在于将企业级虚拟化平台的强大与个人开发的便捷性完美结合让你能像使用本地电脑一样随时随地调用远在数据中心的计算资源。固定地址的配置虽然多了一步但换来的是长期稳定的使用体验绝对值得投入。

相关文章:

告别复杂配置:5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问(含Cpolar固定TCP地址设置)

告别复杂配置:5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问(含固定公网地址设置) 每次想快速搭建一个临时的开发环境或者测试服务器,你是不是都得花上大半天时间折腾网络配置、端口转发,甚至还得去研究路由器后台&#x…...

2024前端字体优化指南:从阿里巴巴普惠体到可变字体实战

2024前端字体优化实战:从品牌定制到性能极致的全链路方案 去年我们团队接手了一个面向全球市场的金融科技产品重构,设计稿里指定了一款精致的品牌字体。上线后,市场团队却收到了大量来自Windows用户的反馈,抱怨界面文字“发虚”、…...

Flask项目打包成EXE的终极指南:PyInstaller常见报错与解决方案大全

Flask项目打包成EXE的终极指南:PyInstaller常见报错与解决方案大全 你是否曾花费数周时间精心打磨了一个Flask应用,它在本地的开发服务器上运行得丝滑流畅,但当你试图将它分享给同事、客户或学生时,却陷入了一场“环境配置”的噩梦…...

从零起步探索SEO,让网站访客源源不断流入

在探索SEO的过程中,理解每个模块的内涵和相互关系至关重要。内容优化是连接关键词研究与外部链接建设的枢纽。通过优质的内容,不仅可以吸引目标用户,还能提升他们在网站上的体验和互动。在撰写内容时,需关注用户需求,确…...

CVAT本地部署全攻略:从Docker镜像构建到团队协作配置(2024避坑指南)

CVAT本地部署全攻略:从Docker镜像构建到团队协作配置(2024避坑指南) 如果你正在为计算机视觉项目寻找一个功能强大、可定制且支持团队协作的标注平台,那么CVAT(Computer Vision Annotation Tool)很可能已经…...

java基于SSM框架的房屋租赁系统的设计与实现论文

目录引言系统需求分析系统设计系统实现系统测试总结与展望参考文献附录(可选)项目技术支持源码LW获取详细视频演示 :文章底部获取博主联系方式!同行可合作引言 研究背景与意义国内外研究现状论文研究内容与目标 系统需求分析 功…...

java基于ssm框架的企业员工管理系统 毕业论文

目录引言系统需求分析系统设计系统实现系统测试总结与展望参考文献附录项目技术支持源码LW获取详细视频演示 :文章底部获取博主联系方式!同行可合作引言 研究背景与意义:阐述企业员工管理系统在现代企业管理中的重要性,以及基于S…...

cv_unet_image-colorization镜像部署常见问题与解决方案汇总

cv_unet_image-colorization镜像部署常见问题与解决方案汇总 1. 引言 如果你正在尝试部署cv_unet_image-colorization这个黑白照片上色工具,可能会遇到各种问题。从环境配置到模型加载,从权限问题到性能优化,每个环节都可能成为部署路上的绊…...

基于Qt与ElaWidgetTools:从零构建一个现代化跨平台即时通讯客户端

1. 为什么选择Qt和ElaWidgetTools来造一个“现代”聊天软件? 如果你和我一样,是个喜欢折腾的开发者,想自己动手做一个既好看又好用的跨平台聊天软件,那技术选型绝对是第一步,也是最让人纠结的一步。市面上客户端框架那…...

从握手到长连:HTTPS与WSS的架构协同与本地开发实践

1. 从一次“握手”说起:HTTPS与WSS的协同基础 想象一下,你正在和一个朋友打电话。拨通电话、互相确认身份、然后开始聊天,这个过程和我们今天要聊的HTTPS与WSS的“握手”非常像。只不过,在互联网世界里,这个“握手”过…...

瀚高数据库(HighGoDB)Windows环境下的安装与实战配置指南

1. 为什么选择在Windows上部署瀚高数据库? 如果你是一名Java或.NET开发者,日常工作环境就是Windows,那么你很可能遇到过这样的场景:公司项目需要从MySQL或Oracle迁移到一个更符合特定安全要求的国产数据库。这时候,瀚高…...

Enhanced Tensor Low-Rank and Sparse Representation Recovery for Incomplete Multi-View Clustering

1. 论文基本信息 发表时间:2023 年 发表 venue:The Thirty-Seventh AAAI Conference on Artificial Intelligence (AAAI-23) 2. 核心思想 该论文针对不完整多视图聚类(Incomplete Multi-View Clustering, IMVC)问题,提出了一种名为 ETLSRR(Enhanced Tensor Low-Rank and…...

中国SaaS正式进入AI时代

今天看见大崔把一年一度的中国SaaS大会改名为中国企业AI大会,遂感叹:中国SaaS时代(2015-2025),正式结束了。(1)目前中国SaaS公司,在资本方面:上市难融资难卖出难在业务方…...

圣诞树语音氛围灯硬件设计与故障排查指南

1. 项目概述“圣诞树语音氛围灯”是一个面向节日场景的嵌入式交互式灯光系统,其核心目标是通过语音指令驱动多级LED灯光效果,营造动态、可响应的节日氛围。项目采用模块化硬件架构,以语音识别模组为感知前端,MCU为控制中枢&#x…...

S12SD紫外线传感器在TI MSPM0开发板上的ADC采集与强度等级转换实战

S12SD紫外线传感器在TI MSPM0开发板上的ADC采集与强度等级转换实战 最近在做一个户外环境监测的小项目,需要检测紫外线强度,于是找到了S12SD这款紫外线传感器模块。它体积小巧,价格也便宜,正好搭配手头的TI MSPM0开发板来用。今天…...

700W同步降压电源设计:宽输入高效率DC-DC模块实战

1. 项目概述本项目是一款面向中功率桌面应用场景的宽输入范围同步降压型直流电源模块,设计目标为在48V最大输入电压条件下,稳定输出12V/58.4A(700W)直流电,同时满足纹波≤150mVpp、满载效率≥96%的工程指标。该电源并非…...

【Rust】从零开始:MacOS环境下的Rust安装与权限问题解决

1. 为什么选择Rust,以及为什么从MacOS开始 如果你和我一样,是个对系统编程、高性能应用或者WebAssembly感兴趣,但又对C的内存安全问题感到头疼的开发者,那么Rust很可能就是你一直在找的那把“瑞士军刀”。我第一次接触Rust&#x…...

深入解析STM32 GPIO速度配置:从理论到实践

1. 别被“速度”这个词骗了:它到底在配置什么? 很多刚开始玩STM32的朋友,一看到GPIO初始化结构体里那个 Speed 成员,第一反应可能就是:“哦,这个是不是设置我HAL_GPIO_TogglePin函数跑多快的?”…...

JetBrains IDE试用期管理工具:跨平台高效解决方案

JetBrains IDE试用期管理工具:跨平台高效解决方案 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter ide-eval-resetter是一款专注于JetBrains系列IDE试用期管理的开源工具,通过安全可靠的技术…...

Phi-3-mini-4k-instruct实战教程:用Ollama部署个人写作助手(小说/公文/邮件)

Phi-3-mini-4k-instruct实战教程:用Ollama部署个人写作助手(小说/公文/邮件) 你是不是经常为写东西发愁?写小说卡在情节上,写工作报告半天憋不出几个字,回复邮件又觉得不够得体。如果有个聪明的助手能帮你…...

一图总结20 个 AI Agent 核心概念!

最后 从0到1!大模型(LLM)最全学习路线图,建议收藏! 想入门大模型(LLM)却不知道从哪开始? 我根据最新的技术栈和我自己的经历&理解,帮大家整理了一份LLM学习路线图,涵盖从理论基础到落地应用的全流程!拒绝焦虑&a…...

Z-Image-Turbo-辉夜巫女企业应用:动漫MCN机构IP孵化全流程AI提效方案

Z-Image-Turbo-辉夜巫女企业应用:动漫MCN机构IP孵化全流程AI提效方案 1. 引言:当动漫IP孵化遇上AI生产力 想象一下这个场景:一家动漫MCN机构,手上有几十个虚拟IP角色需要孵化。从最初的设定图、表情包、宣传海报,到社…...

STC8H8K64U学习板硬件设计与教学实践指南

1. 项目概述STC8学习板是一块面向51单片机初学者的综合性硬件教学平台,以STC8H8K64U为核心控制器,完整覆盖嵌入式系统入门阶段所需的关键外设模块与基础接口实践。该设计并非简单功能堆砌,而是围绕“可观察、可验证、可调试”的教学逻辑展开&…...

RePKG:重构Wallpaper Engine资源处理流程的技术突破

RePKG:重构Wallpaper Engine资源处理流程的技术突破 【免费下载链接】repkg Wallpaper engine PKG extractor/TEX to image converter 项目地址: https://gitcode.com/gh_mirrors/re/repkg 行业困境:数字内容创作的效率瓶颈 在数字创意产业快速发…...

Hunyuan-MT Pro教育科技应用:在线课堂实时双语字幕系统搭建

Hunyuan-MT Pro教育科技应用:在线课堂实时双语字幕系统搭建 1. 项目背景与价值 在线教育已经成为现代学习的重要方式,但语言障碍仍然是许多学习者面临的挑战。特别是在国际课程、外语教学或跨国教育合作中,实时语言翻译需求日益迫切。 传统…...

OpenClaw 火出圈外,但大多数人对它有很大的误解

OpenClaw 是彻底破圈了。最近一段时间,我身边已经有不少朋友开始找我咨询如何使用 OpenClaw。甚至连我夫人所在的传统公司,也开始推动 AI 在日常工作中的应用。前几天她还甩给我一篇文档,说是公司内部要求学习的材料。我打开一看,…...

CentOS 7下利用YUM缓存实现Keepalived高效离线部署

1. 为什么你需要YUM缓存离线部署方案? 如果你是一名运维工程师或者系统管理员,肯定遇到过这样的场景:客户现场或者公司内部的生产环境,服务器被严格限制在隔离的内网中,完全无法访问互联网。这时候,你需要部…...

告别复杂 SQL 性能瓶颈!金仓智能下推技术的实战解析

你是否遇到过这样的场景:一个看似逻辑清晰的复杂SQL,在测试环境小数据量下运行飞快,一到生产环境海量数据场景就直接“卡死”;查看执行计划后发现,子查询无差别扫描全量数据,生成了远超预期的巨大中间结果集…...

Claude桌面客户端深度体验:Electron框架下的跨平台实践与性能优化

1. 从网页到桌面:Claude桌面客户端初体验 作为一个每天要和Claude打交道的AI工具重度用户,当我听说Claude终于推出桌面客户端时,第一反应是“终于来了”。毕竟,看着ChatGPT、Perplexity这些同行都陆续有了自己的“专属地盘”&…...

Verilog实战:从零构建四种关键触发器

1. 触发器:数字世界的记忆细胞 如果你刚开始接触FPGA和数字电路设计,可能会觉得“触发器”这个词听起来有点抽象,甚至有点吓人。别担心,让我用一个最简单的比喻来解释:触发器就是数字电路里的“记忆细胞”。就像我们的…...