移行ガイド · 2 min read · Sep 12, 2025

ISPConfig 2、ISPConfig 3、Confixx、CPanel、またはPleskをISPConfig 3.2またはISPConfig 3.3(単一サーバー)に移行する方法

このハウツーでは、ISPConfig Migration Tool 2.0を使用して、単一サーバーを新しいISPConfig 3.xサーバーに移行する方法を示します。Migration Toolは、こちらで入手可能なISPConfig Migration Toolkitの一部です。

ISPConfig Migration Toolは、次のホスティングコントロールパネルをISPConfig 3.xサーバーに移行するために使用できます:

  • ISPConfig 2
  • ISPConfig 3から3.3
  • Plesk 10 - 12.5
  • Plesk Onyx
  • Confixx
  • Cpanel

このチュートリアルでは、ISPConfig 3.xサーバーをISPConfig 3.2または3.3を実行している新しいシステムに移行します。他のサポートされているホスティングコントロールパネルからの移行も同様に行われます。Migration Toolは、移行プロセスをステップバイステップで案内します。

前提条件と注意事項

  • ソースサーバーにISPConfig 3.xが必要です。
  • ターゲットサーバーにISPConfig 3.1.7以上が必要です。
  • ソースサーバーにPHP 5.3+(JSON、mcrypt、OpenSSL、mbstringサポート)が必要です。
  • 古いサーバーと新しいサーバーは同じマスターサーバーに接続されてはいけません。もし接続されている場合は、代わりにISPCopyを使用してください(これもMigration Toolkitの一部です)。
  • Migration Toolkitライセンス。
  • Let’s Encrypt証明書:古いサーバーと新しいサーバーは同じLet’s Encryptクライアントを使用する必要があります。古いサーバーがCertbotを使用している場合は、新しいシステムもCertbotを使用することを確認してください。もしISPConfigの自動インストーラーを使用して新しいサーバーをインストールし、古いサーバーがcertbotを使用している場合は、自動インストーラーで–use-certbotコマンドラインスイッチを使用して、新しいサーバーにacme.shではなくcertbotをインストールしてください。
  • マルチサーバー構成:MigrationToolはISPConfigのマルチサーバー構成を移行することができます。このような移行のターゲットは、別のマルチサーバー構成であるか、マルチサーバー構成を新しい単一サーバー構成に統合することができます。MigrationToolは、マルチサーバー構成の各(古い)ノードで順番に実行する必要があります。ターゲットのISPConfigシステムは、新しいマルチサーバー構成のマスターノードであるか(その場合、MigrationToolはデータを移行する新しいノードを選択できるダイアログを表示します)、または新しい単一サーバーです。

ISPConfigでリモートユーザーを作成する

ターゲットISPConfigサーバーにリモートユーザーが必要です。

システム -> リモートユーザーに移動します。

ISPConfigでリモートユーザーを追加

新しいユーザーを追加ボタンをクリックします。

リモートユーザーのユーザー名とパスワードを入力します。例:「remoter」とし、すべてのチェックボックスをチェックしたことを確認します。その後、「保存」をクリックします。

リモートユーザーの権限

ターゲットサーバーでISPConfigバージョン3.1.11を使用している場合は、rootユーザーとしてファイル/usr/local/ispconfig/security/security_settings.iniを編集します:

nano /usr/local/ispconfig/security/security_settings.ini

そして、ids_anon_enabledとids_user_enabledの値を’yes’から’no’に変更します。

....  
[ids]  
ids_anon_enabled=no  
ids_anon_log_level=1  
ids_anon_warn_level=5  
ids_anon_block_level=20  
ids_user_enabled=no  
ids_user_log_level=1  
ids_user_warn_level=10  
ids_user_block_level=25  
ids_admin_enabled=no  
ids_admin_log_level=1  
ids_admin_warn_level=5  
ids_admin_block_level=100  
sql_scan_enabled=yes  
sql_scan_action=warn  
apache_directives_scan_enabled=yes  
ginx_directives_scan_enabled=yes  
....

移行が完了したら、IDSは再度有効にできます。ISPConfig 3.1.12以降を使用している場合は、この変更は必要ありません。

次に、ターゲットサーバーにphp-soapモジュールがインストールされているか確認してください。インストールされていない場合は、今すぐインストールしてください。DebianおよびUbuntuでは、aptを使用してPHP Soapモジュールをインストールできます:

