nginx
mariadb
Ajenti
LEMP
PHP7.2

Ubuntu 17.10にLEMP+Ajenti環境構築

Linux(Ubuntu) + nginx + MariaDB + PHPの設置

Ubuntu 17.10(ArtfulAardvark)にLEMP環境とAjentiによる管理ツールを設置します。

インストール

1-1, PHP7.2をインストール

Ondřej Surý氏のリポジトリを使用します。(必要に応じてパッケージを追加)

sudo apt install python-software-properties
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install -y php7.2 php7.2-mbstring php7.2-mysql

このとき自動的にApache2もインストールされてしまうためインストール完了後、Apache2は削除します。

sudo apt-get purge apache2 apache2-utils apache2-bin apache2-data

1-2, nginxのインストール

公式リポジトリを使用しましょう。

まず、キーを登録します。

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key

次にリポジトリを登録します。

/etc/apt/sources.list.d/nginx.list
deb http://nginx.org/packages/ubuntu/ artful nginx
deb-src http://nginx.org/packages/ubuntu/ artful nginx

17.10のファイルがないためlaunchpadの公式リポジトリを使用します。
sh
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update

あとは、通常通りコマンドを実行するだけですね。

apt update
apt install nginx

1-3, MariaDBのインストール

ここも、公式リポジトリに書いてあるように登録するだけです。

apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
add-apt-repository 'deb [arch=amd64,i386] http://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/repo/10.2/ubuntu artful main'

でインストール。

apt update
apt install mariadb-server

1-4, AjentiとAjenti-xのインストール

自動インストールできますが、トップページに書かれている方法でインストールするとAjenti2がインストールされてしまいます。こちらのバージョンはnginxの管理ツールなどが含まれていないため1.x系をインストールしましょう。うっかり2.xをインストールしてしまっていた場合は後述。

wget -O- https://raw.github.com/ajenti/ajenti/1.x/scripts/install-ubuntu.sh | sudo sh

ajenti本体のインストールが完了したら、動作確認をします。https://localhost:8000/に接続し、管理パネルが表示されることを確認してください。

ajenti-vをインストールします。こちらに管理ツールが含まれます。

apt-get install ajenti-v ajenti-v-nginx ajenti-v-mysql ajenti-v-php7.2-fpm
service ajenti restart

2, 設定を行う

https://localhost:8000/にアクセスして、ユーザ名root、パスワードadminでログインします。言うまでもなくこのままでは危険なので、「設定」のユーザの「以下と同期」をOSユーザーに変更し、「保存」ボタンを押します。すると、ユーザ一覧にユーザ名が追加されます。

ここで再起動する前に、忘れずに追加したユーザに権限を追加しましょう。ログインはできても、管理できない状態になります。その場合は、/etc/ajenti/config.jsonを編集してやり直してください。

3, トラブルシューティング

Ajenti2をインストールしてしまった場合、手動で削除する必要があります。

pip uninstall ajenti-panel ajenti.plugin.dashboard ajenti.plugin.settings ajenti.plugin.plugins ajenti-panel ajenti.plugin.dashboard ajenti.plugin.settings ajenti.plugin.plugins ajenti.plugin.filemanager ajenti.plugin.notepad ajenti.plugin.packages ajenti.plugin.services ajenti.plugin.terminal
apt remove ajenti*
rm -rf /etc/ajenti
apt purge ajenti