前言
你是否曾面对闪烁的终端光标感到无从下手?是否在深夜被“systemctl status 报错”或“磁盘爆满”警报惊醒,却因不熟悉命令行而手忙脚乱?对于开发者、初创团队成员,甚至只是想高效管理个人服务器的用户而言,Linux 服务器运维常被一道无形的高墙阻隔——那便是对命令行的深度依赖。
但时代在变,运维不该是少数人的“黑魔法”。想象一下:无需记忆繁杂指令,只需打开浏览器,就能像操作桌面应用一样实时监控 CPU 负载、一键管理容器、可视化配置网络、甚至远程修复服务——这并非未来幻想,而是 Cockpit 带来的现实。
Cockpit 是由 Red Hat 主导开发的开源服务器管理平台,它轻量、安全、开箱即用,直接集成于主流 Linux 发行版。它将复杂的系统操作转化为直观的图形界面,让服务器状态一目了然,让运维操作触手可及。无论你是刚接触 Linux 的新手,还是厌倦了重复敲命令的老手,Cockpit 都能让你的服务器管理效率飙升。
本文将带你从零开始部署 Cockpit,深入其核心功能场景,并分享在真实环境中(包括与 Prometheus 等工具共存时)的避坑经验。你将看到,强大的服务器管理,真的可以“零命令行”实现。准备好告别终端恐惧,开启你的可视化运维之旅了吗?
1.什么是Cockpit?
Cockpit 是一个免费、开源、轻量级的 Web 控制台(Web-based GUI),专为 Linux 服务器的可视化管理和监控 而设计。它的核心目标是:让服务器管理变得更简单、更直观,即使你不熟悉命令行也能高效运维。
核心特点
| 特性 | 说明 |
|---|---|
| 基于浏览器 | 只需打开浏览器(如 Chrome、Firefox),输入 https://你的服务器IP:9090 即可访问,无需安装额外客户端。 |
| 实时交互 | 所有操作(如查看日志、重启服务)都是实时的,界面会自动刷新,无需手动执行 top 或 journalctl。 |
| 轻量低开销 | 后台进程(cockpit-ws)资源占用极小,仅在用户连接时活跃,断开后几乎不消耗系统资源。 |
| 安全可靠 | 使用 HTTPS 加密通信,默认集成系统用户认证(支持 root 或 sudo 用户登录),权限与本地一致。 |
| 模块化设计 | 核心功能精简,但可通过插件扩展(如 Docker 容器管理、KVM 虚拟机、存储管理等)。 |
主要功能
- 系统概览:实时查看 CPU、内存、磁盘、网络使用率。
- 服务管理:启动/停止/重启 systemd 服务(如 nginx、docker),查看服务状态和日志。
- 日志查看:图形化浏览 journalctl 系统日志,支持按时间、服务过滤。
- 用户账户管理:创建、删除用户,修改密码,管理 SSH 密钥。
- 网络配置:查看网卡信息、防火墙规则(firewalld),配置 IP 地址(部分发行版支持)。
- 软件包更新:在支持的系统(如 RHEL/CentOS/Fedora)上直接安装安全更新。
- 终端访问:内置 Web 终端,必要时可随时切换到命令行。
- 容器管理(需安装插件):管理 Podman 或 Docker 容器、镜像、卷。
- 虚拟机管理(需安装插件):通过 cockpit-machines 管理 KVM 虚拟机。
支持的操作系统
Cockpit 原生支持主流 Linux 发行版:
- RHEL / CentOS / Rocky Linux / AlmaLinux(7+)
- Fedora
- Ubuntu / Debian
- openSUSE
在 RHEL/CentOS 系列中,Cockpit 是官方推荐的管理工具,甚至从 RHEL 8 开始默认预装。
安全性如何?
- 默认使用 TLS/SSL 加密(自签名证书,可替换为正式证书)。
- 认证完全依赖系统 PAM,即你用什么密码登录服务器,就用什么密码登录 Cockpit。
- 不会绕过系统权限——普通用户只能管理自己有权操作的服务。
- 默认监听 9090 端口,可通过防火墙严格限制访问 IP。
适合谁用?
- Linux 新手:快速上手服务器管理,避免命令行“恐惧症”。
- 开发者:快速查看应用日志、重启服务、监控资源。
- 系统管理员:远程批量管理多台服务器(支持仪表盘聚合)。
- 教育/演示场景:直观展示系统状态,便于教学。
注意事项
- 不是万能替代品:复杂脚本、自动化任务仍需命令行或 Ansible 等工具。
- 默认端口 9090:需确保未被其他服务(如 Prometheus)占用。
- 生产环境建议
- 限制防火墙只允许可信 IP 访问 9090 端口。
- 使用强密码或 SSH 密钥认证。
- 定期更新 Cockpit 包以修复安全漏洞。
Cockpit = 把 Linux 服务器的“驾驶舱”搬到你的浏览器里——仪表盘、控制杆、故障诊断一应俱全,让运维从“盲操”变为“可视化飞行”。
如果你厌倦了记忆 systemctl、journalctl、df -h 等命令,Cockpit 就是你一直在找的“运维 GUI 革命”。
2.安装前提条件
执行如下命令安装并启用epel-release:
yum install epel-release
安装kvm:
yum install qemu-kvm libvirt libvirt-daemon virt-install virt-manager libvirt-dbus systemctl start libvirtd.service
开启libvirtd服务:
systemctl start libvirtd.service
3.安装Cockpit
安装Cockpit:
在安装Cockpit时禁用PostgreSQL仓库(可以不禁用 我这里报错所以禁用一下)
sudo yum install -y --disablerepo=pgdg-common cockpit
安装完毕后执行如下命令启动Cockpit服务并设置为自动启动:
systemctl start cockpit
systemctl enable cockpit
执行下面命令查看是否启动成功:
systemctl status cockpit
部署完成后,在浏览器中输入http://IP:9090就能看到的界面:
4.使用Cockpit
4.1 如何登录
使用你Centos7的用户名及密码登录:
登录成功:
4.2 成果演示
系统板块:
展示了名为k8s-master的CentOS 7虚拟机在一段时间内的系统性能监控数据,包括CPU使用率、内存占用、磁盘I/O和网络流量的实时变化情况。
日志板块:
该页面是Cockpit的日志界面,显示k8s-master主机在2026年7月8日的系统日志,其中频繁出现因路径不存在导致blackbox_exporter和k8s/home服务启动失败的错误,同时还存在NTP时间同步失败、mysql_exporter启动异常以及rsyslog状态文件读取问题,表明系统在监控组件部署和基础服务配置方面存在明显缺陷,需逐一排查修复。
用户板块:
该页面展示了k8s-master主机上的用户账户管理界面,当前存在elasticserach、tomcat、root和shan四个用户账户,并提供创建新账户的功能。
服务板块:
该页面展示了k8s-master主机的系统服务状态,其中部分关键服务如alertmanager.service和auditd.service启动失败,AdGuardHome和blackbox_exporter正在自动重启中,而cockpit、containerd、cpolar等服务正常运行,整体反映出系统存在部分服务异常和配置问题。
终端板块:
一键连到终端操作。
Cockpit本身提供了一个强大而直观的Web管理界面,但默认仅限于局域网访问。通过与cpolar结合,可以轻松实现内网穿透,将本地Cockpit服务安全地暴露到公网,无需复杂网络配置或公网IP,即可随时随地通过HTTPS加密通道远程管理服务器,极大提升了运维灵活性与可及性。
5.安装cpolar实现随时随地开发
5.1 什么是cpolar?
cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。
5.2 部署cpolar
cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。
❤️以下是安装cpolar步骤:
使用一键脚本安装命令:
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:
打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。
6.配置公网地址
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:
- 隧道名称:可自定义,本例使用了:cockpit,注意不要与已有的隧道名称重复
- 协议:http
- 本地地址:9090
- 域名类型:随机域名
- 地区:选择China Top
创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。
访问成功。
7.保留固定公网地址
使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。
点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是cockpitt,大家可以自定义。填写备注信息,点击保留。
登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
- 地区: China Top
点击更新
更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。
最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。
总结
本文介绍了如何利用 Cockpit —— 一款开源的轻量级 Linux 服务器 Web 管理工具,实现“零命令行”图形化运维。通过浏览器即可实时监控系统资源(CPU、内存、磁盘、网络)、管理用户账户、查看日志、控制 systemd 服务、操作容器(如 Podman/Docker)等,大幅降低 Linux 运维门槛。文章还演示了在 CentOS 7/8 上安装配置 Cockpit 的具体步骤,并进一步结合 cpolar 内网穿透工具,实现安全远程访问本地 Cockpit 界面,即使服务器位于内网或无公网 IP 也能高效管理。整体强调:无需记忆复杂命令,运维新手也能像操作桌面应用一样轻松掌控服务器。
感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站






























