我最近一直在用我的各种 Debian 服务器测试 Cockpit,到目前为止我很喜欢它。我遇到的一个问题是它创建了默认打开的端口 9090。我不希望该端口向世界开放,但我的堡垒服务器位于动态 IP 上。
我注意到我可以在我的远程服务器上安装 Cockpit,然后运行systemctl stop cockpit.socket
它并让它工作......但不能过去与我的主服务器断开连接。
我想知道的是,只允许 Cockpit 连接到没有安装 Cockpit(首选)的远程 Debian 服务器所需的最低配置是什么,或者以某种方式限制 Cockpit 的 Web 界面不能在面向公众的界面上工作。
cockpit 文档解释了如何覆盖 cockpit.socket systemd 单元以根据需要设置监听地址。
例如,您可以创建一个覆盖文件
/etc/systemd/system/cockpit.socket.d/listen.conf
,其中包含:第一个
ListenStream=
导致任何先前定义的ListenStream=
指令被丢弃。然后它们将被第二个替换ListenStream=
。您将使用内部接口的 IP 地址,而不是外部接口的 IP 地址。
当然,您也可以以任何您希望的方式对端口 9090 进行防火墙,以达到类似的效果。