GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 8 /RHEL8サーバーにWebminをインストールする方法

Webmin Unix/Linuxサーバーを管理するための無料のオープンソースコントロールパネルです。このチュートリアルでは、CentOS 8 /RHEL8サーバーにWebminをインストールする方法を説明します。

Webminは、一般的なシステムタスクと設定を構成するためのグラフィカルなWebベースのユーザーインターフェイスをユーザーに提供します。コマンドラインを使用してサーバーを管理するというアイデアが気に入らない場合は、Webminがグラフィカルな代替手段として適しています。以下は、Webminが提供する機能のリストです。

  • BINDDNSリゾルバーと権限のあるDNSサーバー
  • Sambaサーバー
  • FTPサーバー
  • PostfixSMTPサーバーとDovecotIMAP/POP3サーバー。
  • ファイルシステムのバックアップ
  • ログファイルのローテーションを構成します。
  • パッケージリポジトリを編集し、ソフトウェアの自動更新をスケジュールし、電子メールで更新レポートを受信します。
  • ユーザーとグループを管理する
  • cronジョブをスケジュールします。
  • iptablesファイアウォールを構成する
  • その他多数。

WebminリポジトリからCentOS8/RHEL8にWebminをインストールする

Webminは1997年から存在しています。この記事の執筆時点で、入手可能な最新の安定バージョンは1.970で、2021年1月6日にリリースされました。WebminはCentOS/RHELソフトウェアリポジトリにありません。常に最新バージョンを入手できるように、公式リポジトリからWebminをインストールすることをお勧めします。

Webminリポジトリを追加するには、Nanoなどのコマンドラインテキストエディタを使用してリポジトリファイルを作成します。

sudo dnf install nano

sudo nano /etc/yum.repos.d/webmin.repo

ファイルに次の行を追加します。

[Webmin]
name=Webmin Distribution Neutral
#baseurl=https://download.webmin.com/download/yum
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
enabled=1

ファイルを保存して閉じます。 Nanoテキストエディタでファイルを保存するには、CTRL+Oを押します。 、次にEnterを押します 確認するために。ファイルを閉じるには、CTRL+Xを押します 。次に、次のコマンドを実行してWebmin PGP署名キーをダウンロードおよびインポートし、パッケージマネージャーがWebminリポジトリからダウンロードされたパッケージの整合性を検証できるようにする必要があります。

wget http://www.webmin.com/jcameron-key.asc

次に、次のコマンドでインポートします:

sudo rpm --import jcameron-key.asc

これで、リポジトリを更新してWebminをインストールできます。

sudo dnf update -y

sudo dnf install webmin -y

インストールすると、以下のsystemctlコマンドを実行するとわかるように、Wemin組み込みWebサーバーが自動的に起動します。

systemctl status webmin

出力:

ヒント :上記のコマンドがすぐに終了しない場合は、 Qを押すことができます ターミナルの制御を取り戻すためのキー。

実行されていない場合は、次のコマンドで開始できます:

sudo systemctl start webmin

Unit webmin.service could not be found」が表示された場合 」エラーが発生した場合は、サーバーを再起動する必要があります。

sudo shutdown -r now

Webminサーバーはポート10000でリッスンするため、ファイアウォールでTCPポート10000を開く必要があります。

sudo firewall-cmd --permanent --add-port=10000/tcp

sudo systemctl reload firewalld

これで、

を介してWebベースのコントロールパネルにアクセスできます。
https://your-server-ip:10000

HTTPSモードで実行されており、自己署名TLS証明書を使用しているため、ブラウザから接続が安全でないことが通知されます。

ただし、これは独自のサーバーであることがわかっているので、Advancedをクリックするだけです。 Firefoxのタブをクリックし、例外を追加します。 Google Chromeを使用している場合は、[Advanced]をクリックできます ->Proceed

これで、Webminログイン画面が表示されます。 rootを使用する必要があります ログインするアカウント。

ナビゲーションメニューのデフォルトの色が気に入らない場合は、theme configurationをクリックして別の色に変更できます。 ナビゲーションメニューの下部にあるアイコン

次に、ナビゲーションメニューオプションを選択し、カラーパレットを設定します。たとえば、ミッドナイトブルーを選択しました。

変更を保存します。

リバースプロキシの設定

Webminを運用サーバーにインストールする場合は、ApacheまたはNginxでリバースプロキシを設定して、ドメイン名を使用してポート番号(10000)を指定せずにWebminインターフェイスにアクセスできるようにすることができます。これにより、Webmin用の有効なLet’sEncryptTLS証明書を取得してインストールすることもできます。

実際のドメイン名をお持ちでない場合は、NameCheapにアクセスして購入することをお勧めします。価格は安く、whoisのプライバシー保護は一生無料です。

Apache

Apache Webサーバーを使用する場合は、以下の手順に従ってリバースプロキシを設定してください。

ApacheWebサーバーをインストールします。

sudo dnf install httpd

次に、Webminの仮想ホストファイルを作成します。

sudo nano /etc/httpd/conf.d/webmin.conf

次のテキストをファイルに追加します。 webmin.your-domain.comを置き換えます 実際のドメイン名を使用して、DNSAレコードを作成することを忘れないでください。

<VirtualHost *:80>
    ServerName webmin.your-domain.com

    ProxyPass / http://127.0.0.1:10000/
    ProxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>

ファイルを保存して閉じます。変更を有効にするためにApacheをリロードします。

sudo systemctl reload httpd

