Windows から Linux へのロードマップ: 第 3 回 Webmin 入門

ブラウザ・ベースの管理ツール

IBM e ビジネス・アーキテクトである Chris Walden が、9 回の developerWorks シリーズで読者の運用スキルを Windows 環境から Linux 環境へ移行する道案内をしていきます。今回は Webmin をインストールし、その使い方を紹介します。Webmin はブラウザ・ベースの管理ツールで、これを使うことで Linux 等のプラットフォームでの管理・運営業務がグラフィカルなインターフェースから行えるようになります。

Chris Walden, e-business Architect, IBM

Chris Walden は IBM Developer Relations Technical Consulting (dragonslayers としても知られています) の e ビジネス・アーキテクトです。テキサス州オースチン在住で教育、設置使用指導、IBM ビジネス・パートナーへのコンサルティングにあたっています。自他共に認める半 Linux 狂発症途中で、聞く耳持つ人がいれば誰にでも良い知らせを広めています。e ビジネス・アーキテクトとしての仕事以外に彼の地域にある、すべて Linux による基幹サーバーを管理しており、そこでは多種多様なユーザー環境でのファイル、印刷その他のアプリケーション・サービスを扱っています。コンピューター業界でフィールド・サポートから Web アプリケーション開発やコンサルティングまで 10年の経験があります。



2003年 11月 11日

Windows 環境から Linux での管理に移行するにあたって、新しいツールを自在に使えるようになるまでは一苦労です。あなたは管理者としてオペレーティング・システムの能力を最大限に利用するために、細部について学ぼうとします。ところが、学んでいる間にも現実の仕事をしなければならないのです。

Linux での生産性を上げるために、Webmin と呼ばれるプログラムをインストールします。Webmin.com (リンクについては参考文献を見てください) によると、「Webmin は Unix でのシステム管理用の Web ベースのインターフェースです。テーブルとフォーム (それにファイルマネージャー・モジュール用に Java) をサポートするブラウザであればどれでも使え、そのブラウザからユーザー・アカウント、Apache、DNS、ファイル共有等々を設定できます。Webmin は簡単な Web サーバーといくつかの CGI プログラムから成り、/etc/inetd.conf/etc/passwd といったシステムファイルを直接更新します。Web サーバーや CGI プログラムはすべて Perl バージョン 5 で書かれており、非標準の Perl モジュールは使っていません。」

Webmin は Linux、AIX、HPUX、Solaris、OS X などを含む、ほとんどすべての Unix ライク (Unix 風) のプラットフォームで実行でき、Linux で必要となる管理作業の多くに Web フロントエンドを提供するものです。Webmin はグラフィカルなブラウザならどんなものからでも、またローカルでも遠隔でも実行でき、SSL を使った漏洩防止ができます。Linux 管理を学ぶ上で Webmin を使うと、時間を大幅に節約することができます。また、自動化されていない面倒な作業を行うにも便利です。

Webmin は拡張可能です。Webmin の作者は開発ガイドを用意していますが、サードパーティーのモジュールもいくつかあります。また自分用のモジュールを設計することもできるので、Webmin を自分の必要に合わせて最適化することもできます。

Webmin をインストールする

Webmin を使う上で最初に行うことはインストールです。Webmin にはいくつかのディストリビューションがありますが、インストールは Webmin サイト (参考文献にリンクがあります) からのダウンロードと同じくらい簡単です。

この記事を書いている時点では、現在のバージョンは 1.90 です。正しいインストール方法は、どのディストリビューションを選ぶかによって異なります。Red Hat Linux か、UnitedLinux の一つ (SuSE、Turbo、Connectiva、Caldera のどれか) を使っているならば、rpm がインストールの方法として一番簡単でしょう。それ以外のディストリビューションを使っている場合には、マニュアルをよく見て自分の環境に一番合った方法でインストールしてください。ここでは RPM でのインストレーションを前提として説明します。

まず、自分のシステムに Webmin がインストールされているかどうかをチェックします。テキスト・ターミナルから次のように入力します。

rpm -q webmin

Webmin がインストールされている場合にはバージョン番号が表示されます。

Webmin-1.090-1

