VestaCPをインストールしてユーザーデータを移行する方法
序章
Vestaコントロールパネルは、Webサイト、電子メール、データベース、およびDNS機能を備えた無料のオープンソースコントロールパネルです。 このチュートリアルでは、UbuntuまたはCentOSサーバーにコントロールパネルをインストールし、デフォルトの管理インターフェイスポートを更新し、既存のインストールからユーザーデータを移行する方法を学習します。
注: 2018年4月8日、VestaCPに脆弱性が発見され、攻撃者がホストシステムを侵害し、他のサーバーを標的とする悪意のあるトラフィックを送信する可能性がありました。 その結果、DigitalOceanはVestaCPのデフォルトのport 8083
を無効にしました。 このチュートリアルでは、代わりにport 5600
を使用するようにインストールを更新します。 この脆弱性に関する最新情報については、以下をお読みください。 このコミュニティのQ&A投稿 。
前提条件
このチュートリアルを完了するには、次のリソースが必要です。
- Ubuntu16.04またはCentOS7サーバー
- サーバーを指すドメイン名。 DigitalOceanでホスト名を設定する方法では、DigitalOceanコントロールパネルでドメインを管理する方法を説明します。 このチュートリアルでは、panel.example.comを使用します
- ns1.example.comとns2.example.comをサーバーに向けている2つのAレコード
VestaCPのインストール
SSH経由でサーバーにログインします。 VestaCPは個々のユーザーアカウントの作成を処理するため、このチュートリアルでは、rootユーザーとしてログインして初期設定を行うことを前提としています。
ログイン後、/tmp
一時ディレクトリに移動し、インストールスクリプトをダウンロードします。
cd /tmp curl -O https://assets.digitalocean.com/vesta/install-vesta-do.sh
このスクリプトは、公式のVestaCPインストールスクリプトのラッパーです。 お気に入りのテキストエディタで開いて、その機能を確認できます。 公式スクリプトを使用してソフトウェアをインストールし、port 5600
を使用するように管理インターフェイスを更新します。
スクリプトを実行可能にします。
chmod +x install-vesta-do.sh
最後に、スクリプトを実行してVestaCPをインストールします。 VestaCPのインストールページにある公式インストールスクリプトでサポートされているオプションのいずれかを渡すことができます。 --force
オプションを使用します。そうしないと、インストーラーが一部のマシンの既存のadminグループについて文句を言う可能性があるためです。
./install-vesta-do.sh --force
スクリプトはインタラクティブにいくつかの質問をし、インストールを完了するのに約5〜15分かかります。 管理インターフェースのURLが、管理者ログイン情報とともに印刷されます。
OutputCongratulations, you have just successfully installed Vesta Control Panel https://panel.example.com:8083 username: admin password: a-random-password
注:これらの初期URLは、引き続きport 8083
を使用するため、正しくありません。 インストール出力の最後の行は次のようになります
Configuring to use port 5600 as admin port
接続を試みる前に、port 8083
へのすべての参照をport 5600
に更新してください。 たとえば、URLの例はhttps://panel.example.com:5600になります。 最初のインストール後、ユーザーへの後続の電子メールはすべて正しいポートを使用します。
これで、VestaCPがサーバー上で稼働しています。 既存のVestaCPがインストールされている場合は、次の手順に進みます。次の手順で、ユーザーデータを新しいサーバーに移行します。
サーバー間でのVestaCPユーザーデータの移行
VestaCPには、ユーザーデータのバックアップと復元に役立つスクリプトがいくつか付属しています。 これらのスクリプトを使用して、すべてのユーザーを移行します。
移行元のサーバーで、v-backup-users
を使用してすべてのユーザーをバックアップします。
v-backup-users
注:バックアッププログラムの実行中にcommand not found
エラーが発生した場合は、次を実行してPATH
を更新する必要があります。
export PATH=$PATH:/usr/local/vesta/bin
これは、VestaCPのインストール後にログアウトして再度ログインすると、自動的に処理されます。
このコマンドはステータス情報を出力しません。 結果のバックアップファイルは、/backup
で確認できます。
ls /backup
Outputadmin.2018-04-11_13-07-02.tar exampleuser.2018-04-11_13-07-02.tar
上記の出力は、バックアップされた2人のユーザーadminとexampleuserを示しています。 これらのファイルを新しいサーバーに転送するには、scp
ユーティリティを使用します。 次の手順は、バックアップファイルが1つでも複数でも同じように機能します。
新しいサーバーでパスワード認証を使用している場合は、次のように、古いサーバーから新しいサーバーにファイルを直接転送するのが最も簡単です。
scp /backup/* [email protected]:/backup/
パスワードの代わりにSSHキーを使用する場合、これは簡単には機能しません。 その場合、ファイルをローカルマシンにダウンロードしてから、新しいサーバーにアップロードするのが最も簡単です。 最初にファイルを保持するための一時的なローカルディレクトリを作成します。 ローカルコマンドラインで、次の手順を実行します。
mkdir /tmp/vesta-backups scp [email protected]:/backup/* /tmp/vesta-backups/ scp /tmp/vesta-backups/* [email protected]:/backup/
ここで、バックアップ.tar
ファイルが新しいサーバーの/backup
ディレクトリにアップロードされたら、新しいサーバーに再度ログインし、v-restore-user
コマンドを使用してプロセスを完了します。
v-restore-user admin admin.2018-04-11_13-07-02.tar
v-restore-user
コマンドには、.tar
ファイルのfilename が必要ですが、ファイルへのフルパスは必要ありません。 指定するファイル名は/backup
ディレクトリにあると想定されています。
このコマンドは、復元したアイテムの要約を出力します。 復元する必要のあるユーザーごとにこのコマンドを繰り返し、必要に応じてユーザー名と.tar
ファイル名を置き換えます。 これで移行は完了です。
結論
このチュートリアルでは、VestaCPコントロールパネルをインストールし、デフォルトの管理インターフェイスのポートを更新し、既存のインストールからユーザーデータを移行しました。 VestaCPソフトウェアを使用してWebサイトと電子メールをセットアップする方法の詳細については、 Ubuntu14.04にVestaCPをインストールしてWebサイトをセットアップする方法のステップ3と4を参照してください。 公式ドキュメントも参照できます。