GNU/Linux >> Linux Esercitazione >  >> Panels >> Panels

MyDNS con MyDNSConfig Control Panel e DNSMasq su Ubuntu 6.10

MyDNS con MyDNSConfig Control Panel e DNSMasq su Ubuntu 6.10

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 vengono modificati o le zone vengono create/modificate/eliminate. Un server dei nomi secondario può essere facilmente configurato installando una seconda istanza di MyDNS che accede allo stesso database o, per essere più ridondanti, utilizza le funzionalità di replica master/slave MySQL per replicare i dati sul server dei nomi secondario.

MyDNSConfig è un'interfaccia web per MyDNS facile da usare. 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 basata sul Web per MyDNS scritta in PHP. Ciò 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 del server Web MySQL e 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 di root MySQL:

mysqladmin -u root password yourrootsqlpassword 

Sostituisci yourrootsqlpassword con una password a tua scelta.

Installazione di MyDNSConfig

Userò il pacchetto MyDNS dal repository dell'universo di Ubuntu. Prima di procedere con i passaggi successivi, assicurati che il repository dell'universo 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' IDENTIFICATO DA 'mydnspassword';
GRANT SELECT, INSERT, UPDATE, DELETE ON mydns.* A 'mydns'@'localhost.localdomain' IDENTIFICATO DA 'mydnspassword';
FLUSH PRIVILEGES;
chiudi;

Sostituisci la parola mydnspassword nei comandi precedenti 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 MyDNSConfig:

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

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

Modifica la configurazione di MyDNSConfig:

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

Il file dovrebbe assomigliare a questo:

<?php
/*
Copyright (c) 2005, Till Brehm, Falko Timme, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
    * Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
    * Neither the name of ISPConfig nor the names of its contributors
      may be used to endorse or promote products derived from this software without
      specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
ini_set('register_globals',0);
$conf["app_title"] = "MyDNSConfig";
$conf["app_version"] = "1.1.0";

$conf["rootpath"]            = "/usr/share/mydnsconfig";
$conf["fs_div"]                = "/"; // File system divider, \\ on windows and / on linux and unix
$conf["classpath"]            = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes";
$conf["temppath"]            = $conf["rootpath"].$conf["fs_div"]."temp";

/*
        Database Settings
*/

$conf["db_type"]        = 'mysql';
$conf["db_host"]        = 'localhost';
$conf["db_database"]        = 'mydns';
$conf["db_user"]        = 'mydns';
$conf["db_password"]        = 'mydnspassword';

/*
        External programs
*/
$conf["programs"]["wput"]    = $conf["rootpath"]."/tools/wput/wput";

/*
        Themes
*/
$conf["theme"]            = 'grey';
$conf["html_content_encoding"]    = 'text/html; charset=iso-8859-1';
$conf["logo"]             = 'themes/default/images/mydnsconfig_logo.gif';
/*
        Default Language
*/
$conf["language"]                = 'en';

/*
        Auto Load Modules
*/
$conf["start_db"]                = true;
$conf["start_session"]    = true;
/*
        DNS Settings
*/
$conf["auto_create_ptr"] = 1; // Automatically create PTR records?
$conf["default_ns"] = 'ns1.example.com.'; // must be set if $conf['auto_create_ptr'] is 1. Don't forget the trailing dot!
$conf["default_mbox"] = 'admin.example.com.'; // Admin email address. Must be set if $conf['auto_create_ptr'] is 1. Replace "@" with ".". Don't forget the trailing dot!
$conf["default_ttl"] = 86400;
$conf["default_refresh"] = 28800;
$conf["default_retry"] = 7200;
$conf["default_expire"] = 604800;
$conf["default_minimum_ttl"] = 86400;
?>

Successivamente, rimuovere il programma di installazione 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 configurazione seguente.

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 terminata. Per accedere all'interfaccia MyDNSConfig, apri un browser web e inserisci il seguente URL:

http://<your_ip_address>/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 modificare la password dopo l'accesso in Sistema> Utenti.

Installazione di DNSMasq

MyDNS non contiene un resolver DNS in grado di risolvere i record DNS per i quali MyDNS non è athoritive. Nel passaggio successivo installerò e configurerò il resolver DNS e inserirò nella cache DNSMasq per fungere da resolver DNS locale e configurerò MyDNS per utilizzare DNSMasq per risolvere i domini esterni. Se non vuoi che il tuo server risolva i domini esterni, puoi saltare questa parte.

Crea un risolutore DNS su IP 127.0.0.1:

apt-get install dnsmasq

Questo installa il pacchetto dnsmasq Ubuntu. Ora dovremo modificare i file di configurazione DNSMasq e MyDNS per assicurarci 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 su non ascolta su 127.0.0.1:

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

Quindi modifica /etc/resolv.conf:

vi /etc/resolv.conf

e aggiungi la seguente riga come prima riga in modo che DNSMasq DNS-Cache venga utilizzato anche per tutte le query DNS locali:

nameserver 127.0.0.1

  • Tutorial MyDNSConfig 1.0 di Falko Timme
  • Pagina iniziale di MyDNS
  • Pagina iniziale di MyDNSConfig
  • Pagina iniziale di DNSMasq

Panels
  1. Iniziare con Vesta Control Panel

  2. Installa gpEasy CMS con NGINX e PHP5-FPM su un Ubuntu 14.04 VPS

  3. Installa Croogo su un VPS Ubuntu con Nginx e MariaDB

  4. Installa OpenCart 2 su un VPS Ubuntu 14.04 con Nginx e PHP-FPM

  5. Installa OwnCloud 7 con Nginx e PHP-FPM su un VPS Ubuntu

Installa EHCP (Easy Hosting Control Panel) in RHEL/CentOS/Fedora e Ubuntu/Debian/Linux Mint

Gestire OpenVZ con il pannello di controllo Vtonf su CentOS 5.2

Installazione di MyDNS e del pannello di controllo MyDNSConfig su CentOS 5.1

Come installare il pannello di controllo Ajenti su Ubuntu 18.04

Come installare il pannello di controllo Vesta su Ubuntu 14.04

Come installare il pannello di controllo di CloudPanel su Ubuntu 20.04