手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 26.04 Cockpit の基本設定 – Linux サーバーを Web UI で確認する

Ubuntu 26.04 をサーバーとして運用する場合、通常の管理は SSH、systemd、ログ、設定ファイルを中心に行います。一方で、稼働状況やサービス状態を Web UI で確認できると、初期確認や障害時の一次切り分けが楽になる場面があります。

Cockpit は、Linux サーバーの状態確認や簡単な管理操作をブラウザから行うための Web UI です。この記事では、Ubuntu 26.04 で Cockpit を導入し、cockpit.socket、9090/TCP、TLS 証明書、ログ確認の位置づけを整理します。

Cockpit は管理の主役ではなく補助 UI として使う

Cockpit は便利ですが、サーバー管理の主役を Web UI に置き換えるものではありません。設定ファイル、systemd、ログ、firewall、証明書の設計は従来どおり重要です。Cockpit は、それらの状態を確認し、必要に応じて補助的に操作する入口として考える方が自然です。

観点考え方
主な用途サービス状態、ログ、リソース、ストレージ、ネットワークの確認
管理の中心SSH、設定ファイル、systemd、構成管理
公開範囲管理用ネットワークや VPN 内に限定する
認証OS ユーザーと権限設計に依存するため、sudo 権限の扱いを確認する
TLS自己署名証明書や内部 CA 証明書を使う場合は、証明書配置と信頼設定を分けて考える

現在の状態を確認する

まず、Cockpit が既に導入されているか、socket が有効化されているかを確認します。Ubuntu Server の構成によっては、最初から入っていないこともあります。

コマンド
dpkg -l cockpit
systemctl status cockpit.socket
systemctl is-enabled cockpit.socket

cockpit.socket は、Cockpit の待ち受けを管理する systemd socket です。通常は cockpit.service を常時起動するのではなく、socket activation によって必要に応じて処理されます。

Cockpit をインストールする

Cockpit 本体は cockpit パッケージとして導入できます。サーバー用途では、追加機能を入れすぎず、まず最小構成で状態確認できるところまで作るのが扱いやすいです。

コマンド
sudo apt update
sudo apt install -y cockpit

cockpit.socket を有効化する

インストール後は、cockpit.socket を有効化して起動します。Cockpit の標準ポートは 9090/TCP です。管理画面なので、インターネットへ広く公開するのではなく、管理用ネットワーク、VPN、踏み台、アクセス制御と組み合わせて扱います。

コマンド
sudo systemctl enable --now cockpit.socket
systemctl status cockpit.socket
ss -ltnp | grep :9090

firewall を使っている場合は、9090/TCP をどこから許可するのかを明確にします。Cockpit は便利な入口である一方、管理入口でもあります。公開範囲を曖昧にしないことが重要です。

TLS 証明書を配置する

Cockpit は HTTPS でアクセスします。検証環境では自己署名証明書でも動作確認できますが、内部運用では内部 CA で発行した証明書を配置し、管理端末側で CA を信頼しておく方が扱いやすくなります。

Cockpit の証明書は、一般的に /etc/cockpit/ws-certs.d に配置します。証明書と秘密鍵のファイル名は、対象ホスト名に合わせておくと管理しやすいです。秘密鍵は読み取り権限を絞ります。

コマンド
sudo mkdir -p /etc/cockpit/ws-certs.d
sudo install -o root -g root -m 0644 /path/to/server.cert /etc/cockpit/ws-certs.d/server.example.com.cert
sudo install -o root -g root -m 0600 /path/to/server.key /etc/cockpit/ws-certs.d/server.example.com.key

配置後、Cockpit が証明書を選択できる状態か確認します。証明書を差し替えた場合は、cockpit.service を再起動して反映します。

コマンド
sudo /usr/lib/cockpit/cockpit-certificate-ensure --check
sudo systemctl restart cockpit.service

ブラウザから接続する

ブラウザから https://サーバー名:9090/ にアクセスします。内部 CA を使っている場合は、クライアント側で CA 証明書を信頼しておく必要があります。証明書の警告が出る場合は、Cockpit 側の証明書配置だけでなく、クライアント側の信頼設定も確認します。

コマンド
curl -vk https://server.example.com:9090/

ログインは OS ユーザーを使います。管理操作を行う場合は、対象ユーザーの sudo 権限や認証方式も関係します。Web UI でログインできることと、管理操作を安全に許可することは分けて考えます。

サービスとログを確認する

接続できない場合は、socket、サービス、待ち受けポート、ログを順番に確認します。Cockpit は Web UI ですが、切り分け自体は通常の Linux サービスと同じです。

コマンド
systemctl status cockpit.socket
systemctl status cockpit.service
journalctl -u cockpit.socket -u cockpit.service --no-pager -n 100
ss -ltnp | grep :9090

運用上の注意点

Cockpit を入れると、サーバーの状態をブラウザから確認しやすくなります。ただし、便利だからといって管理入口を増やしすぎると、セキュリティ上の責任範囲も広がります。

項目注意点
公開範囲9090/TCP を管理用ネットワークに限定する
認証OS ユーザー、sudo、SSH 鍵認証の運用と矛盾しないようにする
証明書内部 CA、SAN、ホスト名、クライアント側の信頼設定を確認する
ログ接続失敗時は Cockpit だけでなく systemd journal も確認する
役割常用の構成変更 UI ではなく、状態確認と補助操作の入口として扱う

まとめ

Ubuntu 26.04 で Cockpit を導入すると、サーバーの状態、サービス、ログ、ストレージ、ネットワークを Web UI から確認できます。特に検証環境や管理対象が増えてきた環境では、一次確認の入口として便利です。

一方で、Cockpit は管理用の入口です。cockpit.socket、9090/TCP、TLS 証明書、OS ユーザー、sudo 権限をまとめて確認し、公開範囲を限定して使う必要があります。管理の主役はあくまで設計された構成管理と Linux の基本操作であり、Cockpit はそれを補助する Web UI として位置づけるのがよいと思います。

参考書籍
参考書籍
Advanced Ubuntu Administration and Management Best Practices

Ubuntu Server の運用項目を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

次に読む記事

Ubuntu 26.04 サーバー管理ガイド
Ubuntu 26.04 Cockpit の基本設定 – Linux サーバーを Web UI で確認する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る