尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Ubuntu 18.04远程访问实战:MobaXterm SSH连接配置与排查指南
1. 先别急着敲命令把整条链路想清楚1.1 你面对的不只是“装个系统”这么简单“装Ubuntu 18.04通过MobaXterm的ssh远程访问”这个标题看起来很直白但真正在电脑面前操作过一轮就会发现这里面至少叠了三层任务第一层是把Ubuntu 18.04装到一台机器上第二层是让这台机器在网络里有一个固定且可达的地址第三层才是用Windows上的MobaXterm通过SSH协议连过去。很多人装完系统就觉得完事了结果在Windows上打开MobaXterm输了一通IP地址连半天连不上就开始怀疑人生。其实问题往往不在最后一公里而是前面某一步埋了雷。SSH远程访问这件事本质上就是“你的Windows电脑作为客户端去连接一台运行着SSH服务端程序的Linux主机”。你可以把它理解成打电话Ubuntu这边是接电话的人它得先把电话机sshd服务插上电、接好线Windows这边是打电话的人它得知道对方的号码IP地址和分机号端口并且两边得在同一个通话网络里局域网或可达网络。任何一个环节断了这通电话就拨不通。所以整篇内容我就按照这条链路的顺序来聊装系统时的关键注意事项装完之后的网络配置SSH服务端的开启与防火墙放行再到MobaXterm这一端的连接参数设置。最后再把我实际踩过的一些坑整理成速查表尤其是那种“明明每一步都照做了为什么还是连不上”的案例给大家一个可以逐条排查的路径。1.2 为什么是这个组合版本、终端工具与协议的选择逻辑先说说为什么是Ubuntu 18.04。虽然这个版本已经不算新但它在很多服务器场景、嵌入式开发环境、软件编译环境里依然是“保守稳定”的代名词。很多公司内部的老项目、工业设备、教学实验环境跑的还是18.04。对新手来说18.04的图形安装界面、网络管理方式、软件源仓库都比更早的版本友好不少对老手来说它的包管理习惯和系统目录结构又足够熟悉。所以如果你手头的机器性能一般或者你只是想搭一个稳定的Linux环境练手18.04依然能打。再说MobaXterm。Windows上能用的SSH客户端一大堆PuTTY、Xshell、Windows Terminal自带的OpenSSH都行但MobaXterm有一个非常大的优势它把SSH、SFTP、端口转发、X11转发、RDP、VNC这些功能都集成到了一个界面里。你左边是远程文件目录右边是终端窗口中间还能直接拖拽上传下载文件这种“一体化”的体验特别适合需要频繁在Windows和Linux之间倒腾文件的场景。我把话放这儿一旦你习惯了MobaXterm再回去用那种纯命令行SSH工具会觉得非常别扭。协议层面选SSH而不是Telnet、FTP原因很简单SSH全程加密密码和文件内容不会明文裸奔Telnet虽然也能远程登录但传输内容可以被抓包工具直接看到这在稍微正规一点的环境里是绝对不允许的。SSH默认端口是22你可以理解为这一栋楼里那个固定不变的接待窗口虽然理论上能换但大多数场景下没必要改改了反而会增加排查成本。2. 装好Ubuntu 18.04并且让它可以被远程连上2.1 制作启动盘与安装过程中的细节安装Ubuntu 18.04最常用的方式是用U盘做启动盘。这里我建议用Rufus或者balenaEtcher这类工具把Ubuntu 18.04的ISO镜像写入U盘。需要注意一个关键选项写入模式一定要选“DD镜像模式”尤其是在Rufus里如果默认的“ISO镜像模式”写入有些主板引导时会直接黑屏或报错我吃过这个亏。用balenaEtcher的话基本无脑选镜像选U盘直接开始就行。安装过程中的几个节点我简单说一下分区方案如果是整块硬盘只装Ubuntu选“清除整个磁盘并安装Ubuntu”最省事如果想和Windows双系统共存就要选“其他选项”手动分区需要留出空闲空间。手动分区的话建议至少分一个/根分区和一个swap交换分区。根分区文件系统选ext4挂载点选/内存小于4G的机器swap可以分4~8G内存大的机器分2G意思意思就行。用户名和密码这里容易埋坑。安装时填写的用户名会成为系统管理员账号同时也是后续SSH登录时的默认用户名。如果你想用root直接登录SSH安装完还得单独设置root密码否则root是被锁住的。软件更新源安装过程中会让你选下载服务器默认可能会指向国外源。建议改成国内镜像源比如阿里云或腾讯云的镜像否则后续apt update时下载速度会让人怀疑人生。装完之后系统会重启进入Ubuntu桌面。到这里第一层任务完成但能不能远程访问还取决于接下来的网络和服务配置。2.2 网络配置IP、网段、网关一个都不能错Ubuntu 18.04安装完成后默认使用的是DHCP自动获取IP。也就是说你的机器现在有一个IP但它是路由器随机分配的重启之后可能就变了。如果IP地址老变MobaXterm里的会话配置就得跟着改这太折磨人了。所以我的建议是刚装完系统第一件事就是把IP固定下来。最直接的方法是图形界面操作点击右上角网络图标进入“有线设置”选择你的网卡名称可能是类似“Wired connection 1”的东西点IPv4选项卡把“自动(DHCP)”改成“手动”然后填入你的IP地址、子网掩码、网关和DNS。这里必须弄清楚你家或公司网络的网段。比如你的路由器管理地址是192.168.1.1那么你给Ubuntu这台机器设192.168.1.100就是一个合理的地址子网掩码填255.255.255.0网关填192.168.1.1DNS可以填192.168.1.1或者223.5.5.5这种公共DNS。填完之后点击“应用”再打开终端用ip addr看一下网卡上的地址是否变成了192.168.1.100。如果你用的是服务器版没有图形桌面那就得改Netplan配置文件。Ubuntu 18.04的Netplan配置路径在/etc/netplan/下文件名通常叫01-netcfg.yaml或类似。示例配置长这样network: version: 2 ethernets: ens33: dhcp4: no addresses: - 192.168.1.100/24 gateway4: 192.168.1.1 nameservers: addresses: - 223.5.5.5 - 114.114.114.114注意那个/24就是子网掩码255.255.255.0的CIDR写法必须写上不写的话系统可能不认。改完之后执行sudo netplan apply让它生效。还有一个细节网卡名不一定是ens33不同机器上可能是enp0s3、eth0之类。不确定就用ip addr查看一下当前活跃网卡的名称再改。网络这块如果配错最典型的症状就是Windows上ping Ubuntu的IP不通或者Ubuntu上不了网。所以配置完一定要先在本机上验证ip addr看IPping 网关看网关通不通ping 8.8.8.8或ping 223.5.5.5看外网通不通。只有这几条都通了后面的SSH才有意义。2.3 开启SSH服务并放行防火墙Ubuntu 18.04默认没有安装OpenSSH服务端这一点很多人不知道。在桌面上打开终端先执行sudo apt update sudo apt install openssh-server -y装完之后检查一下服务是否在运行sudo systemctl status ssh如果看到active (running)说明服务已经起来了。如果没起来多半是安装有问题可以用sudo systemctl start ssh手动启动再用sudo systemctl enable ssh设置开机自启。这里强烈建议设置开机自启否则每次Ubuntu重启之后你都得跑到机器面前敲命令那就失去远程访问的意义了。Ubuntu 18.04默认自带了ufw防火墙默认规则可能是关闭状态也可能是开启状态。如果是关闭状态SSH端口直接就能访问如果开启状态就得放行SSH服务sudo ufw allow OpenSSH sudo ufw enable注意顺序别搞反ufw allow OpenSSH必须在开启防火墙之前执行否则你一开防火墙就把自己挡在外面了。这里有个更稳妥的做法是直接sudo ufw allow 22/tcp把22端口放行不管以后服务名怎么变都不会误伤。到此为止Ubuntu这一端已经具备了被远程连接的条件它有了固定IPSSH服务在跑防火墙放行了端口。接下来就是Windows这一端的故事了。3. MobaXterm上手与第一次SSH连接3.1 下载、安装与Session创建的常见误区MobaXterm的下载直接去官网选免费版Home Edition就够了。它有便携版和安装版两种我建议直接用便携版解压到一个固定目录双击exe就能用走到哪带到哪不会往系统里写一堆注册表项。便携版有个小坑你把它放在带中文的路径下偶尔会有配置保存异常的问题所以尽量放在纯英文目录比如D:\MobaXterm。打开MobaXterm之后界面顶部的工具栏里有一个“Session”按钮点进去就能新建会话。这里第一个容易犯的错是选错会话类型如果你要SSH连接Linux会话类型必须选“SSH”别选成“Telnet”或者“RDP”。选错类型的话连上去要么是乱码要么直接报协议错误。Session创建界面里最关键的信息是Remote host填Ubuntu的IP地址也就是之前固定下来的那个192.168.1.100Specify username这个选项是可选的勾上之后可以直接填Ubuntu的用户名PortSSH默认是22如果你没有改过sshd_config里的Port字段保持22就行填完后点“OK”会话会被保存到左侧的会话列表里下次双击就能直接连。这个保存会话的功能是MobaXterm比Windows自带的SSH命令强的地方之一你不用每次打开终端都敲一遍ssh usernameip而且每个会话都可以单独配置字体、颜色、终端类型。3.2 连接参数逐个说明端口、用户名、密码的首连验证第一次点击会话发起连接时MobaXterm会弹出一个提示问你是否信任这台主机的指纹fingerprint。这个提示的作用是防止中间人攻击——它告诉你这台远程服务器在网络上对应的指纹是什么如果你确认这是你要连的机器就点“Accept”并保存。盲点“Reject”会导致连接直接被断开这一点千万别搞错。接着就是输入密码。你在这里输入的密码是Ubuntu上那个用户对应的登录密码。需要注意输入密码时屏幕上不会显示字符也不会显示星号这不是卡住了是SSH协议的设计就是这样的。输完直接回车就行。如果你勾选了“Specify username”它会跳过用户名输入步骤直接让你输密码如果没有勾选它会先问你要用户名再要密码。这一步如果提示Permission denied, please try again先别急着怀疑密码输错可以去Ubuntu本机终端试试用同样的用户名密码能不能登录如果本机能登录而远程不能那大概率是sshd配置里禁用了密码登录或者用户被限制访问了。首连验证成功之后你会看到一个正常的Linux终端提示符类似usernameubuntu:~$。到了这一步整条链路就算通了Ubuntu装了系统、配了网络、跑了SSH服务Windows端通过MobaXterm连上了。后面想跑什么命令直接在这个终端窗口输入即可。3.3 登录成功后的界面布局与常用功能MobaXterm登录成功后的主界面是左右两栏布局。左侧是远程文件浏览器SFTP默认显示你登录用户的Home目录右侧是终端会话。这个布局对文件操作特别友好你可以直接在左侧目录树里找到某个文件然后拖拽到Windows桌面就能把远程文件下载到本地反过来把Windows文件拖进左侧目录就能上传到服务器。这在之前用PuTTY的时代是不可想象的便利。很多人在终端里执行某个命令后界面卡死或输出特别长其实只是终端显示宽度不够。你可以右键点会话顶部标签进入“Edit session”把终端尺寸调大或者直接在终端里拖拽边框调整大小。还有三个功能我建议你重点用起来多标签管理MobaXterm支持像浏览器一样同时开多个SSH会话标签每台服务器一个标签切换起来非常方便。X11转发如果Ubuntu上装了图形界面程序比如一些编译工具的自带图形界面你可以在SSH会话里直接运行它窗口会显示在Windows桌面上。这个依赖MobaXterm自带的X server默认是开启的等会儿我会专门说。命令面板和宏一些高频命令可以存成宏一键执行适合批量操作多台机器。4. 把远程访问升级成“日常顺手用”的状态4.1 密钥登录配置彻底摆脱密码输入密码登录最大的问题是每次都要敲密码如果密码复杂一点输错率还挺高。更专业一点的做法是配置SSH密钥登录。原理不复杂你生成一对公钥和私钥把公钥放到Ubuntu的~/.ssh/authorized_keys文件里私钥留在Windows本地。连接时服务器会向客户端发起一个用公钥加密的挑战客户端用私钥解密并回应验证通过就放行。在MobaXterm里操作很直观打开“Tools”菜单选择“MobaKeygenSSH key generator”生成一个RSA或Ed25519密钥对。建议选Ed25519类型更新安全性更高长度也不用像RSA那样动辄2048、4096位。生成后先把公钥复制下来然后把私钥保存到一个本地路径比如C:\Users\你的用户名\.ssh\id_ed25519。接着在MobaXterm的SSH会话设置里勾选“Use private key”选择你保存的私钥文件然后在“Advanced SSH settings”里把“Remote environment”设置成你习惯的终端模式。首次连接时MobaXterm会提示你是否要把公钥安装到远程主机上如果它没有自动提供这个选项你需要手动把公钥追加到Ubuntu服务器的authorized_keys文件里。在Ubuntu终端执行mkdir -p ~/.ssh chmod 700 ~/.ssh echo 你的公钥内容 ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys这里有个几乎所有人都会犯的权限错误~/.ssh目录和authorized_keys文件的权限如果太开放比如777、644sshd会直接忽略这个公钥文件继续要求密码登录。正确的做法就是上面代码里写的那样.ssh目录是700authorized_keys是600。配好之后下次连接如果私钥路径正确就能直接登录不再提示密码。4.2 固定IP、多设备管理与SSH连接保活密钥登录配好之后你要面对的另一个问题是“连接不稳定”。SSH连接如果长时间没操作经常会出现“卡住”的现象敲键盘没反应过一会儿直接断开。这是因为网络设备或系统默认会清理空闲连接。解决方法是让客户端每隔一段时间发一个心跳包。在MobaXterm的Session设置里进入“SSH”选项卡下的“Advanced SSH settings”把“SSH keepalive”勾上默认间隔写30秒就够了。还有一个很容易被忽略的细节如果Ubuntu的开机时间比较长了IP地址可能因为租约过期而发生变化。如果你给自己配了固定IP但不能保证路由器一定分配这个地址建议登录路由器后台把它的MAC地址和IP做一个绑定DHCP静态分配这样Ubuntu即使切换到DHCP模式也总能拿到同一个IP。如果你要管理的Ubuntu机器不止一台我的习惯是在MobaXterm左侧会话列表里维护一个清晰的目录结构比如按项目、按环境测试/生产、按机房分文件夹。配合使用“MobaXterm的FTP功能、快速命令栏、宏脚本”日常管理多台服务器的效率会提升一个档次。4.3 X11转发跑图形程序的小技巧很多人不知道SSH还能把Linux上的图形程序窗口直接显示到Windows桌面上。在MobaXterm里这个功能默认是支持的。前提条件有两个一是Ubuntu上要有X11相关的库一般桌面版自带了二是MobaXterm的SSH会话属性里有一个“X11-forwarding”选项默认是开启状态。如果你在Ubuntu终端里运行一个图形程序比如nautilus文件管理器或者xeyes正常情况下Windows桌面上会弹出对应的窗口。如果没反应检查一下sshd_config里是否有X11Forwarding yes这个配置项默认是有的但被人改成no的情况也不少。改完之后记得重启ssh服务。一条可能的经验是如果Windows上能看到图形窗口了但画面非常卡顿可以试着在终端里加-X参数或者设置渲染模式但这属于进阶调优了。绝大多数情况下MobaXterm默认配置就能跑起来。5. 我踩过的坑和常见问题速查表5.1 连接失败类问题排查路径我先列一个最常见的现象清单你对号入座就知道问题大概在哪个环节。现象MobaXterm提示Connection refused。 原因和做法这个提示基本说明你是找到了目标机器但目标机器对应端口上没有程序在监听。最可能是openssh-server没装好或者ssh服务没起来上Ubuntu本机执行sudo systemctl status ssh看看其次是 sshd 配置文件里把Port改了比如改成了2222你连接时还用22就会拒连。改过端口的话MobaXterm里的Port也要跟着改。现象提示Connection timed out。 原因和做法超时意味着你发出的包根本没到达目标机器或者被防火墙挡住了。先在Windows命令行窗口执行ping 192.168.1.100看能不能通。不通的话检查两台机器是否在同一网段检查Ubuntu的IP、网关配置检查路由器和交换机端口是否正常。通了但依然超时那就是ufw或外部防火墙把22端口挡了去Ubuntu上确认一下sudo ufw status。现象提示Permission denied (publickey,password)。 原因和做法认证阶段就被拒绝了。通常是密码错了或者User填错了。还有一种我经常遇到的情况Ubuntu用户从来没有设置过密码安装系统时可能跳过了密码设置这时候需要在Ubuntu本机用sudo passwd 用户名设置一个密码才能远程登录。现象能连上但MobaXterm终端里显示Unable to negotiate之类的协议错误。 原因和做法这种通常是客户端和服务器支持的算法不一致常见于老系统配新客户端或反着来。解决方法一个是换新一点的客户端版本另一个是在sshd_config里开启默认的KexAlgorithms配置别把兼容算法关掉。5.2 权限、编码与终端显示问题连接上之后终端里中文乱码是个高频问题。Ubuntu 18.04默认locale可能是空的SSH上去之后中文字符显示成方块或问号。在Ubuntu上执行sudo apt install language-pack-zh-hans -y sudo update-locale LANGzh_CN.UTF-8然后断开会话重连一次。MobaXterm本身的终端编码也要设置成UTF-8在Session编辑界面的“Terminal settings”里把“Default encoding”改成UTF-8。两边都对了中文就不会乱。权限相关的坑集中在文件传输上。你用MobaXterm左侧SFTP面板拖拽文件时如果上传/下载失败先看目标目录有没有写权限。上传到/home/用户名/这种自己家目录肯定是没问题的上传到/opt、/etc这种系统目录就需要root权限。一个做法是用sudo去修改目标目录的属主比如sudo chown -R 用户名:用户名 /opt/某个目录另外一种思路是自己本地用SFTP上传到用户目录然后在终端里用sudo mv把文件再移动到目标位置。5.3 适合抄作业的速查表我把整个流程压缩成一张表格方便你操作时逐行检查检查项验证命令/操作预期结果Ubuntu IPip addr显示你固定的IP如192.168.1.100/24网关连通性ping 192.168.1.1不丢包外网连通性ping 223.5.5.5不丢包ssh服务状态sudo systemctl status sshactive (running)防火墙规则sudo ufw statusOpenSSH或22/tcp处于ALLOW状态端口监听sudo netstat -tlnp | grep :22显示sshd监听在22客户端IP连通Windows命令行ping 192.168.1.100通MobaXterm端口会话设置里Port22与远程监听的端口一致其实这张表写完你会发现百分之八十的“连不上”问题都是因为某个环节没满足上面的一条。所以别慌按表逐行查问题总能定位到具体是哪一环丢了。最后再分享一个小技巧在MobaXterm里右键点击会话标签选择“Duplicate session”可以快速开一个一模一样的会话如果你的Ubuntu机器有多个IP比如内网和公网都有把最常用的IP存成会话把备用IP写在备注里。这样就算办公网络环境变了你也不用重新建会话改一下IP就能连上。我个人在实际操作中最大的体会是远程访问这件事真正难的不是敲那几条命令而是养成一种“分环节排查”的思维方式。系统装好了不等于能连能ping通了不等于能SSH能SSH了不等于能用得顺手。每一层都有各自的检查点把检查点记熟了以后不管换什么发行版、换什么终端工具都能很快上手。
RELATED

