webmin需通过yum/dnf仓库安装、开放10000端口(firewalld+selinux+云安全组)、配置有效ssl证书、使用root登录并禁用危险内核升级。裸rpm安装易缺依赖,自签名证书致功能残缺,非root用户无法加载模块。

Webmin 能直接用浏览器管理 Linux 服务器,但不是装上就能安全、稳定、顺手地用——关键在安装方式、端口开放、证书处理和权限控制这四步。跳过任一环节,轻则连不上,重则服务起不来或被误升级崩系统。
Webmin 安装必须用 yum/dnf 仓库,别硬上 rpm -ivh
直接 rpm -ivh webmin-*.rpm 容易缺 Perl 模块或 SSL 依赖,尤其在 CentOS 8+/Rocky 9+ 上大概率报 error: Failed dependencies。官方早就不推荐这种裸包安装了。
- 先加仓库文件:
/etc/yum.repos.d/webmin.repo,内容写死baseurl=http://download.webmin.com/download/yum,别用过期的镜像站链接 - 导入 GPG 密钥:运行
rpm --import http://www.webmin.com/jcameron-key.asc,否则dnf install webmin会卡在签名验证 - CentOS 8+ 必须用
dnf,yum命令已软链但部分依赖解析不一致;Rocky/AlmaLinux 同理
10000 端口打不开?检查 firewalld 和 SELinux 双层拦截
装完 Webmin 服务是起来了,但浏览器访问 https://IP:10000 超时,90% 是防火墙没放行或 SELinux 拦了 HTTPS 流量。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
-
firewall-cmd --permanent --add-port=10000/tcp后必须跟--reload,只加不重载等于没加 - SELinux 默认策略禁止非标准端口跑 HTTPS,临时关闭用
setenforce 0验证是否是它导致;长期方案是semanage port -a -t http_port_t -p tcp 10000 - 云服务器(阿里云/腾讯云)还要去控制台安全组里手动放通 10000 端口,光配本地防火墙没用
登录时提示“您的连接不是私密连接”?别点“继续前往”,先换证书
Webmin 默认用自签名证书,现代 Chrome/Firefox 会直接阻断,不是点“高级→继续前往”就能绕过——新版浏览器已禁用该入口。强行忽略会导致后续 AJAX 请求失败,页面功能残缺。
- 最稳做法:登录后立刻进
Webmin → Webmin Configuration → SSL Encryption,上传你自己的域名证书(PEM 格式),或生成免费 Let's Encrypt 证书(需域名解析到位) - 别信“升级 Webmin 内核”按钮:资料里明确警告过,
Upgade Webmin Now里的内核升级选项会破坏系统引导和网卡驱动,root 权限下一点就可能变砖 - 首次登录务必用
root用户,普通用户即使加了 sudo 权限也无法加载多数模块,会报Access denied for module xxx
Apache 虚拟主机配完不生效?重启服务前先看模块状态
在 Webmin → Servers → Apache Server → Create virtual host 填完信息点保存,页面显示成功,但 curl 仍返回默认页——常见原因是 mod_ssl、mod_rewrite 等关键模块没启用,或配置写进了错误的配置段。
- 进
Apache Server → Global configuration → Configure Apache modules,把ssl、rewrite、headers全勾上再保存 - 虚拟主机配置默认写入
/etc/httpd/conf.d/webmin-xxx.conf,但某些发行版 Apache 主配置里没包含conf.d/*.conf,得手动确认httpd.conf里有IncludeOptional conf.d/*.conf - 重启别只点“Start Apache”,先点
Apply Changes(在模块配置页底部),再点服务重启,否则新配置根本没加载
Webmin 的坑不在功能少,而在它把底层操作封装得太“透明”——比如用户创建时勾选“创建主目录”,它实际执行的是 useradd -m,但若 /home 所在分区满或 SELinux 上下文异常,就会静默失败,日志里只有一行 Failed to create home directory。这类细节不盯住日志和返回码,光看 Web 界面提示,很容易以为“已经好了”。










