4.1 異なるOS間を繋ぐSSH規律(暗号の壁の突破)
CentOS 6 の古い OpenSSH は、現代の Ubuntu 24.04 の厳格な規律では通信すら拒絶される。遷都を成功させるため、一時的に RSA 署名を許可せよ。これはデータ取得のための「妥協」ではなく、継承のための「道」である。
# Ubuntu 24.04 側で執行
echo "PubkeyAcceptedAlgorithms +ssh-rsa" | sudo tee -a /etc/ssh/sshd_config
echo "HostKeyAlgorithms +ssh-rsa" | sudo tee -a /etc/ssh/sshd_config
sudo systemctl restart ssh
これにより、旧サーバー(CentOS 6 / 192.168.200.228等)への SSH 接続が可能となる。
4.2 PostfixAdmin データの論理抽出
旧環境の mailbox, alias, domain テーブルこそが、我々が守るべき魂である。これらを SQL として抽出し、新世界(Ubuntu)へ送り出す。
# CentOS 6 側で執行
mysqldump -u root -p [POSTFIX_DB] domain alias mailbox --skip-extended-insert > /root/pfa_data.sql
scp /root/pfa_data.sql ymatsuki@192.168.200.227:/tmp/
4.3 【核心】最難関:SQLコンバート規律の執行
単なる流し込みは死を意味する。PFA と ISPConfig の構造的断絶を埋めるため、主が解析の末に導き出したこの変換 SQL こそが聖典の核心である。MD5-CRYPT 認証の維持と、ディレクトリパスの結合規律を徹底せよ。
-- 1. PFA データを一時的に dbispconfig へ展開
mysql dbispconfig < /tmp/pfa_data.sql
-- 2. ドメイン情報の移送
INSERT IGNORE INTO mail_domain (server_id, domain, active, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other)
SELECT 1, domain, 'y', 1, 1, 'riud', 'riud', '' FROM domain WHERE domain != 'ALL';
-- 3. 【最重要】メールユーザーの変換と MD5-CRYPT の継承
-- ユーザーがこれまでのパスワードでログインし続けられる唯一の方法
INSERT INTO mail_user (server_id, email, login, password, name, maildir, quota, homedir, uid, gid, postfix, access, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other)
SELECT 1, username, username, CONCAT('{MD5-CRYPT}', password), name, CONCAT('/home/vmail/', maildir), (quota * 1024 * 1024), '/home/vmail', 5000, 5000, 'y', 'y', 1, 1, 'riud', 'riud', '' FROM mailbox;
-- 4. エイリアス(転送設定)の継承
INSERT INTO mail_forwarding (server_id, source, destination, type, active, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other)
SELECT 1, address, goto, 'alias', 'y', 1, 1, 'riud', 'riud', '' FROM alias WHERE address != goto;
※ riud 権限をデータベースレベルで付与しない限り、ISPConfig UI 上での制御権は失われる。この 4 文字が自由の鍵である。