apt-get install php-soap

もう一つの前提条件は、ターゲットサーバーとソースサーバーの両方にrsyncがインストールされている必要があることです。例えば、次のコマンドで確認してください:

rsync --version

両方のノードでrsyncがインストールされているか確認します。インストールされていない場合は、オペレーティングシステムのrsyncパッケージをインストールしてください。例えば、DebianおよびUbuntuでは:

apt-get install rsync

CentOSでは:

yum install rsync

ターゲットサーバーには、ISPConfig自動インストーラーによって作成された/etc/ssh/sshd_config.d/custom.confというファイルが存在する場合があり、これがMigration Toolの動作を妨げる可能性があります。このファイルが存在する場合は削除する必要があります。ターゲットサーバーでrootユーザーとして次のコマンドを実行してファイルを削除します:

rm /etc/ssh/sshd_config.d/custom.conf

以降のすべての手順は、特に指示がない限り、ソースサーバーで行われます。

Migration Toolをダウンロードして抽出する

cd /root  
mkdir migration  
cd migration  
wget https://www.ispconfig.org/downloads/ispconfig_migration_toolkit-latest.zip  
unzip ispconfig_migration_toolkit-latest.zip  
mv ispconfig_migration_toolkit/ispc3-migration-tool-*.tar.gz /root/migration/migtool.tar.gz  
tar xzf migtool.tar.gz  
rm -f migtool.tar.gz

パスワードなしログインの準備(オプション)

移行中、ソースからターゲットサーバーへの設定とデータを転送するためにSSH接続が必要です。このため、ソースサーバーはターゲットにパスワードなしで接続できる必要があります。

次のいずれかを行うことができます:

  • 自分でパスワードなしログインを設定する(ソースの公開鍵をターゲットのrootのauthorized_keysファイルに追加)。
  • または、ターゲットへのrootアクセスをパスワードで許可する(一時的に)。その場合、Migration Toolはssh-keygenとssh-copy-idを呼び出します。これらは直接的なシステムコールであるため、このステップでターゲットのssh rootパスワードを求められた場合、入力はMigration Toolによって読み取られません。これはssh-copy-idシステムコマンドによる直接的なプロンプトです。

移行を実行する(ドライラン)

./migrate

特定のPHPバージョン(例:Ubuntu 22.04でPHP 7.4)でツールを実行したい場合は、次のコマンドを使用します:

PHP=/usr/bin/php7.4 ./migrate

上記のコマンドの結果は次のようになります:

ISPConfig3 Migration Tool V2 Version 2.0.0へようこそ。

このツールはソースサーバーの何も変更しませんが、移行前にデータのバックアップを必ず行ってください!

このツールを使用するには、いくつかの前提条件を設定する必要があります:
 * ターゲットISPConfig3システムでリモートユーザーを作成し(システム -> リモートユーザー)、すべての権利を付与すること
 * この(ソースシステム)がターゲットシステムのリモートAPIに到達できることを確認すること

* 保証の免責事項 *
ISPConfigは、法律で許可される限り、明示または暗示を問わず、すべての保証を否認します。特に、所有権、非侵害、統合、商品性、特定の目的への適合性に関する暗示的な保証を含みます。
このソフトウェアの使用を続けることにより、あなたはこれに同意します。

まず最も重要な質問:
実際の移行を行いますか、それともドライランを行いますか?(dry、migrate):dry

最初にドライランモードで実行したいので、ここでdryと入力します。

次のモジュールが利用可能です:
        1. ConfixxからISPConfig 3への移行ツール(confixx)
        2. Plesk(10.5 - 17.5)からISPConfig 3への移行ツール(plesk)
        3. ISPConfig 2から3への移行ツール(ispconfig2)
        4. ISPConfig 3からISPConfig 3への移行ツール(ispconfig3)

どれがあなたのソースシステムに一致しますか?(confixx、plesk、ispconfig2、ispconfig3):ispconfig3

Migration Toolは、ソースサーバーで使用しているコントロールパネルを知る必要があります。ソースサーバーで必要なモジュールを認識しようとするので、通常はENTERを押すだけで済みます。

この(ソース)サーバーの外向き接続に使用されるIPを入力してください[192.168.10.10]:123.123.123.123

Migration Toolは、ソースサーバーが他のサーバーに接続する際に見えるIPアドレスを知る必要があります。ツールはIPアドレスを推測しようとしますが、プライベートネットワークを使用している場合は値を変更する必要があるかもしれません。

