Poweradmin 4.4 以降へのバージョンアップ
パッケージ版のインストール
※ 普通にインストールすると「SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘zt.is_default’ in ‘SELECT’」のエラーが出ました。
※ SELinux の設定やディレクトリを作成するために行います。
※ PowerDNS がインストールされている前提です。必要に応じて「pdns」や「pdns-recursor」をインストールして下さい。
sudo dnf install -y poweradmin
安定版の入手
以下のページの右端にある「Latest」から入手。
https://github.com/poweradmin/poweradmin

解凍してコピー
sudo cp -Rf poweradmin-4.4.3/* /usr/share/poweradmin/
設定ファイルの形式が変わりました
以下の内容を編集し、「/etc/poweradmin/settings.php」に保存して下さい。
※ この記事は Fedora 向けに書かれていますが、RHEL や CentOS系も同様だと思われます。
※ 途中で途切れているワケではありません。
<?php
/**
* Poweradmin Custom Settings Configuration File
*/
return [
/**
* Database Settings
*/
'database' => [
'host' => 'localhost',
'user' => 'poweradmin', // Database user created in step 3
'password' => 'secure_password',
'name' => 'powerdns', // PowerDNS database name
'type' => 'mysql', // Options: 'mysql', 'pgsql', 'sqlite'
// 'file' => '', // Only for SQLite, provide full path to database file
],
/**
* Security Settings
*/
'security' => [
'session_key' => 'generate_a_random_string_here', // IMPORTANT: Change this!
],
/**
* DNS Settings
*/
'dns' => [
'hostmaster' => 'hostmaster.example.com',
'ns1' => 'ns1.example.com',
'ns2' => 'ns2.example.com',
],
];
MariaDB / MySQL の実行
以下の SQL 文を管理者権限で実行して下さい。
-- Poweradmin schema update to 4.4.0
-- Add is_default flag to zone_templ for marking a system-wide default zone template
-- Only one template should carry is_default=1 at a time; uniqueness is enforced at the application layer
ALTER TABLE `zone_templ` ADD COLUMN `is_default` tinyint(1) NOT NULL DEFAULT 0;
-- OIDC/SAML external subject identifiers must match one-for-one. The default
-- utf8mb4_unicode_ci collation is case- and accent-insensitive, so distinct
-- subjects such as "victim" and "victím" compare as equal and resolve to the
-- same local account. Force a binary collation on the identity columns.
ALTER TABLE `oidc_user_links`
MODIFY COLUMN `provider_id` VARCHAR(50) NOT NULL COLLATE utf8mb4_bin,
MODIFY COLUMN `oidc_subject` VARCHAR(255) NOT NULL COLLATE utf8mb4_bin;
ALTER TABLE `saml_user_links`
MODIFY COLUMN `provider_id` VARCHAR(50) NOT NULL COLLATE utf8mb4_bin,
MODIFY COLUMN `saml_subject` VARCHAR(255) NOT NULL COLLATE utf8mb4_bin;
インストールディレクトリの削除
sudo rm -rf /usr/share/poweradmin/install
