华为云 Flexus/Flexus X 云服务器(Linux)实操笔记
适配你当前这套实操流程:创建实例、弹性公网IP、安全组、远程连接、排错,整理成错题笔记风格
一、核心操作流程(最简步骤)
- 前置准备
- 国内云服务器购买前必须完成实名认证(个人用身份证),认证后才能开通实例
- 选地域:离你最近的,如华南(广州/深圳),延迟低;地域购买后不能更改
- 关于 Flexus:华为云 Flexus 是轻量/柔性算力云服务器(类似阿里云轻量应用服务器),价格便宜、配置灵活,适合个人学习和中小项目
- 创建云服务器实例
- 选择镜像:推荐 Debian 12 / Ubuntu 22.04 / 24.04 / openEuler(CentOS 7、8 已停止维护,不推荐)
- 本项目因学习需要使用 CentOS 7.9,最后一个支持它的 Docker 版本是 24.0.9
- 设置root密码(非常重要,SSH登录用),或创建密钥对(更安全,见 02)
- 配置系统盘大小;按需购买弹性公网IP(EIP),没有EIP外网无法访问
- 系统盘放系统,数据盘可单独挂载存放业务数据(学习阶段用系统盘即可)
- 绑定弹性公网IP(EIP)
- EIP是独立资源,创建后需要手动绑定到云服务器
- 绑定后,这个公网IP就是你ssh、浏览器访问的地址
- ⚠️ 销毁服务器时,EIP不会自动释放,单独扣费,不用要解绑并删除
- 安全组(VPC防火墙,云服务器第一层防护)
- 安全组:白名单机制,默认全部拒绝外网入站流量,只放行你手动添加的端口
- 一台实例可以绑定多个安全组,规则会叠加生效(取并集);但不绑定的安全组对该实例无效
- 创建入方向规则要点:
- 源地址类型:选
IP地址,填0.0.0.0/0= 所有公网IP(仅练习使用) - 协议TCP,填写端口:22(SSH)、80(http)、443(https)
- 源地址类型如果选「安全组」,只能VPC内网互通,互联网无法访问
- 源地址类型:选
- 远程连接
- 方式1:ssh客户端(FinalShell / Xshell / WSL ssh命令)
ssh root@公网IP(见 02) - 方式2:华为云网页控制台VNC(应急!ssh连不上的时候用,不需要依赖22端口)
- 方式1:ssh客户端(FinalShell / Xshell / WSL ssh命令)
- 系统内操作
- 部署服务:python http.server、Nginx等
- 系统内部防火墙(firewalld / iptables / ufw):第二层防护,安全组放行后,系统内部防火墙也要放行端口
- 本项目实际关闭了 firewalld 改用 iptables(Docker 兼容性问题),详见 03 笔记
- 备份
- 给系统盘打快照(控制台操作),关键操作前留一个恢复点,类似虚拟机的一键还原
二、高频问题&报错排查(重点,面试/实操最容易踩坑)
1. ssh连接超时 / 连接不通(最常见)
排查顺序(从上到下):
- 检查EIP是否绑定到实例,EIP是否正常
- 安全组有没有放行对应端口(22端口)
- 坑:安全组规则源地址类型选错,选成「安全组」,外网无法访问
- 系统内部防火墙拦截端口(firewalld / iptables)
# firewalld 查看状态
systemctl status firewalld
# firewalld 放行端口
firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --reload
# 本项目实际改用 iptables,详见 03 笔记
- 服务器实例状态异常:关机、故障
快速验证:
telnet 公网IP 22或在本地 PowerShell 执行Test-NetConnection 公网IP -Port 22,测试端口通不通
2. 安全组相关坑
- ❌ 误区:创建了安全组,但是实例没有绑定这个安全组 → 规则完全不生效
- ❌ 误区:添加规则只填端口,源地址类型选错,选安全组,外网访问失败
-
❌ 误区:一次性开放全部端口 1-65535,生产高危,容易被扫描、暴力破解
练习可以临时用
0.0.0.0/0,正式环境改为仅自己的公网IP
3. 网络类问题
-
能ping通公网IP,但是ssh连不上:ICMP(ping)和TCP端口是两套独立规则!ping通不代表端口开放
很多新手踩坑:安全组放行了ping,但是忘记开放22端口,能ping但是ssh超时
-
云服务器出方向默认全部允许(服务器访问外网,如apt/yum下载软件),一般不用修改出方向规则
4. 密码/登录问题
- ssh提示Permission denied:密码错误;或者镜像禁止root账号ssh登录(需要修改ssh配置)
- 密钥登录:如果创建实例选择密钥,不能用密码登录,只能使用私钥文件
5. 服务访问问题(部署网页服务,浏览器打不开)
排查三步:
- 安全组放行80端口
- 系统防火墙放行80端口
-
服务监听地址:必须监听
0.0.0.0:80,只监听127.0.0.1的端口外网无法访问坑:python http.server 默认监听0.0.0.0,但是很多自定义服务默认仅监听本地回环127.0.0.1,外网访问失败。 查看监听端口命令:
ss -tlnp
6. 计费坑(非常重要)
- EIP 单独计费,只要不释放,就算不绑定服务器,持续扣费,不用记得解绑删除
- 关机不代表停止计费:云服务器关机依然收费;选择“释放”才会销毁停止计费
- 流量:入方向流量免费,出网公网流量按量计费
三、运维常用命令(服务器内)
# 查看监听端口
ss -tlnp
# 查看防火墙状态
systemctl status firewalld
# 查看网卡IP
ip a
# 查看进程
ps aux
四、排错固定排查顺序(建议背下来,面试常问)
当外网访问服务失败,固定排查顺序:
- 实例是否开机、EIP是否绑定
- 安全组入方向:有没有放行端口
- 系统内部防火墙是否放行端口
- 服务是否正常启动
- 服务监听地址是不是 0.0.0.0(不是127.0.0.1)
- 检查进程是否监听对应端口 ss -tlnp
五、安全建议
- 不要长期开放
0.0.0.0/0的22端口,练习结束就修改为仅自己IP - SSH不要使用弱密码,有条件使用密钥登录,关闭密码登录
- 不要随意开放大量端口,遵循最小权限原则,需要哪个端口开放哪个
六、关于 ICP 备案(重要,务必了解)
什么是备案
国内云服务器(华为云、阿里云等大陆节点),如果要通过域名对外开放 80/443 网站服务,必须先向工信部申请 ICP 备案,把域名和服务器登记。未备案的域名,解析到国内服务器并开放网站,会被服务商检测并阻断。
要点
| 情况 | 是否需要备案 |
|---|---|
| 只用公网 IP 访问(不绑域名) | 不需要 |
| 域名解析到国内服务器,做网站/80/443 | 需要 |
| 域名解析到中国香港/海外服务器 | 不需要 |
| 仅 SSH(22端口)等非网站服务 | 一般不需要 |
备案流程
云厂商控制台提交 → 上传身份证、域名证书、人脸核验 → 云厂商初审 → 工信部审核(约 1-3 周)→ 通过后获得备案号,网站底部需展示。
当前项目的情况与应对
- 你现在把
cloud321.cloud直接解析到国内华为云服务器并开放 80/443,严格来说需要备案,否则可能被检测阻断(不是立即封,存在被拦风险) - 应对方案:
1. 正规做法:用华为云提交免费备案(需约 1-3 周,期间域名不能开站)
2. 学习/面试演示:面试官验证时主要是演示,可以接受短期风险;或演示时用 IP + 端口
3. 证书申请(Let's Encrypt)本身不要求备案,能正常签发 HTTPS - 注意:
.cloud等后缀域名支持备案,具体以阿里云备案系统支持的后缀列表为准
七、面试要点小结
- 能讲清"安全组(云平台第一层)→ 系统防火墙(第二层)→ 服务监听地址"三层网络
- 理解 EIP 是独立计费资源、关机仍收费、流量方向
- 知道国内服务器域名开站要 ICP 备案,以及香港/海外服务器免备案的区别
- 会用 VNC 控制台应急、会打快照备份
评论