ターゲットISPConfig3システムのリモートユーザーの名前[]:remoter
このリモートユーザーのパスワード[]:yourremotepassword
リモートシステムのURL(例:https://yourdomain.com:8080/remote/)[]:https://www.example.com:8080/remote/
あなたはリモートユーザー'remoter'とパスワード'yourremotepassword'を与えました。
そして、私は'https://www.example.com:8080/remote/'に接続します。
これは正しいですか?(y、n):y

ターゲットで作成したリモートユーザーのデータをMigration Toolに提供し、「y」で入力を確認します。Migration Toolは、ターゲットシステムのリモートAPIに接続しようとします。

ISPConfig3ターゲットシステムの設定にいくつかの変更を行う必要があります。
        1.) 必要に応じてドメインモジュールを有効にする
        2.) クライアントプレフィックスを削除する(終了時に自動的に元に戻されます)
        3.) 必要に応じてメールアカウントのログインを有効にする

MySQL接続をテストしています... OK

ターゲットサーバーの主な公開(!) IPはwww.example.comですか?[123.123.123.123]:[ENTER]

Migration Toolは、ターゲットのISPConfig設定を変更し(これらの変更は、ドライランモードで実行している場合は行われません)、MySQLサーバーへの接続をテストします。ツールは、いくつかのシステムファイルを見てMySQLの認証情報を推測しようとしますが、最終的にはMySQLのrootパスワードを求められます。

次に、ターゲットサーバーの公開IPを提供する必要があります。これはDNSから事前に取得されますが、特にソースとターゲットで同じホスト名を使用している場合は調整が必要です。

同じ名前の既存のエントリを上書き/更新しますか?(y、n):y
同じ名前で上書きされないエントリ名を設定できます。
これは、複数のサーバーのデータをマルチサーバーインストールにインポートする予定がある場合に使用します。
このツールが既に存在する名前を見つけた場合、ソースデータでデータを更新します!
このツールが上書きしないようにマークされた名前を見つけた場合、それは
         - この名前に_2、_3などを追加して新しいエントリを作成するか、または
         - --server-prefix引数で指定されたサーバープレフィックスを追加します

Migration Toolは、複数のサーバーを1つのターゲットに統合することを許可します。この場合、ソースサーバーに競合するユーザー名があるかもしれません。例えば、「testdatabase」という名前のデータベースが2つある場合です。この質問に「y」と答えると、2番目のデータベースが最初のものを置き換えます。「n」と答えると、2番目のデータベースの名前が「testdatabase_2」に変更されます。

単一サーバー移行を行う場合は、「y」と答えることを忘れないでください。そうしないと、同じソースで移行ツールを複数回実行した場合に重複が作成されます。

現在、0のFTPユーザー名がマークされています:

リストにさらに名前を追加できます。1つずつ入力するか、カンマ区切りのリストを提供してください。
リストから1つ以上の名前を削除するには、入力の先頭に/DELETEを追加します。
リストをすべてクリアするには、/CLEARと入力します。
空の入力は次のステップに進みます。
あなたの選択:[ENTER]

Migration Toolは、FTP、データベース、クライアントなどのユーザー名を「予約済み」としてマークすることを提案します。これは、上記のセクションで述べたように上書きされないことを意味します。通常は空白のままにしますが、場合によっては「admin」や「administrator」などのユーザー名がインポートされるのを防ぐことができます。したがって、ここに入力すると、インポートされた名前が「admin_2」などに変更されます。

この質問は、異なるサービスタイプ(FTP、データベース、クライアント、メールユーザー)について繰り返されます。

あなたのSOURCE ISPConfig 3インストールのデータベース名は何ですか?[dbispconfig]:[ENTER]

ツールは、コントロールパネルのデータを保持しているソースサーバーのデータベース名を尋ねています。認識されたデータベースが正しいか確認し、必要に応じて変更してください。

一部のサービスのみを移行しますか、それともすべてを移行しますか?
有効なサービスは:client、web、mail、ftp、database、cronjob、dns、billing
1つ以上のサービスを入力するか、すべての場合は空白のままにしてください:[ENTER]

新しいMigration Toolは、サービスのサブセットのみを移行できるようになりました。例えば、メールアカウントのみを移行し、ウェブなどをスキップすることができます。

