GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Installer MyDNS-NG &MyDNSConfig 3 sur Debian Lenny

Installer MyDNS-NG &MyDNSConfig 3 sur Debian Lenny

Dans ce tutoriel, je vais décrire comment installer et configurer MyDNS-NG et MyDNSConfig 3 sur Debian Lenny. MyDNS-NG (basé sur MyDNS écrit à l'origine par Don Moore -http://mydns.bboy.net/) est un serveur DNS qui utilise une base de données MySQL comme backend au lieu de fichiers de configuration comme, par exemple, Bind ou djbdns. L'avantage est que MyDNS lit simplement les enregistrements de la base de données, et il n'a pas besoin d'être redémarré/rechargé lorsque les enregistrements DNS changent ou que des zones sont créées/modifiées/supprimées. Un serveur de noms secondaire peut être facilement configuré en installant une deuxième instance de MyDNS qui accède à la même base de données ou, pour être plus redondant, utilise les fonctionnalités de réplication maître/esclave de MySQL pour répliquer les données sur le serveur de noms secondaire.

MyDNSConfig est une interface Web facile à utiliser pour MyDNS-NG. MyDNSConfig peut créer tous les types d'enregistrements DNS disponibles dans MyDNS et ajoute des fonctionnalités telles que la gestion des utilisateurs et les privilèges d'accès.

Je n'émets aucune garantie que cela fonctionnera pour vous !

1 Remarque préliminaire

Dans ce tutoriel, j'utilise le nom d'hôte server1.example.com avec l'adresse IP 192.168.0.100. Ces paramètres peuvent différer pour vous, vous devez donc les remplacer le cas échéant.

2 Installer MySQL

Nous pouvons installer MySQL comme suit :

aptitude install mysql-client mysql-server

Les questions suivantes vous seront posées :

Nouveau mot de passe pour l'utilisateur "root" MySQL :<-- yourrootsqlpassword
Répétez le mot de passe pour l'utilisateur "root" MySQL :<-- yourrootsqlpassword

3 Installer Apache2, PHP, phpMyAdmin

MyDNSConfig a besoin d'un serveur Web prenant en charge PHP; donc j'installe Apache2. J'installe également phpMyAdmin pour pouvoir accéder ultérieurement à la base de données via une interface Web (bien que cela soit facultatif) :

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick vlogger

Vous verrez la question suivante :

Serveur Web à reconfigurer automatiquement :<-- apache2

Exécutez ensuite la commande suivante pour activer les modules Apache suexec, rewrite, ssl, actions et include :

a2enmod suexec rewrite ssl actions include

Sécurisez phpMyAdmin en supprimant le fichier /etc/phpmyadmin/htpasswd.setup...

rm -f /etc/phpmyadmin/htpasswd.setup

... et supprimez ou commentez la section suivante dans /etc/phpmyadmin/apache.conf :

vi /etc/phpmyadmin/apache.conf
[...]
#       # Authorize for setup
#       <Files setup.php>
#           # For Apache 1.3 and 2.0
#           <IfModule mod_auth.c>
#               AuthType Basic
#               AuthName "phpMyAdmin Setup"
#               AuthUserFile /etc/phpmyadmin/htpasswd.setup
#           </IfModule>
#           # For Apache 2.2
#           <IfModule mod_authn_file.c>
#               AuthType Basic
#               AuthName "phpMyAdmin Setup"
#               AuthUserFile /etc/phpmyadmin/htpasswd.setup
#           </IfModule>
#           Require valid-user
#       </Files>
[...]

Redémarrez ensuite Apache :

/etc/init.d/apache2 restart

Vous pouvez maintenant accéder à phpMyAdmin sous http://server1.example.com/phpmyadmin/ ou http://192.168.0.100/phpmyadmin/.

4 Installer MyDNS

Avant d'installer MyDNS, nous devons installer quelques prérequis :

aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

MyDNS n'est pas disponible dans les dépôts Debian Lenny, nous devons donc le construire nous-mêmes comme suit :

cd /tmp
wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz
tar xvfz mydns-1.2.8.27.tar.gz
cd mydns-1.2.8
./configure
make
make install

Ensuite, nous créons le script de démarrage/arrêt pour MyDNS :

vi /etc/init.d/mydns
#! /bin/sh
#
# mydns         Start the MyDNS server
#
# Author:       Philipp Kern <[email protected]>.
#               Based upon skeleton 1.9.4 by Miquel van Smoorenburg
#               <[email protected]> and Ian Murdock <[email protected]>.
#

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/mydns
NAME=mydns
DESC="DNS server"

SCRIPTNAME=/etc/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

case "$1" in
  start)
        echo -n "Starting $DESC: $NAME"
        start-stop-daemon --start --quiet \
                --exec $DAEMON -- -b
        echo "."
        ;;
  stop)
        echo -n "Stopping $DESC: $NAME"
        start-stop-daemon --stop --oknodo --quiet \
                --exec $DAEMON
        echo "."
        ;;
  reload|force-reload)
        echo -n "Reloading $DESC configuration..."
        start-stop-daemon --stop --signal HUP --quiet \
                --exec $DAEMON
        echo "done."
        ;;
  restart)
        echo -n "Restarting $DESC: $NAME"
        start-stop-daemon --stop --quiet --oknodo \
                --exec $DAEMON
        sleep 1
        start-stop-daemon --start --quiet \
                --exec $DAEMON -- -b
        echo "."
        ;;
  *)
        echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
        exit 1
        ;;
