安装MyDNS&MyDNSConfig 3在Fedora 10上
版本1.0
作者:Falko Timme
在本教程中,我将介绍如何在Fedora 10上安装和配置MyDNS和MyDNSConfig 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安装程序自动完成。