CentOS部署Cockpit:图形化查看系统、日志与服务状态

前言

管理Linux服务器时,很多操作并不复杂,但命令比较分散。查看系统负载要用一组命令,检查服务状态又是另一组,想继续看日志,还要切换到journalctl

如果只是日常查看服务器状态,这种操作方式并不总是高效。Cockpit提供了一套基于浏览器的管理界面,把系统资源、日志、用户、systemd服务和终端集中到同一个页面中。

它不会替代Linux原有的管理机制,也不是完全摆脱命令行,而是把一部分常见操作做成了可视化界面。需要进一步排查问题时,仍然可以直接从Cockpit进入Web终端继续处理。

本文将在CentOS环境中安装Cockpit,实际查看系统状态、日志、用户和服务页面,并完成基本的Web管理体验。

局域网访问验证完成后,还会通过cpolar为Cockpit的9090端口创建公网入口,让其他网络中的电脑也可以打开这套服务器管理界面。

1.什么是Cockpit?

Cockpit 是一个免费、开源、轻量级的 Web 控制台(Web-based GUI),专为 Linux 服务器的可视化管理和监控 而设计。它的核心目标是:让服务器管理变得更简单、更直观,即使你不熟悉命令行也能高效运维。

核心特点

特性 说明
基于浏览器 只需打开浏览器(如 Chrome、Firefox),输入 https://你的服务器IP:9090 即可访问,无需安装额外客户端。
实时交互 所有操作(如查看日志、重启服务)都是实时的,界面会自动刷新,无需手动执行 topjournalctl
轻量低开销 后台进程(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

shell 复制代码
yum install epel-release

安装kvm:

shell 复制代码
yum install qemu-kvm libvirt libvirt-daemon virt-install virt-manager libvirt-dbus systemctl start libvirtd.service

开启libvirtd服务:

shell 复制代码
systemctl start libvirtd.service

3.安装Cockpit

安装Cockpit:

在安装Cockpit时禁用PostgreSQL仓库(可以不禁用 我这里报错所以禁用一下)

shell 复制代码
sudo yum install -y --disablerepo=pgdg-common cockpit

安装完毕后执行如下命令启动Cockpit服务并设置为自动启动:

shell 复制代码
systemctl start cockpit
systemctl enable cockpit

执行下面命令查看是否启动成功:

shell 复制代码
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步骤:

使用一键脚本安装命令:

shell 复制代码
sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

shell 复制代码
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为其配置二级子域名,该地址为固定地址,不会随机变化。

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是cockpitt,大家可以自定义。填写备注信息,点击保留。

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

总结

完成以上配置后,Cockpit已经运行在CentOS服务器中,并通过9090端口提供Web管理界面。

使用服务器现有的系统账号登录后,可以在浏览器中查看CPU、内存、磁盘和网络等运行状态,也可以进入日志页面检查系统事件和服务报错。

用户页面可以查看当前系统账户,服务页面则集中展示systemd服务的运行状态,并提供对应的启动、停止和重启操作。

如果图形界面无法完成某些操作,还可以直接打开Cockpit内置终端,继续使用Linux命令进行处理。

通过cpolar为9090端口创建公网隧道后,原本只能在服务器所在局域网中访问的Cockpit页面,也可以从其他网络环境打开。

随机域名适合临时远程管理,配置固定二级子域名后,可以获得一个更加方便保存和持续使用的管理入口。

从Cockpit安装、系统状态查看,到日志、用户、服务和远程访问,本文完成了一套基于浏览器的Linux服务器管理流程。

行状态,并提供对应的启动、停止和重启操作。

如果图形界面无法完成某些操作,还可以直接打开Cockpit内置终端,继续使用Linux命令进行处理。

通过cpolar为9090端口创建公网隧道后,原本只能在服务器所在局域网中访问的Cockpit页面,也可以从其他网络环境打开。

随机域名适合临时远程管理,配置固定二级子域名后,可以获得一个更加方便保存和持续使用的管理入口。

从Cockpit安装、系统状态查看,到日志、用户、服务和远程访问,本文完成了一套基于浏览器的Linux服务器管理流程。

相关推荐
不会就选b1 小时前
Linux之信号(二)
linux·运维·服务器
我是小灰灰吖2 小时前
QT在线安装器使用指南:从下载到配置完整教程
linux·qt·ubuntu
GlueNa2SiO32 小时前
第十八章 Linux故障排查与恢复
linux·服务器·笔记·学习
寺中人3 小时前
Linux 基础命令入门实战教程:从零掌握常用操作,新手快速上手
linux·运维·服务器·shell·linux 命令·linux 基础教程·linux 入门
V哥AI增长3 小时前
Schema.org 结构化数据与GEO技术落地:AI引擎引用机制与JSON-LD部署实证研究
大数据·运维·人工智能
小张成长计划..4 小时前
【Linux】18:基础IO
linux·运维·服务器
MIXLLRED4 小时前
解决——Ubuntu远程桌面指令更换网络
linux·网络·ubuntu
啊哈一半醒5 小时前
Windows 虚拟机搭建 CentOS 全过程(2026 最新版 + 踩坑解决)
linux·windows·centos
wunaiqiezixin5 小时前
MIT 6.S081 lazy 前置篇(lab5):缺页异常、惰性分配、写时复制、页面换出
linux·unix·os·xv6·mit6.s081