インストールされていない場合には次のような表示が出ます。

package webmin is not installed

ソフトウェア・パッケージをインストールする

Linux での大部分のパッケージのインストールは、この記事の Webmin の例と同じくらい簡単です。パッケージのインストールや削除に関しては (あるいはソースコードからのコンパイルについても)、このシリーズの第 9 回を見てください。

Webmin がすでにインストールされている場合でも、多分バージョンは現在ダウンロードできるものよりも古いでしょう。その場合には次のコマンドで、アップグレードまたは新規インストールすることができます。

rpm -Uvh webmin-1.090-1.noarch.rpm

アップグレードの進行状況が # 記号を使ったプログレスバーで表示されます。

RPM noarch

Webmin が「noarch」パッケージとして表示されることに気がつくでしょう。RPM はバイナリファイルなので、普通は i386 や ppc といった特定のアーキテクチャーに合わせてコンパイルされます。パッケージを間違ったアーキテクチャーにインストールするとトラブルが起きる可能性があります。Webmin はアーキテクチャーに依存しない、Perl で書かれているので、「noarch」と表示されるのです。

Webmin はインストールされるとデフォルトで起動しますが、SSL を有効にしてインストールされるわけではありません。SSL には Net::SSLeay と呼ばれる Perl モジュールがインストールされている必要があります。これがインストールされるまで、ローカル・コンソールから実行した場合のみしかセキュアではありません。Webmin をセキュアにする方法については、この記事の終わりで少し触れます。

Perl (Practical Extraction and Reporting Language)

Perl は 1987 年頃から使われている、マルチプラットフォームのインタプリタ形プログラミング言語です。Windows を含む広範なプラットフォームで使われており、高度なスクリプト機能を持っています。テキスト処理に優れ、Web の CGI プログラミング用に非常にポピュラーなものとなりました。同じ Perl で書かれたファンクション・ライブラリであるモジュールを追加することで、Perl を拡張することもできます。Perl 自体を含む大部分のモジュールは、The Artistic License (参考文献にリンクがあります) と呼ばれる寛大な無料のライセンス条件で入手可能です。


Webmin を使う

お好みの Web ブラウザから Webmin にアクセスしてみてください。2 つのツール、ファイル・エクスプローラーと telnet/ssh クライアントはアプレット・ベースなので、ブラウザには Java ランタイム環境のインストールが必要です。この 2 つのツールは便利ですが必須ではありません。他のモジュールにはどれも特別な要求事項はありません。

Webmin を使い始めるには、ブラウザがシステムのポート 10000 を指すようにします。ローカルシステムでのブラウザでは http://localhost.localdomain:10000/ を使います。Webmin は最初にログイン画面になります。

Webmin ユーザーはオペレーティング・システムのユーザーとは別です。つまり普通の Unix 認証の機構とは異なる Webmin でユーザー管理の設定ができるということです。ただし Webmin を使わせたいユーザーがいる場合には、その人達を Webmin のユーザーリストに加え、Webmin が (Webmin の内部機構ではなく) Unix の機構を使ってその人達を認証するようにする必要があります。Webmin モジュールへのアクセスはユーザーごとに制御されます。例えば、ヘルプデスクの人はパスワード機能にのみしかアクセスできないけれども、他のスタッフは全モジュールにアクセスできる、というようなことができます。

インストールが終わった後のシステムの root パスワードで、root ユーザーが自動的に作られます。ログインすると Webmin は操作のログをとります。ですから管理者が複数の環境では root ユーザーの権利を持つ admin グループを作り、システムで作業する各人に対してはユーザーを作る方が良いでしょう。最初のログインは root でなければなりません。


Webmin の各セクション

ルート・ユーザー

Linux では一番優先度の高い管理ユーザーは root と呼ばれます。root ユーザーはシステムすべての面について制御権限を持っています。root という名前を軽く考えるべきではありません。

最初の画面は Webmin Configuration Section です。ここが Webmin ユーザーを設定し、モジュールを設定し、また操作ログを見るところです。一番上にあるアイコンで Webmin の各モジュール・セクションを切り替えます。モジュールはすべて設定可能で、自分の好みに合わせてグループ分けし直すことができます。