esac

exit 0

Ensuite, nous rendons le script exécutable et créons les liens de démarrage du système :

chmod +x /etc/init.d/mydns
update-rc.d mydns defaults

Installer MyDNS-NG &MyDNSConfig 3 sur Debian Lenny - Page 2

5 Installation de MyDNSConfig 3

Nous pouvons installer MyDNSConfig 3 comme suit :

cd /tmp
wget http://downloads.sourceforge.net/mydnsconfig/MyDNSConfig-3.0.1.tar.gz?use_mirror=
tar xvfz MyDNSConfig-3.0.1.tar.gz
cd mydnsconfig/install/
php -q install.php

Cela lancera le programme d'installation de MyDNSConfig 3 :

serveur1 :/tmp/mydnsconfig/install# php -q install.php


----------------------- -------------------------------------------------- -------
 __  __       _____  _   _  _____  _____             __ _
| \/  | | __ \| \ | |/ ____|/ ____| / _(_)
| \  / |_   _| | | | \| | (___ | |     ___  _ __ | |_ _  __ _
| |\/| | | | | |  | | . ` |\___ \| |    / _ \| '_ \|  _| |/ _ ` |
| |  | | |_| | |__| | |\  |____) | |___| (_) | | | | | | | (_| |
|_|  |_|\__, |_____/|_| \_|_____/ \_____\___/|_| |_|_| |_|\__, |
                                             __/ |
        |___/                                                                    __/ |
         |___/                                             - ---------- br />            -------------------------------------------------- --


>  Configuration initiale

Système d'exploitation  : Debian Lenny/Sid ou compatible 

    Suivant seront quelques questions pour la configuration principale donc être prudent.
    Les valeurs par défaut sont entre [crochets] et peuvent être acceptées avec .
    Appuyez sur "quitter" (sans les guillemets) pour arrêter le programme d'installation.


Sélection langue (en,de) [en] : <-- ENTER

Mode d'installation (standard,expert) [standard] : <-- ENTER

Nom d'hôte complet (FQDN) du serveur, par exemple server1.domain.tld  [server1.example.com] : <-- ENTRER

Nom d'hôte du serveur MySQL [localhost] : <-- ENTRER

Nom d'utilisateur racine MySQL [racine] : <-- ENTER

MySQL roo t password [] : <-- votremotdepasseqlracine

Base de données MySQL pour créer [dbmydnsconfig] : <-- ENTER

MySQL charset [utf8] : <-- ENTER

Configuration MyDNS
Configuration Apache
Configuration Firewall
Installation MyDNSConfig
MyDNSConfig Port [8080] : <-- ENTER

Installation Crontab
pas crontab pour root
Redémarrage des services ...
Redémarrage du serveur Web  : apache2 ... en attente .
Installation terminée.
server1 :/tmp/mydnsconfig/install#

Le programme d'installation configure automatiquement tous les services sous-jacents, aucune configuration manuelle n'est donc nécessaire.

Ensuite, vous pouvez accéder à MyDNSConfig 3 sous http://server1.example.com:8080/ ou http://192.168.0.100:8080/. Connectez-vous avec le nom d'utilisateur admin et le mot de passe admin (vous devez changer le mot de passe par défaut après votre première connexion) :

6 Utilisation de MyDNSConfig 3

L'onglet DNS est la partie la plus importante de MyDNSConfig car c'est là que vous pouvez créer des zones et des enregistrements, je vais donc me concentrer sur cet onglet.

Pour créer une nouvelle zone, cliquez sur le bouton Ajouter une nouvelle zone DNS (SOA) :

Vous pouvez maintenant remplir les détails de la zone, par ex. le nom de domaine, le serveur de noms principal et l'adresse e-mail de l'administrateur de la zone (veuillez noter que vous devez remplacer le signe @ par un point !) ; ces trois détails doivent se terminer par un point ! Vous pouvez laisser les autres détails tels quels. Vous pouvez maintenant enregistrer la zone ou accéder directement à l'onglet Enregistrements (cela enregistrera automatiquement les détails de la zone) :

Dans l'onglet enregistrements, vous pouvez désormais créer toutes sortes d'enregistrements DNS (A, CNAME, MX, NS, TXT, etc.) - cliquez simplement sur le bouton approprié :

Par exemple, voici le formulaire de création d'enregistrements NS (veuillez garder à l'esprit que si vous écrivez des noms d'hôte complets, ils doivent se terminer par un point !) :

Voici l'aperçu - comme vous le voyez, j'ai créé d'autres enregistrements :

7 Mise à jour de MyDNSConfig 3

Chaque fois qu'il y a une nouvelle version de MyDNSConfig 3, vous pouvez mettre à jour votre installation MyDNSConfig 3 comme suit :

mydnsconfig_update.sh

Cela fera apparaître l'assistant de mise à jour. VEUILLEZ NOTER :vous pouvez effectuer une mise à niveau vers la dernière version stable et vers la version svn. Il est fortement recommandé de mettre à niveau vers la dernière version stable car la version svn est utilisée pour le développement et peut contenir des bogues. VOUS AVEZ ÉTÉ AVERTI !!!

8 Mise à niveau de MyDNSConfig 1.x vers MyDNSConfig 3.x

Il n'y a pas de chemin de mise à niveau direct de MyDNSConfig 1.x vers MyDNSConfig 3.x, mais il est facile d'importer les enregistrements DNS de MyDNSConfig 1.x vers MyDNSConfig 3.x.

Dans ce chapitre, je suppose que votre ancienne MyDNSConfig 1.x utilise la table de base de données mydns, et que votre nouvelle installation MyDNSConfig 3 utilise la base de données dbmydnsconfig.

Installez d'abord MyDNSConfig 3 comme suit :

cd /tmp
wget http://downloads.sourceforge.net/mydnsconfig/MyDNSConfig-3.0.1.tar.gz?use_mirror=
tar xvfz MyDNSConfig-3.0.1.tar.gz
cd mydnsconfig/install/
php -q install.php

Suivez l'assistant d'installation. Une fois l'installation terminée (et AVANT de créer des enregistrements dans l'interface Web MyDNSConfig 3 !!!), ouvrez phpMyAdmin ou un shell MySQL et exécutez les requêtes MySQL suivantes (en tant qu'utilisateur root MySQL) pour importer les enregistrements DNS de votre ancien Installation de MyDNSConfig 1.x dans MyDNSConfig 3 (assurez-vous d'utiliser les noms de base de données corrects - vous devez remplacer `mydns` et `dbmydnsconfig` si vos noms de base de données diffèrent !) :

