PowerDNS est une puissante solution de serveur de noms de domaine (DNS) largement utilisée pour sa flexibilité, sa gestion simplifiée des zones DNS, et sa capacité à s’interfacer avec des bases de données. PowerDNS-Admin, quant à lui, offre une interface web conviviale pour la gestion de PowerDNS. Ce guide détaillé vous montrera comment installer PowerDNS et PowerDNS-Admin sur Ubuntu 22.04, rendant ces puissants outils accessibles même pour les débutants.

Installation de PowerDNS

Prérequis

  • Ubuntu 22.04 LTS
  • Accès sudo ou root

Étape 1 : Mise à jour du système

Commencez par mettre à jour votre système pour vous assurer que tous vos paquets sont à jour :

sudo apt update && sudo apt upgrade -y

Étape 2 : Installation de PowerDNS

PowerDNS utilise MySQL ou PostgreSQL comme base de données pour stocker les enregistrements DNS. Ici, nous utiliserons MySQL.

  1. Installation de MySQL :
sudo apt install mysql-server -y
  1. Sécurisation de MySQL (facultatif mais recommandé) :
sudo mysql_secure_installation
  1. Création de la base de données PowerDNS :

Connectez-vous à MySQL :

sudo mysql -u root -p

Puis, créez une base de données et un utilisateur pour PowerDNS :

CREATE DATABASE powerdns;
GRANT ALL PRIVILEGES ON powerdns.* TO 'powerdns'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
  1. Installation de PowerDNS :
sudo apt install pdns-server pdns-backend-mysql -y
  1. Configuration de PowerDNS :

Éditez le fichier de configuration de PowerDNS :

sudo nano /etc/powerdns/pdns.d/pdns.local.gmysql.conf

Ajoutez-y les informations de connexion à la base de données :

launch=gmysql
gmysql-host=localhost
gmysql-dbname=powerdns
gmysql-user=powerdns
gmysql-password=password

Redémarrez PowerDNS :

sudo systemctl restart pdns

Installation de PowerDNS-Admin

PowerDNS-Admin est un outil d’administration web pour PowerDNS.

Prérequis

  • Git
  • Python 3 et pip

Étape 1 : Téléchargement de PowerDNS-Admin

Clonez le dépôt PowerDNS-Admin :

cd /opt
sudo git clone https://github.com/ngoduykhanh/PowerDNS-Admin.git
cd PowerDNS-Admin

Étape 2 : Configuration de l’environnement

Installez les prérequis Python :

sudo apt install python3-venv libmysqlclient-dev libssl-dev python3-dev -y
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Étape 3 : Configuration de PowerDNS-Admin

Copiez le fichier de configuration exemple et éditez-le :

cp configs/development.py.example configs/development.py
nano configs/development.py

Assurez-vous de configurer la base de données SQLALCHEMY_DATABASE_URI pour utiliser la base de données PowerDNS.

Étape 4 : Initialisation de la base de données

flask db upgrade

Étape 5 : Exécution de PowerDNS-Admin

Exécutez PowerDNS-Admin :

flask run --host=0.0.0.0

PowerDNS-Admin est maintenant accessible via http://votre_adresse_ip:5000.

Après avoir configuré votre serveur DNS avec PowerDNS et PowerDNS-Admin, envisagez d’utiliser les services Linux SSD VPS de Shape.host pour héberger votre infrastructure DNS. Shape.host offre des solutions Cloud VPS performantes et fiables, parfaites pour gérer des serveurs DNS exigeants, avec un support technique expert et une infrastructure cloud de pointe pour assurer une disponibilité et une performance optimales de votre serveur DNS.