システム管理者にとって、Webminは大きな恩恵です。これは、最新のウェブベースのインターフェースを使用して、Linuxマシンをリモートで管理できるウェブベースのコントロールパネルです。Webminは、ウェブサーバーやデータベースを含む、さまざまなシステム設定をその場で変更できます。また、ユーザー、グループ、ソフトウェアパッケージの管理も可能です。
このガイドでは、Ubuntu 18.04にWebminをインストールして設定する手順を説明します.
Ubuntu上のWebmin
Webminはシステム管理者にとって人気のあるツールですが、公式のUbuntuリポジトリからは利用できません。ありがたいことに、WebminにはUbuntu専用のPPAがあります。これにより、ソフトウェアを最新の状態に保つことができます。始める前に必要な前提条件は以下の通りです:
- sudo権限を持つ非rootユーザーとファイアウォールが設定されたUbuntuサーバーが必要です。詳細は、こちらからUbuntuサーバーのインストール方法、およびこちらからsudoユーザーの設定方法を参照してください.
- Webminの性質上、不要なアクセスから保護することが重要です。デフォルトで、Webminにはいくつかのセキュリティ機能が備わっています。しかし、このガイドでは、WebminをLet’s EncryptとApacheを使用して保護します。このチュートリアルに従って、Apacheサーバーをインストールしてください.
- 以降のチュートリアルでは、サーバーのIPアドレスを指すDNSレコードを持つFQDNも必要です。
- また、Certbotも必要です。インストール方法については、Ubuntu 18.04でLet’s Encryptを使用してApacheを保護するチュートリアルのステップ1を参照してください。Certbotを使用して、Webmin用のTLS/SSL証明書を作成します。
それでは、始めましょう!
UbuntuへのWebminのインストール
Webminをインストールするには、Webmin PPAを追加する必要があります。まず、システムに必要なすべての依存関係が含まれていることを確認します:
|
1 |
sudo apt update && sudo apt install software-properties-common apt-transport-https wget |
次に、WebminのPGPキーをインポートします:
|
1 |
wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add - |
最後に、Webminリポジトリを追加します:
|
1 |
sudo add-apt-repository "deb [arch=amd64] http://download.webmin.com/download/repository sarge contrib" |
これでAPTがWebmin PPAを認識できるようになります。APTキャッシュを更新します:
|
1 |
sudo apt update |
最後に、Webminをインストールします:
|
1 |
sudo apt install webmin |
インストールが完了すると、以下のように表示され、次のリンクからWebminに直接アクセスできることを示します。この例では、システムのホスト名を使用しています:
|
1 |
https://localhost:10000 |
Webminを使用してシステムを完全に制御するには、ユーザーがrootパスワードを知っている必要があると記載されています。しかし、Webminのような機密性の高いものを保護するには、それだけでは不十分です。前述のように、有効なTLS/SSL証明書を持つApacheウェブサーバーの背後に配置します。
Webminのセキュリティ保護
Webminにアクセスするためのデフォルトの方法は、ポート10000を開放することです。今回のケースでは、これは最適ではありません。この問題を解決するために、Apacheのバーチャルホストを、ポート10000で動作しているWebminサーバーへのプロキシとして設定します。その後、バーチャルホストはLet’s Encryptから取得したTLS/SSL証明書を使用して保護されます。この手順には、ApacheウェブサーバーとCertbotがインストールされ、適切に設定されている必要があります。
- 新しいApacheバーチャルホストの作成
新しいバーチャルホストは、その設定ファイルによって定義されます。お好みのテキストエディタで設定ファイルを開きます:
|
1 |
sudo vim /etc/apache2/sites-available/my_domain.conf |
ファイルに以下の行を追加します:
|
1 2 3 4 5 6 |
<VirtualHost *:80> ServerAdmin <email> ServerName <domain> ProxyPass / http://localhost:10000/ ProxyPassReverse / http://localhost:10000/ </VirtualHost> |
これは、バーチャルホストに届くリクエストを、以下の場所にあるWebminサーバーに転送するようApacheに指示します。また、Webminが生成した内部リンクがApacheを経由することも保証します。
- WebminのTLS/SSLの無効化
ApacheをTLS/SSLで設定するため、Webmin自体に独自のTLS/SSLを設定する必要はありません。Webmin側でこの機能を無効にすることをお勧めします。次に、お好みのテキストエディタでWebminの設定ファイルを開きます。
|
1 |
sudo vim /etc/webmin/miniserv.conf |
次に、以下の行を探します。
|
1 |
ssl=1 |
ここで、値「1」はWebminのSSLが有効であることを示しています。次に、値を「0」に設定してWebminのSSLを無効にします。
- Webminへのドメインの追加
デフォルトでは、Webminはドメインからのアクセスを許可しません。これは、そのようなアクセスがクロスサイトスクリプティング(XSS)攻撃などの悪意のある攻撃の一部となる可能性があるためです。
Webminがドメインを許可するようにするには、Webminの設定で宣言する必要があります。お好みのテキストエディタで設定ファイルを開きます。
|
1 |
sudo vim /etc/webmin/config |
テキストの最後に、以下の行を追加します。
|
1 |
referers=<domain> |
その後、テキストを保存してエディタを終了し、Webminサービスを再起動してすべての変更を反映させます。
|
1 |
sudo systemctl restart webmin |
- Apacheの設定
Apacheのproxy_http モジュールが必要です。次のコマンドで有効にできます。
|
1 |
sudo a2enmod proxy_http |
Apacheの再起動を促されますが、まず新しいバーチャルホストを有効にする必要があります。
|
1 |
sudo a2ensite <domain> |
最後に、Apacheを再起動します。これにより、モジュールとバーチャルホストが有効になります。
|
1 |
sudo systemctl restart apache2 |
次のコマンドは、ポート80 および 443 (HTTP/HTTPSトラフィック用のApacheデフォルトポート)への受信トラフィックを許可するようにファイアウォールを設定します。
|
1 |
sudo ufw allow in "Apache Full" |
設定が正常に機能したか確認するには、お使いのドメインにアクセスしてください。Webminのログインページが表示されるはずです。ただし、Webminにはログインしないでください。TLS/SSLがまだ実装されていないため、HTTP経由で通信が行われ、すべてのデータがプレーンテキスト形式で送信されます。
|
1 |
http://<domain> |
- TLS/SSLの設定
接続を暗号化するために、ドメイン用の証明書 が必要です。そのために、Let’s Encrypt を使用します。これは、Internet Security Research Group(ISRG)が提供する、一般の利益のために運営されている、無料、自動、かつオープンな認証局(CA)です。
証明書を生成するには、シェルでcertbotツールを使用します。次のcertbotコマンドを実行して、ドメイン用のTLS/SSL証明書を生成し、安全なサイトにトラフィックをリダイレクトするようにApacheを設定します。
|
1 |
sudo certbot --apache --email <email> -d <domain> --agree-tos --redirect --noninteractive |
出力は以下のようになります。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
保存中 デバッグ ログ へ /var/log/letsencrypt/letsencrypt.log プラグイン 選択済み: オーセンティケーター apache, インストーラー apache 取得中 a 新規 証明書 実行中 the 以下の チャレンジ: http-01 チャレンジ 用 <domain> 有効化済み Apache rewrite モジュール 待機中 用 検証... クリーンアップ中 up チャレンジ 作成済み an SSL vhost at /etc/apache2/sites-available/<domain>-le-ssl.conf 有効化済み Apache socache_shmcb モジュール 有効化済み Apache ssl モジュール デプロイ中 証明書 へ VirtualHost /etc/apache2/sites-available/<domain>-le-ssl.conf 有効化中 利用可能な サイト: /etc/apache2/sites-available/<domain>-le-ssl.conf 有効化済み Apache rewrite モジュール リダイレクト中 vhost 内 /etc/apache2/sites-enabled/<domain>.conf へ ssl vhost 内 /etc/apache2/sites-available/<domain>-le-ssl.conf ------------------------------------------------------------------------------- おめでとうございます! あなた have 正常に 有効化しました https://<domain> あなた すべきです テスト あなたの 設定 にて: https://www.ssllabs.com/ssltest/analyze.html?d=<domain> ------------------------------------------------------------------------------- |
これは、証明書のインストールが成功し、Apacheが次の場所からのリクエストをリダイレクトするように正常に設定されたことを示しています: http://<domain> へ https://<domain>.
Webminの使用
最後に、Webminを使用してシステムを管理する準備が整いました。ウェブブラウザからWebminドメインを開き、rootユーザー(またはsudo権限を持つ他のユーザー)としてログインします。
- ユーザーとグループの管理
まず、Webminを使用してユーザーとグループを管理する方法を見てみましょう。左側のパネルから、次へ進みます: システム >> ユーザーとグループ:

