Cockpit 简介
Cockpit 是一个免费且开源的基于 Web 的 Linux 服务器管理工具,它提供了一个用户友好的界面,使得用户可以通过浏览器轻松管理和监控 Linux 服务器。它允许系统管理员通过一个 Web 界面执行各种系统管理任务,而无需在命令行中输入复杂的命令。Cockpit 支持各种操作系统和 Linux 发行版,如 Fedora、RHEL、CentOS、Debian 和 Ubuntu。
Cockpit 的功能和特点
-
使用 systemd 完成从运行守护进程到服务几乎所有的功能。
-
集中式管理,通过一个会话窗口管理网络中的所有 Linux 服务器。
-
创建和管理 KVM、oVirt 虚拟机。
-
包括 LVM 在内的存储配置。
-
基本的网络配置管理。
-
用户账号管理。
-
基于 Web 的终端。
-
图形化的系统性能展示。
-
使用 sosreport 收集系统配置和诊断信息。
-
支持多种 Linux 发行版,如 Debian、Redhat、CentOS、Fedora、Atomic、Arch Linux 和 Ubuntu。
Cockpit 的部署
部署 Cockpit 的步骤通常包括以下几个方面:
-
安装 Cockpit:
-
对于 CentOS 8 和 RHEL 8,Cockpit 已经预装,可以通过
systemctl start cockpit.socket
命令启动。 -
对于其他发行版,通常可以通过包管理器安装。例如,在 Debian 或 Ubuntu 上,可以使用
apt install cockpit
命令进行安装。
配置防火墙:
-
如果服务器配置了防火墙,需要允许 Cockpit 使用的端口(默认为 9090)。例如,在 CentOS 上,可以使用
firewall-cmd --permanent --zone=public --add-service=cockpit
命令开放端口。
启动 Cockpit 服务:
-
通过
systemctl start cockpit.socket
命令启动 Cockpit 服务,并使用systemctl enable cockpit.socket
设置开机自启。
访问 Cockpit 界面:
-
在浏览器中输入
http://服务器IP:9090
即可访问 Cockpit 的 Web 界面,输入用户密码后登录,首次登录不能用root用户登录。下面会详细说明如何允许root用户登录。
配置 SSL(可选):
-
为了提高安全性,可以为 Cockpit 配置 SSL 证书。这通常涉及到配置 Nginx 或其他反向代理服务器,以及获取和安装 SSL 证书。
添加其他机器(可选):
-
如果需要管理多台服务器,可以在 Cockpit 的 Web 界面中添加其他安装了 Cockpit 并通过 SSH 可访问的机器。
注意事项
Cockpit 默认情况下确实不允许 root 用户登录,这是出于安全考虑。但是,如果需要允许 root 用户登录 Cockpit,可以通过修改配置文件来实现。
以下是允许 root 用户登录 Cockpit 的步骤:
-
打开
/etc/cockpit/disallowed-users
配置文件。这个文件中列出了不允许登录 Cockpit 的用户列表。默认情况下,root 用户被列在其中。 -
编辑该文件,删除或注释掉
root
这一行。可以通过以下命令来编辑文件:$ sudo vim /etc/cockpit/disallowed-users
在文件中,你会看到类似这样的内容:
# List of users which are not allowed to login to Cockpit
# root直接删除
root
这一行。 -
保存并关闭文件。这样,root 用户就被允许登录 Cockpit 了。
-
重启 Cockpit 服务以使更改生效:
$ sudo systemctl restart cockpit.socket
请注意,出于安全考虑,通常不建议在生产环境中允许 root 用户直接登录 Cockpit 或其他管理工具。相反,建议使用具有适当权限的非 root 用户来执行管理任务。如果确实需要 root 权限,可以通过 sudo 来获取。