お金をかけずにサーバーの勉強をしよう

GUIで LinuxOS管理 (webmin)

2024年4月28日

メニューへ戻る

Linuxサーバーは運用したいけど、どうしても黒い画面は嫌だという人へ。

Linuxサーバーの管理は基本的に黒い画面で行うものですが、必ずしも全ての人が Linuxに精通したいわけでもなく「とにかく使いたいだけなんだ」という人は「Windowsのように GUIで管理できれば良いのに。」と思いっていることも多かろうと思います。

そこで、結構昔からあった Linuxの管理を Webアプリベースで行う webminが 2022年8月23日に 2.000へとメジャーアップデートしましたので、これを導入してみます。

webminは Perlで作られた Linux管理機能を提供する WEBサーバーです。

本家サイトはこちらです。
webmin

それでは導入してみましょう。


1.環境

Ubuntu Server 24.04に入れて、Lubuntu 24.04の Firefoxでアクセスします。

Ubuntu Server 24.04のインストールについては、
Ubuntu 24.04 Server インストール」に書いています。

2024年4月28日時点の最新バージョンは 2.111です。
結構細かくアップデートが繰り返されている模様。


2.インストール

Ubuntu製造元の Canonicalがパッケージで配布してないかな?と思ったんですが、aptにも snapにもありませんでしたので、webminのサイトから debパッケージをダウンロードします。

ダウンロードは本家サイトのダウンロードページに方法が書いてあります。
https://webmin.com/download/

ここに書いてある手順は、

  1. webminの aptリポジトリを OSに登録する
  2. aptコマンドでインストールする

となっていますので、インストール後は apt updateコマンド実行時にアップデートの対象に現れてくるようになるはずです。

まず webminの aptリポジトリを OSに登録するためのシェルスクリプトをダウンロードする作業。

subro@UbuntuServer2404-1:~$ curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  5268  100  5268    0     0  14818      0 --:--:-- --:--:-- --:--:-- 14839

ダウンロードできました。

シェルスクリプトに実行権限がついてないので実行権を付与します。

subro@UbuntuServer2404-1:~$ ls -l setup-repos.sh
-rw-rw-r-- 1 subro subro 5268  4月 28 13:10 setup-repos.sh

subro@UbuntuServer2404-1:~$ chmod u+x setup-repos.sh

subro@UbuntuServer2404-1:~$ ls -l setup-repos.sh
-rwxrw-r-- 1 subro subro 5268  4月 28 13:10 setup-repos.sh

シェルスクリプトを実行します。
[/etc/apt]ディレクトリ以下のファイルを更新するはずなので、[root]ユーザーじゃないといけません。
sudoコマンドを使います。

subro@UbuntuServer2404-1:~$ sudo ./setup-repos.sh
Setup repository? (y/N) y
  Downloading Webmin key ..
  .. done
  Installing Webmin key ..
  .. done
  Setting up Webmin repository ..
  .. done
  Cleaning repository metadata ..
  .. done
  Downloading repository metadata ..
  .. done
Webmin package can now be installed using apt-get install --install-recommends webmin command.

サードパーティの aptリポジトリを登録する場合にファイルが書き込まれる
[/etc/apt/sources.list.d]ディレクトリを確認してみました。

subro@UbuntuServer2404-1:~$ ls -l /etc/apt/sources.list.d
合計 12
-rw-r--r-- 1 root root  386  4月 26 10:22 ubuntu.sources
-rw-r--r-- 1 root root 2552  4月 23 18:40 ubuntu.sources.curtin.orig
-rw-r--r-- 1 root root  135  4月 28 13:17 webmin.list

[webmin.list]ファイルができていました。
これの中身を見てみます。

subro@UbuntuServer2404-1:~$ cat /etc/apt/sources.list.d/webmin.list
deb [signed-by=/usr/share/keyrings/ubuntu-webmin-developers.gpg] https://download.webmin.com/download/newkey/repository stable contrib

こんな感じでした。

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

subro@UbuntuServer2404-1:~$ sudo apt-get -y install webmin --install-recommends
〜〜〜 長いので省略 〜〜〜