すべてのサービスを移行したいので、入力を空白のままにしてENTERを押します。

ウェブデータをコピーするには、ターゲットウェブサーバーへのSSHアクセスが必要です。
ターゲットで/etc/ssh/sshd_configを開き、PermitRootLoginをyesまたはwithout-passwordに設定してください。
移行が完了したら、これを元に戻すことができます。

SSHで接続するためのターゲットウェブサーバーのIPは何ですか?[123.123.123.123]:[ENTER]
SSHポートは何ですか?[22]:[ENTER]

ウェブ、メール、データベースデータをコピーするために、Migration ToolはターゲットサーバーへのパスワードなしSSHアクセスを必要とします。ソースが接続するIPとポートを提供する必要があります。まだパスワードなしアクセスを設定していない場合は、ターゲットサーバーのroot SSHパスワードを求められます。

MySQL接続をテストしています... OK

API呼び出しを開始しています。
[50/74]  mydomain.comを処理中

ツールは、ターゲットISPConfig上のすべてのエントリを作成/更新し始めます。ドライランではもちろん何も変更したりコピーしたりしません。API呼び出しが完了するまで待ちます。

エントリの処理が完了しました。                                                                                               
=============
移行ツールの実行が完了しました。

移行ツールがエラーなしでドライランを完了したら、実際の移行を続行できます。

移行を実行する

./migrate

特定のPHPバージョン(例:Ubuntu 22.04でPHP 7.4)でツールを実行したい場合は、次のコマンドを使用します:

PHP=/usr/bin/php7.4 ./migrate

上記のコマンドの結果は次のようになります:

ISPConfig3 Migration Tool V2 Version 2.0.0rc2へようこそ。

このツールはソースサーバーの何も変更しませんが、移行前にデータのバックアップを必ず行ってください!

このツールを使用するには、いくつかの前提条件を設定する必要があります:
 * ターゲットISPConfig3システムでリモートユーザーを作成し(システム -> リモートユーザー)、すべての権利を付与すること
 * この(ソースシステム)がターゲットシステムのリモートAPIに到達できることを確認すること

* 保証の免責事項 *
ISPConfigは、法律で許可される限り、明示または暗示を問わず、すべての保証を否認します。特に、所有権、非侵害、統合、商品性、特定の目的への適合性に関する暗示的な保証を含みます。
このソフトウェアの使用を続けることにより、あなたはこれに同意します。

まず最も重要な質問:
実際の移行を行いますか、それともドライランを行いますか?(dry、migrate):migrate

今回は「migrate」と答え、ドライラン中と同様に質問に答えます。ツールはドライランからの入力を事前に入力しているため、ほとんどENTERを押すだけで済みます。

MySQL接続をテストしています... OK
Let'sEncryptファイルをターゲットにコピーしています... OK

API呼び出しを開始しています。
[9/11]  [email protected]を処理中(web213p41)

今回は、実際のAPI呼び出しが行われるため、プロセスには少し時間がかかります。プロセスが完了するまで待ちます。

エントリの処理が完了しました。                                                                                               
ターゲットISPConfigジョブキューには35のエントリが残っています。待機中...

すべてのパスがターゲットで作成されることを確認するために、Migration ToolはISPConfigがすべてのリクエストを処理するのを待ちます。

[INFO] ターゲットISPConfigジョブキューが完了しました。続行します。
[19/935] /var/www/clients/client26/web21/webを/var/www/clients/client1424/web21/に同期中

ツールは、すべてのパス(ウェブ、メール)を同期し、ターゲットサーバーにデータベースの内容をコピーします。このプロセスは、データの量によっては時間がかかる場合があります。

実際のデータ同期を別のステップで行いたい場合は、./migrate –no-syncjobsを実行して、./migrateを実行する代わりにスキップできます。

最終ステップ

Migration Toolは、最初に変更した値(例:クライアントプレフィックス)をリセットします。

ソースコントロールパネルに応じて、Migration ToolはターゲットISPConfigでドメインモジュールを有効にしました。これは、ドメインがウェブサイト、メールドメインなどに使用されるには、最初に管理者によって割り当てられる必要があることを意味します(クライアント -> ドメインを使用)。ドメインモジュールを使用したくない場合は、システム -> インターフェース設定 -> タブ「ドメイン」で無効にできます。