デフォルトでは、SELinuxはApacheが他のサーバーにネットワークリクエストを行うことを禁止していますが、後でApacheはHTTPリクエストを127.0.0.1:10000に転送する必要があります 、したがって、次のコマンドでApacheを許可するようにSELinuxに指示する必要があります。

sudo setsebool -P httpd_can_network_connect 1

これで、ドメイン名(webmin.your-domain.com)を入力して、Webminにリモートアクセスできます。 )ブラウザのアドレスバーにあります。

Nginx

Nginx Webサーバーを使用する場合は、以下の手順に従ってリバースプロキシを設定してください。

CentOS/RHELにNginxをインストールします。

sudo dnf install nginx

NginxWebサーバーを起動します。

sudo systemctl start nginx

次に、/etc/nginx/conf.d/に新しいサーバーブロックファイルを作成します ディレクトリ。

sudo nano /etc/nginx/conf.d/webmin.conf

次のテキストをファイルに貼り付けます。 webmin.your-domain.comを置き換えます ご希望のドメイン名を使用して、DNSAレコードを作成することを忘れないでください。

server {
       listen 80;
       listen [::]:80;
       server_name webmin.your-domain.com;

       access_log /var/log/nginx/webmin.access;
       error_log /var/log/nginx/webmin.error;

       location / {
              proxy_pass http://127.0.0.1:10000;
              #proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
        }
}

ファイルを保存して閉じます。次に、Nginx構成をテストします。

sudo nginx -t

テストが成功した場合は、Nginxをリロードします。

sudo systemctl reload nginx

デフォルトでは、SELinuxはNginxが他のサーバーにネットワークリクエストを行うことを禁止していますが、後でNginxはHTTPリクエストを127.0.0.1:10000に転送する必要があります 、したがって、次のコマンドでNginxを許可するようにSELinuxに指示する必要があります。

sudo setsebool -P httpd_can_network_connect 1

これで、webmin.your-domain.comを介してWebminWebインターフェイスにアクセスできます。 。

HTTPSを有効にする

Webmin WebインターフェイスにアクセスしたときにHTTPトラフィックを暗号化するために、Let’sEncryptから発行された無料のTLS証明書をインストールしてHTTPSを有効にすることができます。次のコマンドを実行して、Let’s Encryptクライアント(certbot)をCentOS/RHELにインストールします。

sudo dnf install certbot

Apacheを使用する場合は、CertbotApacheプラグインをインストールする必要があります。

sudo dnf install python3-certbot-apache

次に、次のコマンドを実行してTLS証明書を取得してインストールします。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

Nginxを使用する場合は、CertbotNginxプラグインをインストールする必要があります。

sudo dnf install python3-certbot-nginx

次に、次のコマンドを実行してTLS証明書を取得してインストールします。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

場所:

  • --apache :Apacheプラグインを使用してください。
  • --nginx :nginxプラグインを使用してください。
  • --agree-tos :利用規約に同意します。
  • --redirect :301リダイレクトでHTTPSを強制します。
  • --hsts :すべてのHTTP応答にStrict-Transport-Securityヘッダーを追加します。ドメインに常にTLSを使用するようにブラウザを強制します。 SSL/TLSストリッピングから防御します。
  • --staple-ocsp :OCSPステープリングを有効にします。有効なOCSP応答は、TLS中にサーバーが提供する証明書にホチキス止めされます。

これで、証明書が取得され、自動的にインストールされます。また、安全なHTTPS接続を介してWebminWebインターフェイスにアクセスできるようになります。

信頼できるリファラーを追加する

Webmin自体はHTTPモードで実行されており、Apache / NginxでHTTPSを有効にしているため、Webminはhttps://webmin.your-domain.comと見なします。 Webminサーバーの外部にあります。したがって、信頼できるリファラーを追加する必要があります。

Webmin構成ファイルを編集します。

sudo nano /etc/webmin/config

最後に次の行を追加します。

referers=webmin.your-domain.com

ファイルを保存して閉じます。次に、Webminを再起動します。

sudo systemctl restart webmin

WebminでHTTPSモードを無効にする

TLS接続がApache/Nginxで終了したので、Webminの組み込みWebサーバーでHTTPSモードを無効にする必要があります。 Webmin構成ファイルを編集します。

sudo nano /etc/webmin/miniserv.conf

次の行を見つけます。

ssl=1

WebminでHTTPSモードを無効にするには、次のように変更します。

ssl=0

このファイルに次の行を追加して、組み込みのWebサーバーがローカルホストからのアクセスのみを許可するようにすることもできます。 http://public-ip:10000を使用している訪問者 スキームは禁止されます。

allow=127.0.0.1

ファイルを保存して閉じます。次に、Webminを再起動します。

sudo systemctl restart webmin

トラブルシューティング

エラーが表示された場合は、Webminエラーログ(/var/webmin/miniserv.error)を確認できます。 )トラブルシューティングします。


Cent OS
  1. CentOS 8 /RHEL8にPuppetをインストールする方法

  2. CentOS 7 /RHEL7にWebminをインストールします

  3. CentOS / RHEL 7 :GUI のインストール方法

  1. RHEL 8 /CentOS8にpostfixメールサーバーをインストールする方法

  2. CentOS 7 /RHEL7にPuppet6.xをインストールする方法

  3. RHEL 8 /CentOS8にPuppetをインストールする方法

  1. RHEL 8 /CentOS8にvncサーバーをインストールする方法

  2. NextcloudをRHEL8/CentOS8サーバーにインストールする方法

  3. RHEL 8 /CentOS8サーバーにOwnCloudをインストールする方法