サーバー管理は、新しいユーザーにとって難しい場合があります。幸いなことに、Ajenti がすぐに助けに来てくれます。 Ajenti は、Linux/Unix オペレーティング システム用のオープンソースの Web ベースのサーバー管理ツールで、サーバー管理をより簡単にします。
このチュートリアルでは、Ajenti コントロール パネルを Linux システムにインストールしてサーバーを管理する方法を学習します。
読んで、Ajenti でサーバー管理を満足させましょう!
前提条件
このチュートリアルは実践的なデモンストレーションです。先に進むには、次のものが揃っていることを確認してください:
- Linux サーバー – このチュートリアルでは、Ubuntu 22.04 (Jammy Jellyfish) の最新バージョンを使用しますが、他のディストリビューションも使用できます。
- sudo 管理者権限を持つ root 以外のユーザー – root ユーザーまたは sudo が有効なユーザーを使用できます。
- サーバーの IP アドレスを参照して解決されるドメイン名 – このチュートリアルではドメイン agenti.example.io を使用します .
- Ajenti のインストールを保護するために生成された SSL 証明書。
Ubuntu への Ajenti のインストール
Ajenti コントロール パネルは、ソース コードを手動で使用するか、Ajenti が提供するインストーラー スクリプトを使用して、さまざまな方法でインストールできる Web アプリケーションです。ただし、このチュートリアルでは、後者を使用します。
インストーラー スクリプトを使用して Ajenti コントロール パネルをインストールするには:
1. ターミナルを開き、SSH 認証情報を使用してサーバーにログインします。
2. 次に、次の apt update コマンドを実行して、パッケージ インデックスを更新および更新します。
sudo apt update

3. 次の curl コマンドを実行して、Ajenti インストーラー スクリプト (install.sh) をダウンロードします。 ) を作業ディレクトリに追加します。
curl -O https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh

4. ダウンロードしたら、以下の各コマンドを実行してスクリプトを作成します (install.sh ) 実行可能ファイル (chmod +x) をダウンロードし、それを実行して Ajenti のインストールを開始します。
# Making the installer script executable
sudo chmod +x install.sh
# Running the Ajenti installer via the installer script
sudo ./install.sh
以下では、インストーラー スクリプトが次のことを実行することを確認できます。
- Linux ディストリビューションを検出し、パッケージの依存関係をインストールする
pip
経由で Ajenti をインストールします コマンド
- ajenti サービスを開始して有効にします。

Ajenti をインストールすると、ajenti サービスが有効になり、デフォルトの TCP ポート 8000 で実行されます。

5. 最後に、次の systemctl コマンドを実行して、ajenti サービスが有効になっていることを確認し、サービスのステータスを確認します。
# Checking if the ajenti service is enabled
sudo systemctl is-enabled ajenti
# Checking the ajenti service status
sudo systemctl status ajenti
ajenti.service が有効 (システムの起動時に自動的に実行) であり、アクティブ (実行中) の状態であることを示す出力を確認できます。

リモート サーバー管理用の Ajenti の構成
これで Ajenti がインストールされましたが、リモート サーバー管理のために Ajenti が正しく機能するように構成する必要があります。 bind
を設定します Ajenti のアドレス、ドメイン名、およびデフォルトの SSL 構成を変更します。
Ajenti のデフォルト設定は /etc/agenti にあります ディレクトリであり、config.yml
サーバー管理用に Ajenti を構成するには、実行中の IP アドレスを変更し、SSL を無効にし、ドメイン名を変更します。
1. Ajenti 構成ファイルを開きます /etc/agenti/config.yml お好みのエディターを使用してください。
2. bind セクションで、ホストの値を 127.0.0.1 に変更して、Ajenti が localhost または 127.0.0.1 で実行できるようにします。
ただし、まだファイルを閉じないでください。次の手順で、構成の他の値を変更します。
bind:
host: 127.0.0.1
mode: tcp
port: 8000
3. 次に、名前の値をドメイン名 (agenti.example.io) に変更します。
name: ajenti.example.io
4. ssl セクションに移動し、オプション enable:true を enable:false に変更し、ファイルを保存してエディターを終了します。
この構成は、次のステップで NGINX リバース プロキシ経由で置き換える Ajenti で SSL を無効にします。
ssl:
certificate: /etc/ajenti/ajenti.pem
client_auth:
certificates: []
enable: false
force: false
enable: false
force: false
5. 最後に、次の systemctl コマンドを実行します。出力は提供されませんが、ajenti サービスが再起動され、変更が適用されます。
sudo systemctl restart ajenti
NGINX リバース プロキシを使用した Ajenti の実行
セキュリティとプライバシーを追加することで、個人を保護し、インターネット上の Web サイトを閲覧する際の認証を提供します。どのように?リバース プロキシ サーバーをセットアップする。
このチュートリアルでは、NGINX をインストールし、127.0.0.1:8000 で実行される Ajenti のリバース プロキシとしてサーバー ブロックをセットアップします。 .
1. 次の apt install コマンドを実行して、NGINX をインストールします。
sudo apt install nginx -y

