DNS Setup · 5 min read · Oct 04, 2025

MyDNS con MyDNSConfig Control Panel e DNSMasq su Ubuntu 6.10

MyDNS con MyDNSConfig Control Panel e DNSMasq su Ubuntu 6.10

Versione 1.0
Autore: Till Brehm

In questo tutorial descriverò come installare e configurare MyDNS e MyDNSConfig. MyDNS è un server DNS che utilizza un database MySQL come backend invece di file di configurazione come, ad esempio, Bind o djbdns. Il vantaggio è che MyDNS legge semplicemente i record dal database e non deve essere riavviato/ricaricato quando i record DNS cambiano o le zone vengono create/modificate/eliminate. Un nameserver secondario può essere facilmente configurato installando una seconda istanza di MyDNS che accede allo stesso database o, per essere più ridondante, utilizza le funzionalità di replica master/slave di MySQL per replicare i dati al nameserver secondario.

MyDNSConfig è un’interfaccia web facile da usare per MyDNS. MyDNSConfig può creare tutti i tipi di record DNS disponibili in MyDNS e aggiunge funzionalità come la gestione degli utenti e i privilegi di accesso.

Questa configurazione utilizza Ubuntu 6.10, ma dovrebbe funzionare anche con Debain Etch.

Installazione dei Prerequisiti

MyDNSConfig è un’interfaccia web per MyDNS scritta in PHP. Questo richiede un server web con PHP abilitato e il server di database MySQL. Se hai già installato Apache, PHP e MySQL, puoi saltare questo passaggio.

Installazione di MySQL e del server web Apache:

apt-get install libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl mysql-client mysql-client-5.0 mysql-server mysql-common apache2 phpmyadmin libapache2-mod-php5

Imposta la password root di MySQL:

mysqladmin -u root password yourrootsqlpassword

Sostituisci yourrootsqlpassword con una password a tua scelta.

Installazione di MyDNSConfig

Utilizzerò il pacchetto MyDNS dal repository universe di Ubuntu. Prima di procedere ai passaggi successivi, assicurati che il repository universe sia abilitato in /etc/apt/sources.list.

Accedi a MySQL e crea il database:

mysql -u root -p
CREATE DATABASE mydns;  
GRANT SELECT, INSERT, UPDATE, DELETE ON mydns.* TO 'mydns'@'localhost' IDENTIFIED BY 'mydnspassword';  
GRANT SELECT, INSERT, UPDATE, DELETE ON mydns.* TO 'mydns'@'localhost.localdomain' IDENTIFIED BY 'mydnspassword';  
FLUSH PRIVILEGES;  
quit;

Sostituisci la parola mydnspassword nei comandi sopra con una password a tua scelta.

Scarica MyDNSConfig:

cd /tmp  
wget http://mesh.dl.sourceforge.net/sourceforge/mydnsconfig/MyDNSConfig-1.1.0.tar.gz  
tar xvfz MyDNSConfig-1.1.0.tar.gz  
cd MyDNSConfig-1.1.0

Installa MyDNSConfig:

mkdir /usr/share/mydnsconfig  
cp -rf interface/* /usr/share/mydnsconfig/  
ln -s /usr/share/mydnsconfig/web/ /var/www/mydnsconfig

Installa il database SQL di MyDNSConfig:

mysql -u root -p mydns < install/mydnsconfig.sql

Il comando sopra richiede una password, inserisci la password dell’utente root di MySQL.

Modifica la configurazione di MyDNSConfig:

vi /usr/share/mydnsconfig/lib/config.inc.php

Il file dovrebbe apparire così:

Successivamente, rimuovi l’installer di MyDNSConfig dalla directory /tmp:

cd /tmp  
rm -rf MyDNSConfig-1.1.0/  
rm -f MyDNSConfig-1.1.0.tar.gz

Installazione di MyDNS

Ora installa il pacchetto MyDNS da Ubuntu. Poiché abbiamo già creato un database chiamato mydns che contiene tutte le tabelle necessarie per MyDNS, possiamo scegliere di non creare il database nella seguente configurazione.

apt-get install mydns-mysql
-> localhost  
-> mydns  
-> no  
-> mydns  
-> mydnspassword

Modifica il file di configurazione di MyDNS in modo che MyDNS ascolti anche su TCP e consenta i trasferimenti di zona:

vi /etc/mydns.conf
allow-tcp = yes
allow-axfr = yes

L’installazione di base di MyDNS e MyDNSConfig è ora completata. Per accedere all’interfaccia di MyDNSConfig, apri un browser web e inserisci il seguente URL:

http:///mydnsconfig/

Sostituisci con l’indirizzo IP del tuo server.

Il nome utente e la password predefiniti di MyDNSConfig sono:

Nome utente: admin
Password: admin

Non dimenticare di cambiare la password dopo il login sotto Sistema > Utenti.

Installazione di DNSMasq

MyDNS non contiene un risolutore DNS in grado di risolvere i record DNS di cui MyDNS non è autorevole. Nel passaggio successivo installerò e configurerò il risolutore DNS e la cache DNSMasq per agire come risolutore DNS locale e configurare MyDNS per utilizzare DNSMasq per risolvere domini esterni. Se non vuoi che il tuo server risolva domini esterni, puoi saltare questa parte.

Crea un risolutore DNS sull’IP 127.0.0.1:

apt-get install dnsmasq

Questo installa il pacchetto dnsmasq di Ubuntu. Ora dovremo modificare i file di configurazione di DNSMasq e MyDNS per garantire che entrambi i pacchetti non ascoltino sulla stessa porta su tutti gli indirizzi IP.

vi /etc/dnsmasq.conf
listen-address=127.0.0.1
no-dhcp-interface=
bind-interfaces

Ora modifica il file mydns.conf per configurare MyDNS in modo che non ascolti su 127.0.0.1:

vi /etc/mydns.conf
no-listen = 127.0.0.1
recursive = 127.0.0.1

Poi modifica /etc/resolv.conf:

vi /etc/resolv.conf

e aggiungi la seguente riga come prima riga in modo che la cache DNS di DNSMasq venga utilizzata per tutte le query DNS locali:

nameserver 127.0.0.1

Link

  • Tutorial MyDNSConfig 1.0 di Falko Timme
  • Homepage di MyDNS
  • Homepage di MyDNSConfig
  • Homepage di DNSMasq
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.