安装MyDNS和MyDNSConfig 3在Fedora 10上

安装MyDNS和MyDNSConfig 3在Fedora 10上 在本教程中,我将描述如何安装和配置MyDNS和MyDNSConfig 3 在Fedor ...

安装MyDNS&MyDNSConfig 3在Fedora 10上

版本1.0
作者:Falko Timme

在本教程中,我将介绍如何在Fedora 10上安装和配置MyDNSMyDNSConfig 3. MyDNS是使用MySQL数据库作为后端而不是配置文件的DNS服务器,例如Bind或djbdns。 优点是MyDNS只是从数据库中读取记录,当DNS记录更改或区域被创建/编辑/删除时,不必重新启动/重新加载。 可以通过安装访问同一数据库的MyDNS的第二个实例来轻松设置辅助Nameservers,或者更多冗余,使用MySQL主/从复制功能将数据复制到辅助Nameservers。

MyDNSConfig是一个易于使用的基于Web的MyDNS界面。 MyDNSConfig可以创建MyDNS中可用的所有类型的DNS记录,并添加用户管理和访问权限等功能。

我不会保证这将为您工作!

1初步说明

在本教程中,我使用IP地址为192.168.0.100的hostname server1.example.com 。 这些设置可能会有所不同,因此您必须在适当的情况下更换它们。

2安装MySQL

我们可以安装MySQL,如下所示:

yum install mysql mysql-server

然后,我们为MySQL创建系统启动链接(以便每当系统启动时,MySQL自动启动)并启动MySQL服务器:

chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

为用户root设置密码(否则任何人都可以访问您的MySQL数据库!)。

如果最后一个命令在你身上引发错误...

[root@server1 named]# mysqladmin -h server1.example.com -u root password yourrootsqlpassword
mysqladmin: connect to server at 'server1.example.com' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
[root@server1 named]#

...我们可以设置密码如下:连接到MySQL:

mysql -u root -p

键入MySQL root用户的密码。 然后在MySQL shell上执行以下操作:

mysql> USE mysql;

mysql> UPDATE user SET Password = password('yourrootsqlpassword') WHERE Host = 'server1.example.com' AND User = 'root';

mysql> UPDATE user SET Password = password('yourrootsqlpassword') WHERE Host = '127.0.0.1' AND User = 'root';

mysql> SELECT * FROM user;

以确保用户root的所有行都具有密码。

如果一切正常,运行

mysql> FLUSH PRIVILEGES;

...并离开MySQL shell:

mysql> quit;

3安装Apache2,PHP,phpMyAdmin

MyDNSConfig需要一个支持PHP的Web服务器; 所以我安装Apache2。 我也安装phpMyAdmin,以便稍后通过Web界面访问数据库(尽管这是可选的):

yum install httpd php php-mysql php-mbstring php php-devel php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 php-cli phpMyAdmin

我们还必须安装不能用作Fedora软件包的vlogger:

cd /tmp
wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
tar xvfz vlogger-1.3.tar.gz
mv vlogger-1.3/vlogger /usr/sbin/
rm -rf vlogger*

现在我们配置phpMyAdmin。 我们更改Apache配置,以便phpMyAdmin不仅允许从localhost进行连接(通过注释出<Directory / usr / share / phpmyadmin>节):

vi /etc/httpd/conf.d/phpMyAdmin.conf

# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
#<Directory /usr/share/phpMyAdmin/>
#   order deny,allow
#   deny from all
#   allow from 127.0.0.1
#</Directory>

# This directory does not require access over HTTP - taken from the original
# phpMyAdmin upstream tarball
#
<Directory /usr/share/phpMyAdmin/libraries>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

# This configuration prevents mod_security at phpMyAdmin directories from
# filtering SQL etc.  This may break your mod_security implementation.
#
#<IfModule mod_security.c>
#    <Directory /usr/share/phpMyAdmin>
#        SecRuleInheritance Off
#    </Directory>
#</IfModule>

然后我们创建Apache的系统启动链接并启动它:

chkconfig --levels 235 httpd on
/etc/init.d/httpd start

现在您可以将浏览器指向http://server1.example.com/phpmyadmin/http://192.168.0.100/phpmyadmin/ ,并使用用户名root和新的root MySQL密码登录。

4安装MyDNS

我们可以安装MyDNS如下:

wget http://mydns.bboy.net/download/mydns-mysql-1.1.0-1.i386.rpm
rpm -ivh mydns-mysql-1.1.0-1.i386.rpm

当系统启动时,MyDNS必须 MySQL 之后启动。 MySQL启动链接在Fedora 10上具有优先级64,因此MyDNS启动链接的优先级必须在65到99之间。因此,我们打开MyDNS init脚本...

vi /etc/init.d/mydns

...改变

[...]
# chkconfig: 345 52 50
[...]

[...]
# chkconfig: 345 65 50
[...]

然后我们创建启动链接:

chkconfig --levels 235 mydns on

我们现在不启动MyDNS,因为它必须先配置 - 稍后将由MyDNSConfig 3安装程序自动完成。