Closed14
PowerDNS サーバ構築
PowerDNS PostgreSQL backend を建てる。
とりあえずPSQL鯖を建てて接続設定。
ユーザ名は pdns
、データベース名も pdns
にする。
基本は上のサイトを参考にして、認証方式と接続可能CIDRだけ変更した。
スキーマを流し込む。
PowerDNSのインストール。
sudo apt install pdns-server pdns-backend-pgsql
このままsudo systemctl start pdns
で起動するとエラーになるので、設定ファイルを修正する。
DB接続の設定
/etc/powerdns/pdns.conf
の一部を書き換える。
/etc/powerdns/pdns.conf
-launch=
+launch=gpgsql
+gpgsql-host=(DBのIPアドレス)
+gpgsql-port=(DBのポート)
+gpgsql-dbname=pdns
+gpgsql-user=pdns
+gpgsql-password=(DBパスワード)
ファイル置き場作成
sudo mkdir /var/lib/powerdns
sudo chown -R pdns:pdns /var/lib/powerdns
まだ起動できない。
journalctl -xeu pdns
で見ると、
unable to bind UDP socket to '0.0.0.0:53': Address already in use
どうやらUbuntuのsystemd-resolve
が既にポート53を占有しているらしい。
上の記事を参考にポートの占有を外した上でVMを再起動すると、PowerDNSが無事起動した。
導通テスト
dig a example.com @localhost
PowerAdmin インストール
とりあえず PHP を apt install
sudo apt install php-intl php-pgsql
git から PowerAdmin をダウンロード
git clone https://github.com/poweradmin/poweradmin.git
cd poweradmin
git checkout v3.5.1
Web サーバとして Nginx を入れる。
sudo apt install nginx
sudo ufw allow 'Nginx Full'
sudo apt install php-fpm
Nginxの設定修正
ここを参考にPHPを走らせられるようにする。cd ~
sudo cp -r powerdns/ /var/www/html/powerdns
sudo rm -rf /var/www/html/powerdns/.git
ブラウザーでサーバーにアクセスすると、こんな画面になるはず。
セットアップが終わったら install ディレクトリを消す。
ポートが空いてないミスがあったりするので。
sudo ufw allow 53
このスクラップは2023/10/06にクローズされました