新しいユーザーを作成するには、次をクリックします: 新しいユーザーの作成:

その後、新しいユーザーに必要な情報を入力します。次をクリックして作成 手順を完了します:

- パッケージのアップデート
Webminは、利用可能なパッケージのアップデートを確認することもできます。左側のパネルから、次のアイコンをクリックします: ダッシュボード アイコン:

その ダッシュボード にはシステム統計の簡単な概要が表示されます。次のセクションの下にあるシステム情報 セクションで、次のラベルを見つけます: パッケージのアップデート ラベル。パッケージに利用可能なアップデートがあるかどうかが報告されます。
または、左側のパネルから、次へ進みます: システム >> ソフトウェアパッケージのアップデート。次のタブの下で、パッケージのアップデート タブに、アップデートが利用可能なすべてのパッケージがWebminによって報告されます:

次のタブの下で、スケジュールされたアップグレード タブでは、Webminはパッケージアップデートのインストールを自動化するオプションを提供します:

次に、以下のタブの下で、パッケージリポジトリ タブでは、Webminはシステムに設定されているすべてのパッケージリポジトリを簡単に管理する方法を提供します:
- カスタムコマンドの実行
Webminは多数のオプションやカスタマイズを提供していますが、手動で行う必要があることもまだあります。Webminは任意のシェルコマンドを実行できます。コマンドを実行するには、左側のパネルから、次へ進みます: ツール >> コマンドシェル:

次に、目的のコマンドを入力し、次をクリックしてコマンドを実行 実行します:

特定のコマンドを定期的に実行しますか?Webminに登録することを検討してください。左側のパネルから、次へ進みます: ツール >> カスタムコマンド。これで、それらのコマンドを手動で入力する必要はもうありません:

- Apacheの管理
さらに、サーバーエンジンがインストールされている場合、Webminで管理することができます。この例ではApacheを使用しました。Webminを介してApacheを管理するには、Servers >> Apache:

おわりに
Webminはシステム全体を管理するための非常に便利なツールです。通常であればコンソール画面との退屈なやり取りが必要となる作業を、快適に行う方法を提供します。さらに、システムを細かく整理するのにも役立ちます。このガイドでは、Webminの最も便利なアプリケーションを紹介しています。お気軽にWebmin公式wikiを探索して、このツールを最大限に活用する方法について詳しく学んでください。
快適なコンピューティングを!



コメント
コメントはまだありません。最初のコメントを投稿しましょう。