ALTER TABLE `mydns`.`rr` ADD `server_id` int(11) NOT NULL default '1',
ADD `active` enum('N','Y') NOT NULL default 'Y',
AJOUTER `timestamp` timestamp NOT NULL par défaut CURRENT_TIMESTAMP,
AJOUTER `serial` int(10) non signé par défaut NULL ;

MODIFIER `mydns`.`rr` MODIFIER `sys_userid` int(11) non signé PAS NULL APRÈS `id`,
MODIFIER `sys_groupid` int(11) non signé PAS NULL APRÈS `sys_userid`,
MODIFIER `sys_perm_user` varchar(5) NON NULL APRÈS `sys_groupid`,
MODIFIER `sys_perm_group` varchar(5) NON NULL APRÈS `sys_perm_user`,
MODIFIER `sys_perm_other` varchar(5) NON NULL APRÈS `sys_perm_group `,
MODIFY `server_id` int(11) NOT NULL default '1' AFTER `sys_perm_other`;

INSERT INTO `dbmydnsconfig`.`dns_rr`
SELECT *
FROM `mydns`.`rr`;

UPDATE `dbmydnsconfig`.`dns_rr` SET `sys_userid` =1,
`sys_groupid` =0,
`sys_perm_user` ='riud',
`sys_perm_group` ='riud',
`sys_perm_other` ='',
`server_id` =1;