相关推荐

免安装Android Studio,用命令行工具管理Android SDK与模拟器

免安装Android Studio,用命令行工具管理Android SDK与模拟器

简介:这是一份面向Windows平台的Android命令行工具包,专为不需要安装完整Android Studio的开发者设计,可解决SDK组件下载、应用编译、设备连接与调试等常用开发问题。压缩包共108个文件,其中95个为jar格式的工具组件,1…

📅 2026/10/22 18:49:41
SSM商城项目实战:Java初学者掌握Spring+MyBatis核心配置的跳板

SSM商城项目实战:Java初学者掌握Spring+MyBatis核心配置的跳板

简介:这是一套基于SSM(SpringSpringMVCMyBatis)框架与MySQL数据库开发的完整线上商城系统,含前台用户端与后台管理平台,面向Java Web初学者及中级开发者,适用于课程设计、毕业项目或SSM技术栈实战训练。资源…

📅 2026/10/22 18:44:41
如何从Docker容器逆向还原docker run启动命令

如何从Docker容器逆向还原docker run启动命令

1. 为什么“查看docker run启动参数”是每个运维和开发绕不开的硬需求你有没有遇到过这样的场景:线上一个容器突然开始吃CPU,日志里全是报错,但没人记得当初是用什么命令启动的;或者接手同事留下的遗留系统,只看到一堆…

