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サイト( 参考文献 にリンクがあります)からのダウンロードと同じくらい簡単です。
この記事を書いている時点では、現在のバージョンは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
Webminがすでにインストールされている場合でも、多分バージョンは現在ダウンロードできるものよりも古いでしょう。その場合には次のコマンドで、アップグレードまたは新規インストールすることができます。
rpm -Uvh webmin-1.090-1.noarch.rpm
アップグレードの進行状況が#記号を使ったプログレスバーで表示されます。
Webminはインストールされるとデフォルトで起動しますが、SSLを有効にしてインストールされるわけではありません。SSLには
Net::SSLeay
と呼ばれるPerlモジュールがインストールされている必要があります。これがインストールされるまで、ローカル・コンソールから実行した場合のみしかセキュアではありません。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 Configuration Sectionです。ここがWebminユーザーを設定し、モジュールを設定し、また操作ログを見るところです。一番上にあるアイコンでWebminの各モジュール・セクションを切り替えます。モジュールはすべて設定可能で、自分の好みに合わせてグループ分けし直すことができます。
図1. Webmin設定画面
System はオペレーティング・システムの一般的な設定を行う部分で、ファイルシステムやユーザー、グループ、それにシステムの一般的な起動方法を設定します。システム上で実行するサービスは制御でき、そうしたサービスがBootupやShutdownアイコンで自動的に起動するかどうかも制御することができます。ただし、こうしたサービスの制御はServersセクションで行います。「Software Packages」ツールが特に興味のあるところです。このツールでインストールされているパッケージを簡単に見ることができ、ディストリビューションのアップデートのリポジトリや、インターネットでの一般的なRPMリポジトリであるrpmfind.netにつなぐことができます( 参考文献 にリンクがあります)。
Servers セクションではシステム上で実行するいろいろなサービスを設定します。BINDやDHCPツールは非常に便利ですし、Sambaもファイル設定やWindows等のクライアントでのプリンター共有設定に簡単に使えるツールです。SMTPサーバーであるSendmailは複雑な設定ファイルがあることで有名ですが、Webmin Sendmailツールはそうした面倒からも解放してくれます。
図2. 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はコンソール・ベースのツールのフロントエンドなので設定はコンソール・ベースのツールと一貫しており、どちらのツールからでも安全に管理を行うことができます。
-
WindowsからLinuxへのロードマップシリーズ
の他の記事も参考にしてください。(developerWorks , 2003年11月)
-
Webminの一般的な情報に関しては
Webmin home page
を、またダウンロードについては
download the Webmin tool
を見てください。
-
Webminを遠隔で使う前には
Securing Webmin with SSL
を読んだ方が良いでしょう。
-
Perlについてさらに詳しくは
Perl.org
を見てください。
-
CPAN
ネットワークには便利なPerlモジュールやソフトウェアがたくさんあります。
-
Perlは
Artistic License
(ソースコードに加えた変更を、公開してもしなくても構わない)という条件下でリリースされています。
-
IBMdeveloperWorks の
洗練されたPerl
コラムでPerlについてさらに学び、Perlコミュニティでの発展状況を見てください。
-
RPMFind
はRPMの宝庫で、膨大な量の有益な(また、無益ですが面白い)プログラムがあります。
-
Understanding Linux configuration files
(developerWorks ,
2001年12月)ではパーミッションやデーモン、サービス等々について説明しています。
-
xinetdプログラムによるシステム管理
と
PerlによるUNIXのシステム管理の自動化
は別の手法でシステム管理を容易にする方法の説明です。
Linuxを即席で管理する
も似た内容の説明です。
-
Linux用のIBMソフトウェアを始めるのであれば
Speed-start your Linux app
のページが一番のお勧めです。インストールのヒントからDB2、Lotus
ドミノ、WebSphereアプリケーション・サーバー、WebSphereスタジオ、等々の資料があります。サインアップすれば試用版のソフトウェアや練習用の資料などが入った無料のLinuxソフトウェア評価キットを入手できます。
-
developerWorks Linuxゾーンの
resources for Linux developers
(Linux開発者への資料)も見てください。
Chris WaldenはIBM Developer Relations Technical Consulting(dragonslayers としても知られています)のeビジネス・アーキテクトです。テキサス州オースチン在住で教育、設置使用指導、IBMビジネス・パートナーへのコンサルティングにあたっています。自他共に認める半Linux狂発症途中で、聞く耳持つ人がいれば誰にでも良い知らせを広めています。eビジネス・アーキテクトとしての仕事以外に彼の地域にある、すべてLinuxによる基幹サーバーを管理しており、そこでは多種多様なユーザー環境でのファイル、印刷その他のアプリケーション・サービスを扱っています。コンピューター業界でフィールド・サポートからWebアプリケーション開発やコンサルティングまで10年の経験があります。連絡先は cmwalden-at-us.ibm.com です。