ALTER TABLE `mydns`.`soa` ADD `server_id` int(11) NOT NULL default '1';

MODIFIER `mydns`.`soa` MODIFIER `sys_userid` int(11) unsigned NOT NULL APRES `id`,
MODIFIER `sys_groupid` int(11) unsigned NOT NULL APRES `sys_userid`,
MODIFIER `sys_perm_user` varchar(5) NON NULL APRÈS `sys_groupid`,
MODIFIER `sys_perm_group` varchar(5) NON NULL APRÈS `sys_perm_user`,
MODIFIER `sys_perm_other` varchar(5) NON NULL APRÈS `sys_perm_group `,
MODIFY `server_id` int(11) NOT NULL default '1' AFTER `sys_perm_other`;

INSERT INTO `dbmydnsconfig`.`dns_soa`
SELECT *
FROM `mydns`.`soa`;

MISE À JOUR `dbmydnsconfig`.`dns_soa` SET `sys_userid` =1,
`sys_groupid` =0,
`sys_perm_user` ='riud',
`sys_perm_group` ='riud',
`sys_perm_other` ='',
`server_id` =1;

Ensuite, vous pouvez accéder à MyDNSConfig 3 sur le port 8080 (par exemple http://server1.example.com:8080 ou http://192.168.0.100:8080); la connexion par défaut est le nom d'utilisateur admin et le mot de passe admin.

Veuillez noter que ces requêtes MySQL font que toutes les zones appartiennent à l'administrateur. Si vous avez des zones qui devraient appartenir à quelqu'un d'autre, créez un client pour chaque utilisateur dans MyDNSConfig 3 et accédez à l'onglet DNS et sélectionnez le bon client pour les zones.

  • MonDNS-NG :http://www.mydns.pl/
  • MyDNSConfig :http://www.mydnsconfig.org/
  • Debian :http://www.debian.org/

Panels
  1. Installer PHP 8 sur Debian 10

  2. Installer Gnome sur Debian 11

  3. Debian – Installer deux Glibc parallèlement dans Debian/ubuntu ?

  4. Debian – Clair de lune dans Debian ?

  5. Installer DirectAdmin sur Debian 10

Comment installer R sur Debian 9

Comment installer R sur Debian 10

Comment installer Debian 11

Installer PostgreSQL 13 sur Debian 11

Comment installer Go sur Debian 10

Installation d'OpenVZ + gestion des machines virtuelles via ISPConfig 3 (Debian 6.0)