📅 2026/10/22 18:44:41
MORE NEWS

更多资讯

📰

AI技术日报与工程化落地:从轻量级多模态到智能体可观测性

今天这份日报写晚了,倒不是拖延,而是 2026 年 10 月 7 日这个时间点确实特殊——国内大部分人还在国庆假期的返程路上,海外的技术社区却一点没闲着。我把各类信息源扫了一遍,整体感受很强烈:讨论“大模型还能做什么”的…

📰

SpringBoot+Vue智慧课堂协同学习平台:从数据库设计到前后端部署全解析

1. 毕设选题:为什么智慧课堂协同学习平台值得做,以及它能解决什么每年毕业季,我都会收到不少学生咨询同一个问题:"SpringBootVue的项目到底做什么题目才好过?"说实在的,做了这么多年相关项目&…

📰

智能荧光工具如何实现细胞吞噬过程自动识别与追踪

研究细菌吞噬过程,最让人头疼的不是做实验,而是看数据。吞噬细胞吞没荧光标记的细菌,听起来简单,真正做起来却要面对一连串问题:细菌太小,Movement太快,荧光信号在酸性吞噬体里会猝灭&#xff0…

📰

复刻现实:高斯泼溅三维重建的完整技术解析与实战

1. 项目概述:当我们说“复刻现实”时,到底在复刻什么这几年三维重建圈子最热闹的话题,绕不开“高斯泼溅”这四个字。我第一次看到这种渲染出来的画面时,第一反应是“这不就是照片吗”——然后鼠标一转,视角丝滑地滑过建…

📰

顽固AI率怎么降?从文本检测原理到五种实战重写方法

1. 顽固AI率到底在查什么1.1 检测平台眼里的“AI痕迹”是什么2026年聊降AI率这个话题,和一两年前完全不是一回事。早先大家讨论的“AI率高”,大多是几个句子被标红,用同义词替换就能救回来。今年我遇到的情况是:整篇文档读起来通顺…

📰

Vim快捷键映射完全指南:从map基础到leader与函数封装

干过一段时间服务端开发或者常年在终端里摸爬滚打的人,几乎都绕不开 Vim。编辑器上手之后,大家很快会发现一件事:默认按键方案虽然能跑,但在高频操作上真的不够痛快。这时候,自己配置快捷键映射就成了一件迟早要做的正…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