最後に、作成されたmigrate.logを確認し、[ERROR]または[WARNING]マーカーのエントリを探します。これらは移行プロセス中の問題を示します。

ターゲットを再同期する

アカウントと設定を再同期する

移行後にソースコントロールパネルで変更があった場合は、再度実行するだけで済みます。Migration Toolは、ソースサーバーからの新しい設定で全エントリを更新します。そして、その間に作成された新しいエントリを追加します。ソースで削除されたエントリは、ターゲットでは削除されません!。

データを再同期する

ウェブ、メール、データベースのデータを再同期したい場合は、./migrate –syncjobsを実行できます。これにより、すべての移行ステップがスキップされ、ウェブサイト、データベース、メールの同期のみが実行されます。

特定のサービスのみを再同期することもできます。例えば、./migrate –syncjobs –only=database。これにより、ウェブデータとメールの再同期がスキップされます。

高度なオプション

単一のウェブサイト、メールドメイン、クライアントなどを移行するための高度なオプションのリストを取得するには、–helpオプションを使用します。

./migrate --help

現在のオプションは次のとおりです:

Usage:  migrate 
        List of options:
        --help
                        この画面を表示
        --server-prefix=
                競合するユーザー名に指定されたプレフィックスを使用します。さらに
                競合が発生した場合は、ユーザー名に_2 _3 _4 ...を追加します。
        --source-temp-dir=
                ソースサーバーでのアクションのために/tmp以外の一時ディレクトリを設定します。
        --target-temp-dir=
                ターゲットサーバーでのアクションのために/tmp以外の一時ディレクトリを設定します。
        --syncjobs
                移行プロセスを実行せず、すべてのデータ(ウェブファイル、データベースの内容)を再同期します。
        --no-syncjobs
                移行のみを行い、ターゲットにデータファイルやデータベースの内容をコピーしません。
        --ignore-sync-errors
                エラーが発生した場合、syncjobs処理を中止しません。これは、例えば
                chattrのようなコマンドがターゲットサーバーで正しく動作しない場合に役立ちます。
        --confixx-no-domain
                confixx移行(ソースサーバー)で、クライアントのすべての他のドメインをエイリアスドメインとして含むダミーウェブサイトを作成しません。
                Confixxは、ドメインを保存および管理するための異なるアプローチを使用しているため、「メイン」ドメインはなく、代わりにすべてのドメインが割り当てられたホスティングがあります。
                クライアントが単一のドメインしか持っていないconfixxサーバーでは、単一のエイリアスを持つダミーウェブサイトを作成するのではなく、ドメインをウェブサイトとして使用する方が良い場合があります。
        --only=client|web|mail|ftp|database|cronjob|dns|billing
                指定されたサービスのみを移行し、他のサービスをスキップします。複数回指定できます。
        --exclude=client|web|mail|ftp|database|cronjob|dns|billing
                すべてのサービスを移行しますが、指定されたサービスは除外します。複数回指定できます。
        --only=/--exclude= on --syncjobs実行
                再同期を単一サービスに制限する場合、ウェブ、メール、データベース、システムのみが有効です。
        --only-client=
                単一のクライアントとそのデータ(ウェブ、メールなど)を移行します。これは、--only=/--exclude=と組み合わせて使用することで、移行するデータをさらに制限できます。
        --only-web=
                指定されたドメインとその割り当てられたデータベース、ftpアカウントなどのみを移行します。
                これは、他の--only-x/--exclude-xおよび--only=/--exclude=オプションと組み合わせて、移行するデータを指定するために使用できます。
        --only-mail=
                指定されたメールドメインとその割り当てられたメールアカウント、スパムフィルターなどのみを移行します。
                これは、他の--only-x/--exclude-xおよび--only=/--exclude=オプションと組み合わせて、移行するデータを指定するために使用できます。
        --only-database=
                指定されたデータベースとその親ウェブサイトのみを移行します。
                これは、他の--only-x/--exclude-xおよび--only=/--exclude=オプションと組み合わせて、移行するデータを指定するために使用できます。
        --only-dns=
                指定されたDNSゾーンとその割り当てられたDNSレコードのみを移行します。

上記のオプションは、--exclude-client、--exclude-web、--exclude-mail、--exclude-database、--exclude-dnsを使用して反対の方法でも使用できます。

WARNING! クライアントは常に移行する必要があります。そうしないと、すべての移行データがクライアントではなく管理者ユーザーに割り当てられます!
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。