図 1. Webmin 設定画面
Webmin configuration

ユーザー用としての Webmin

オプションのパッケージである Usermin を設定するアイコンがあります。Usermin は Web ベースのツールで、これでユーザーがパスワード変更やシステム・メール管理、その他を行うことができます。Usermin ではシステム設定機能へのアクセスはできません。Usermin と Webmin は相互に補完的な製品です。

System はオペレーティング・システムの一般的な設定を行う部分で、ファイルシステムやユーザー、グループ、それにシステムの一般的な起動方法を設定します。システム上で実行するサービスは制御でき、そうしたサービスが Bootup や Shutdown アイコンで自動的に起動するかどうかも制御することができます。ただし、こうしたサービスの制御は Servers セクションで行います。「Software Packages」ツールが特に興味のあるところです。このツールでインストールされているパッケージを簡単に見ることができ、ディストリビューションのアップデートのリポジトリや、インターネットでの一般的な RPM リポジトリである rpmfind.net につなぐことができます (参考文献にリンクがあります)。

Servers セクションではシステム上で実行するいろいろなサービスを設定します。BIND や DHCP ツールは非常に便利ですし、Samba もファイル設定や Windows 等のクライアントでのプリンター共有設定に簡単に使えるツールです。SMTP サーバーである Sendmail は複雑な設定ファイルがあることで有名ですが、Webmin Sendmail ツールはそうした面倒からも解放してくれます。

図 2. Webmin Servers の画面
Webmin Servers の画面

Networking セクションにはネットワーク・ハードウェアの設定やファイアーウォールなどのような複雑なネットワーク制御のツールがあります。どのツールも標準の設定ファイルと連携しており、Webmin 上で行うことはすべてコンソール・ツールにも反映されます。

Hardware セクションは主にプリンターやストレージ等の物理デバイスを設定するためのものです。論理ボリューム管理 (LVM) ツールは Linux システムの動的ボリュームを視覚的に管理できるので、特に面白いものです。

Cluster セクションには、システムをクラスタリングする場合に使うツールがあります。ここでのクラスタというのは、設定を同期する必要のある、相互に関連したシステムの一式を言います。システムはシステム障害検出によってユーザーやグループその他を同期することができます。こうしたツールで、ホット・フェールオーバー・システムやその他、同期が重要なシステムを設定することができます。クラスタリングは高度な内容で、普通の Linux ディストリビューションには含まれていないパッケージのインストールが必要になることがあります。

Others セクションには便利なユーティリティがいろいろあります。「SSH/Telnet Login」や「File Manager」ツールはアプレットで動くので、ブラウザにアクティブ JRE が無いと実行できません。「Perl Modules」ツールは Perl モジュールの更新には非常に便利で、インターネットの CPAN と直接やり取りします。「File Manager」ツールを使うとエクスプローラーと同じような形式でファイルシステムを見ることができ、遠隔で作業している時には作業しているワークステーションのメモリーを通さずファイルを移動したりコピーしたりすることができます。「SSH/Telnet Login」ツールはリモート・シェル・コンソールで、これを使うことでブラウザからコンソールにアクセスできます。


まとめ

Webmin は Perl で書かれた、ブラウザ・ベースの管理アプリケーションです。拡張可能で、Linux 以外でも他の Unix ライク (Unix 風) のオペレーティング・システムで使うこともできます。Webmin は特別なポート (普通は 10000) から、ローカル又は遠隔のブラウザからアクセスして使い、ユーザー管理、ネットワークのファイアーウォール設定、ネットワーク・デバイスの設定など、Linux での管理作業がポイント・アンド・クリックでできるようになります。

Webmin は無料でインストールして使うことができ、Windows のグラフィカル・ツールから移行しつつ、動作中の Linux 環境を管理するには良い方法です。Webmin はコンソール・ベースのツールのフロントエンドなので設定はコンソール・ベースのツールと一貫しており、どちらのツールからでも安全に管理を行うことができます。

参考文献

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Linux
ArticleID=230976
ArticleTitle=Windows から Linux へのロードマップ: 第 3 回 Webmin 入門
publish-date=11112003