2. NGINX をインストールしたら、新しいサーバー ブロック構成 /etc/nginx/sites-available/agenti を作成します。 お好みのエディターを使用してください。
3. 以下の NGINX サーバー ブロック構成を追加します。
ドメイン名 ajenti.example.io と SSL 証明書のパスを自分のものに変更し、ファイルを保存してエディターを閉じてください。
server {
server_name ajenti.example.io;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/ajenti.example.io/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ajenti.example.io/privkey.pem;
client_max_body_size 20m;
location / {
rewrite (/ajenti)$ / break;
rewrite /ajenti/(.*) /$1 break;
proxy_pass http://127.0.0.1:8000;
proxy_redirect / /ajenti/;
proxy_set_header Host $host;
proxy_set_header Origin http://$host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
}
}
server {
listen 80;
server_name ajenti.example.io;
if ($host = ajenti.example.io) {
return 301 https://$host$request_uri;
}
return 404;
}
4. 次に、次のコマンドを実行して ajenti サーバー ブロックをアクティブ化し、NGINX 構成を検証して、構成が適切であることを確認します。
# Enabling server block and verifying configuration
sudo ln -s /etc/nginx/sites-available/ajenti /etc/nginx/sites-enabled/
sudo nginx -t
正しく適切な NGINX 構成があれば、次の出力が表示されます。