インストールできました。
前提のパッケージが結構いっぱい入りました。特に Perl関連が


3.実行

[10000/tcp] の httpで待ち受けていますので、WEBブラウザでアクセスします。
私の環境では [http://UbuntuServer2404-1:10000] です。

オレオレ証明書なのでワーニングが出ますが、無視します。
証明書エラー

最初にユーザー/パスワードでの認証があります。
ここのユーザー/パスワードは OSユーザーのもののようです。
管理ユーザーの [subro] でログインします。
Sign inを押します。
webmin画面 1

ダッシュボード画面になりました。
サーバーの負荷をリアルタイムで見られます。 webmin画面 2

日本語化しましょう。

左のメニューから [Webmin] - [Change Language and Theme] を選択します。
右ペインで [Language] の [Personal Choise] を選択し、プルダウンから [日本語] を選択します。
その右にある [include machine translations] をチェックします。
[Locale] の [Personal Choise] を選択し、プルダウンから [日本語(日本)] を選択します。
Make Changesを押します。
webmin画面 3

再びダッシュボードですが、日本語になりました。\(^o^)/
webmin画面 4

ちょっと驚きましたね、webmin。
実は使ったことがなかったんですが、これは凄い。

これ以上は細かい事になってしまうので、説明はここで終わりにしますが、是非一度導入して使ってみることをお勧めします。

メニューの下に出てくる情報を開いて見て見るだけでも良いと思います。
「こんな設定があるんだな〜」ってビジュアルに見ることができます。

普段は黒い画面しか使ってない手慣れたサーバーエンジニアでも「これwww、楽wwwww」って思うはず。

但し、GUIになれば素人が Linux OSの管理を十二分にできるという訳ではなく、当然 Linuxの知識が前提となります。
でも、少なくとも細かいコマンドや設定ファイルの場所を一々覚える必要はなくなるかも知れません。

パッと見ですけど、普段の管理ならこれ一本で行けそうな雰囲気。


感心した機能がありますので、ご紹介します。

一つは管理対象の OSにインストールされているサーバープログラムの管理まで、webminで行えそうなことです。

左のメニューから [Un-used Modules] を開くと一杯出てきますが、MySQLなんてあるんですね。
webmin画面 5

この [Modules] とやらも別途インストールして増やせるようですし、対応するのはここに乗っているサーバープログラムやミドルウェアソフトに限らないようです。

OS管理だけではなく Linuxサーバーに入っていそうなサーバー機能の多くをカバーしているようで、このホームページに書いてきた諸々のサーバープログラムの手順が結構 GUIでできちゃうなと。
これではサーバーエンジニアはオマンマの喰い上げです。


[Tools] - [Terminal] でターミナルも使えちゃったり。
webmin画面 6
コマンドプロンプトの[#]を見て、「rootのコンソールかよ!」ってちょっと危ないなと思いつつ。


もしかして webminは WebAPIも提供しているんではないか?と思ったら、最近ありがちな Httpのやつじゃないけど、こんなのがありました。
XML-RPC Calls

そうするとサーバー監視を webmin経由で行えるのかも知れず、インストールされているソフトのものを含む様々情報取得を一元的な手法で取得できるとすると、かなり学習コストが下がるので相当イケるんではないかと思います。
獲らぬ狸の皮算用かも知れませんが。


==========
素晴らしいフリーのツールと思いますが、一つ懸念材料があるとすれば、サーバー管理者が webminに頼ってしまうと、これなしには何もできなくなってしまうかも知れないこと。

Linuxのエンジニアになりたいわけじゃないが Linuxサーバーの管理をしなくちゃならなくなった、そんな人におすすめのツールではあります。

とにかくサーバーエンジニアの人に「試しに一回触ってみて!」って言いたくなるブツでした。


日本語対応しているけど、日本語の書籍は2002・2003年の古いのしかないですね。
以下は英語の本で2023年のもの。
2.000へのメジャーバージョンアップで、ちょっと話題になれば日本語書籍も出ても良いかも。