Ubuntu 24.04にCockpitをインストールする

installing-docker-on-ubuntu24-04-thumbnail ubuntu24.04

この記事ではUbuntuCockpitをインストールする方法を解説します。対象となるUbuntuのバージョンは24.04です。

はじめに

近年、サーバー管理はますます複雑化しており、管理者にとって大きな負担となっています。そこで今回は、Webブラウザからサーバーを簡単に管理できるツール「Cockpit」をUbuntu 24.04にインストールする方法をご紹介します。

Cockpitとは?

Cockpitは、Webブラウザからサーバーを管理するためのツールです。そのため、サーバーにログインする必要がありません。ブラウザさえあれば、どこからでもサーバーを管理することができます。

主な機能

  • システム情報の概要表示
  • ログの閲覧・検索
  • プロセスの管理
  • ネットワーク設定
  • ストレージの管理
  • ソフトウェアのインストール・アンインストール
  • ユーザーアカウントの管理
  • ファイアウォールの設定
  • シャットダウン・再起動

関連記事

  • Cockpitを使って仮想マシン(Ubuntu 24.04)を作成する
  • Ubuntu 24.04 LTSをインストールする
  • AlmaLinuxにCockpitをインストールする
  • AlmaLinuxにKVM仮想マシンを作成する

開発環境

  • Ubuntu 24.04
  • Cockpit 314
  • M2 Pro Mac mini 16GB (クライアントPC)

Cockpitの導入

インストール

cockpitパッケージをインストールします。

Bash
$ sudo apt install cockpit

接続

Cockpitにはhttps://<アドレス>:9090でアクセスできます。ページ左下の詳細設定をクリックします。

この段階ではサーバー証明書を用意していないため、保護されていない通信になります。今はこのままでアクセスします。のちの章でサーバー証明書を用意します。

この記事では、Mac miniのChromeからアクセスしてみます。

すると、安全ではないがアクセスするかと確認されます。クリックして次に進みます。

ログイン画面が表示されるので、ユーザ情報を入力します。

ログインするとこのようなページが表示されます。

https通信

Cockpitには無事ログインできましたが、今のままだと通信が保護されていません。ローカルネットワークの場合は問題ないのですが、見栄えが悪いので対応したいと思います。

自己認証局を立てて、その認証局に署名をもらうサーバー証明書を作成します。いわゆるオレオレ証明書です。

認証局

自己認証局の証明書秘密鍵の作成を行います。

この作業は、Cockpitが起動しているUbuntu 24.04で行います。まず、mkcertをインストールしてきます。執筆時点のバージョンは1.4.4なのでこれを使用します。

Bash
$ sudo apt install mkcert
$ mkcert --version
1.4.4

自己認証局の証明書秘密鍵の作成を行います。そのために、mkcer --installコマンドを実行します。

Bash
$ mkcert --install
Created a new local CA 💥
The local CA is now installed in the system trust store! ⚡️

mkcert -CAROOTコマンドを実行すると証明書秘密鍵が作成されたパスを表示します。

Bash
$ mkcert -CAROOT
$ /home/higmasan/.local/share/mkcert

表示された場所を確認すると、確かに作成されています。rootCA-key.pem (秘密鍵)、rootCA.pem (証明書)。

Bash
$ ls /home/higmasan/.local/share/mkcert
rootCA-key.pem  rootCA.pem

サーバー証明書

サーバーの証明書秘密鍵を作成します。この作業も、Cockpitが起動しているUbuntu 24.04で行います。

mkcert <サーバードメインorサーバーIPアドレス>でサーバー証明書が作成できます。この記事ではCockpitが起動しているマシン (192.168.11.2)の証明書を作成します。なので、mkcert 192.168.11.2を実行します。

Bash
$ mkcert 192.168.11.2
Created a new certificate valid for the following names 📜
 - "192.168.11.2"

The certificate is at "./192.168.11.2.pem" and the key at "./192.168.11.2-key.pem" 

It will expire on 4 August 2026 🗓

192.168.11.2-key.pem (秘密鍵)と、192.168.11.2.pem (証明書)が作成されます。

Bash
$ ls
192.168.11.2-key.pem  192.168.11.2.pem

Cockpitでサーバー証明書を使う

Cockpitでサーバー認証をするためには、先ほど作成したサーバー証明書秘密鍵/etc/cockpit/ws-certs.d/ディレクトリに置く必要があります。その時に、秘密鍵の拡張子を.key、証明書の拡張子を.crtにしてください。

Bash
 sudo mv 192.168.11.2-key.pem /etc/cockpit/ws-certs.d/192.168.11.2.key
$ sudo mv 192.168.11.2.pem /etc/cockpit/ws-certs.d/192.168.11.2.crt

ブラウザの設定

この設定はMacの場合の説明です。WindowsやLinux、別のブラウザだと少し違うかもしれませんが、本質的には変わりません。

ここでは、Chromeの設定で認証局の証明書をインストールします。まず、アドレスバー左側の「保護されていない通信」をクリックします。出てきたメニューの「サイトの設定」をクリックします。

次に、「プライバシーとセキュリティ」をクリックして、「セキュリティ」をクリックします。

表示されたページで、「証明書の管理」をクリックします。

Macの場合は次のような「キーキェーンアクセス」のウィンドウが表示されます。そして、「システム」→「証明書」→「四角に鉛筆のマーク」の順にクリックします。認証局の章で作成したrootCA.pemを選択します。

すると、新しい証明書が表示されるのでクリックします。

すると、下のようなウィンドウが表示されます。「信頼」を表示すると「この証明書を使用するとき」の項目が「システムデフォルトを使用」になっています。

これを「常に信頼」に変更します。

すると、青色のプラスのマークに変わっています。これで認証局の設定は完了です。

動作確認

無事、通信が保護されるようになって、赤文字の警告がなくなりました。

まとめ

この記事では、Ubuntu 24.04Cockpitをインストールしました。その後、サーバー証明書を登録して通信を保護しました。

Cockpitの導入でサーバー管理が楽になったと思います。Linuxを使いこなしてつよつよエンジニア目指しましょう!

コメント