5. 以下の systemctl コマンドを実行します。出力は提供されませんが、nginx サービスが再起動され、新しい変更が適用されます。
sudo systemctl restart nginx
6. お気に入りの Web ブラウザーを開き、Ajenti コントロール パネル インストールのドメイン名にアクセスします (例:https://agenti.example.io/)。 )。すべてがうまくいけば、ブラウザは Ajenti ログイン ページをロードします (ステップ 7)。
7. 最後に、サーバーのユーザー名とパスワードを入力し、[ログイン] をクリックします。この例では、root ユーザーを使用して Ajenti にログインします。

ユーザー名とパスワードが正しければ、以下に示すように、ブラウザーは Ajenti コントロール パネル ダッシュボードにリダイレクトされます。
Ajenti は、Webmin サーバー管理と同様に、Web ブラウザーを介してサーバーを管理できる、高速で直感的な Web ユーザー インターフェイスを提供します。 Ajenti (主に Python で記述) は、VPS (Virtual Private Server) または専用サーバーでの使用に最適な、強力で軽量なサーバー管理ツールです。

プラグインによる Ajenti の機能の拡張
Ajenti は NGINX リバース プロキシで実行されていますが、これで十分です。しかし、アジェンティの可能性を最大限に引き出してみませんか? Ajenti には、サーバー管理用の Ajenti の機能を拡張するためにインストールできるプラグインがあります。
Ajenti プラグインをインストールするには:
1. Ajenti ダッシュボードで、GENERAL セクション (左側のパネル) の下にある [プラグイン] をクリックすると、Ajenti で利用可能なプラグインが表示されます。

2. 以下に示すダウンロード アイコンをクリックして、Ajenti プラグインを次のようにインストールします。
- クロン – Linux での Cron の管理
- 証明書の確認 – Ajenti コントロール パネルを介して証明書を監視します。

3. 証明書をインストールした後、[RESTART PANEL] ボタンをクリックして Ajenti サービスを再起動すると、ブラウザが Ajenti ログイン ページにリダイレクトされます。

SSL 証明書の監視
いくつかのプラグインを備えた Ajenti とリバース プロキシとしての NGINX が用意されたので、サーバー管理という最もエキサイティングな部分に到達しました。
SSL 証明書を最新の状態にしておくと、クライアントとサーバー間の接続を保護するのに役立ちます。通常、SSL 証明書の有効期限が切れないようにする必要があり、証明書を追跡する方法が必要です。幸いなことに、Ajenti は任務を遂行しています。
[証明書を確認] をクリックします (左側のパネル) Ajenti ダッシュボードで、[追加] をクリックします。 .ホストに関する情報を追加できるポップアップ ウィンドウが表示されます (ステップ 2)。

次に、ポップアップ ウィンドウにウェブサイトの URL を入力し、[追加] をクリックします。 ホスト情報を Ajenti に追加します。

追加すると、発行者、証明書の有効期限、現在のステータスなど、Web サイトの SSL 証明書に関する情報を確認できます。

cron ジョブの設定
やりたいことがたくさんあると、他のタスクに取り組む時間がないかもしれません。代わりに Cron ジョブをセットアップしてみませんか?
Cron ジョブはスケジュールに従って自動的に実行されるため、より重要なタスクに集中できます。また、Cron プラグインをインストールしているため、Ajenti では数回クリックするだけで Cron ジョブを追加できます。
Cron をクリックします (左パネル) SYSTEM の下 セクションを選択し、[追加] をクリックします Cron ジョブの追加を開始します。

次に、Cron ジョブの詳細を入力し、[OK] をクリックします。
次の例では、新しい Cron が毎日 00:00 に実行されます 以下のコマンドで。
/usr/bin/echo "This is test cron" && sleep 5 && apt update

これで、以下に示すように、すべての Cron ジョブが Ajenti ダッシュボードで利用できるようになります。

サーバーのファイルとディレクトリの管理
サーバーにアップロードするファイルがありますか? Ajenti を使用すると、ファイルだけでなくディレクトリも複雑な操作なしでサーバーにアップロードできます。
Ajenti を介してファイルとディレクトリを管理するには:
[ファイル マネージャー] をクリックします (左側のパネル)、Ajenti ファイル マネージャーが表示されます。

次に、必要に応じて以下の 3 つのボタンのいずれかをクリックします。
- 新しいファイルと新しいディレクトリ – 空のファイルまたはディレクトリを作成します。
- アップロード – 既存のファイルとディレクトリをローカル コンピューターからサーバーにアップロードします。

Ajenti 経由でサーバー ターミナルにアクセスする
サーバー上の端末を介して主に作業する場合、Ajenti はコマンドを実行できるサーバーに接続された端末を提供します。
ターミナルをクリックします (左パネル) Ajenti の端末オプションにアクセスします。
以下に、2 つの端末オプションがあることがわかります。
- 新しいターミナルを開く – 端末セッションを開きます
- コマンドを実行する – 端末セッションを開かずにコマンドをすばやく実行できます

[新しい端末を開く] をクリックします。 端末セッションを開きます。

以下に示すように、Ajenti ダッシュボードでサーバーのターミナル セッションを取得します。
これで、サーバー上の実際のターミナルで行うように任意のコマンドを実行し、Ctrl+C を押すか、終了コマンドを実行してターミナルからログアウトできます。

結論
このチュートリアルを通じて、NGINX リバース プロキシと SSL 証明書で保護されたサーバーを管理するために、Ajenti コントロール パネルをインストール、保護、および構成しました。
この時点で、サーバーを安全に便利に管理し、SSL 証明書を監視して Cron ジョブを追加し、Ajenti のターミナルを介してコマンドをすばやく実行できるようになりました。