RHEL/CentOS 7中如何安装并配置PowerDNS和PowerAdmin
导读:本文共10550字符,通常情况下阅读需要35分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: PowerDNS是一个开源的并且可以快平台的DNS服务器,可以同时支持win32和Linux/Unix版本,使用mdb或MySQL进行备份是非常方便的事情。下面用于向你演示如何安装并配置以MariaDB作为后端的PowerDNS,以及它的界面友好的 Web 管理工具 PowerAdmin。出于本文的写作目的,我将使用以下服务器:主机名:centos7.local... ...
目录
(为您整理了一些要点),点击可以直达。PowerDNS是一个开源的并且可以快平台的DNS服务器,可以同时支持win32和Linux/Unix版本,使用mdb或MySQL进行备份是非常方便的事情。
下面用于向你演示如何安装并配置以MariaDB作为后端的PowerDNS,以及它的界面友好的 Web 管理工具 PowerAdmin。
出于本文的写作目的,我将使用以下服务器:
主机名:centos7.localhostIP地址:192.168.0.102
第一部分: 安装带有MariaDB后端的PowerDNS
1、 首先,你需要为你的系统启用EPEL仓库,只需使用:
#yuminstallepel-release.noarch
启用Epel仓库
2、 下一步是安装MariaDB服务器。运行以下命令即可达成:
#yum-yinstallmariadb-servermariadb
安装MariaDB服务器
3、 接下来,我们将配置并启用MariaDB,并设置开机启动:
#systemctlenablemariadb.service#systemctlstartmariadb.service
启用MariaDB开机启动
4、 现在MariaDB服务运行起来了,我们将为MariaDB设置密码进行安全加固,运行以下命令:
#mysql_secure_installation
按照指示做
/bin/mysql_secure_installation:line379:find_mysql_client:commandnotfoundNOTE:RUNNINGALLPARTSOFTHISSCRIPTISRECOMMENDEDFORALLMariaDBSERVERSINPRODUCTIONUSE!PLEASEREADEACHSTEPCAREFULLY!InordertologintoMariaDBtosecureit,we'llneedthecurrentpasswordfortherootuser.Ifyou'vejustinstalledMariaDB,andyouhaven'tsettherootpasswordyet,thepasswordwillbeblank,soyoushouldjustpressenterhere.Entercurrentpasswordforroot(enterfornone):PressENTEROK,successfullyusedpassword,movingon...SettingtherootpasswordensuresthatnobodycanlogintotheMariaDBrootuserwithouttheproperauthorisation.Setrootpassword?[Y/n]yNewpassword:←SetNewPasswordRe-enternewpassword:←RepeatAbovePasswordPasswordupdatedsuccessfully!Reloadingprivilegetables.....Success!Bydefault,aMariaDBinstallationhasananonymoususer,allowinganyonetologintoMariaDBwithouthavingtohaveauseraccountcreatedforthem.Thisisintendedonlyfortesting,andtomaketheinstallationgoabitsmoother.Youshouldremovethembeforemovingintoaproductionenvironment.Removeanonymoususers?[Y/n]y←Choose“y”todisablethatuser...Success!Normally,rootshouldonlybeallowedtoconnectfrom'localhost'.Thisensuresthatsomeonecannotguessattherootpasswordfromthenetwork.Disallowrootloginremotely?[Y/n]n←Choose“n”forno...skipping.Bydefault,MariaDBcomeswithadatabasenamed'test'thatanyonecanaccess.Thisisalsointendedonlyfortesting,andshouldberemovedbeforemovingintoaproductionenvironment.Removetestdatabaseandaccesstoit?[Y/n]y←Choose“y”foryes-Droppingtestdatabase......Success!-Removingprivilegesontestdatabase......Success!Reloadingtheprivilegetableswillensurethatallchangesmadesofarwilltakeeffectimmediately.Reloadprivilegetablesnow?[Y/n]y←Choose“y”foryes...Success!Cleaningup...Alldone!Ifyou'vecompletedalloftheabovesteps,yourMariaDBinstallationshouldnowbesecure.ThanksforusingMariaDB!
5、 MariaDB配置成功后,我们可以继续去安装PowerDNS。运行以下命令即可轻易完成:
#yum-yinstallpdnspdns-backend-mysql
安装带有MariaDB后端的PowerDNS
6、 PowerDNS的配置文件位于/etc/pdns/pdns,在编辑之前,我们将为PowerDNS服务配置一个MariaDB数据库。首先,我们将连接到MariaDB服务器并创建一个名为powerdns的数据库:
#mysql-uroot-pMariaDB[(none)]>CREATEDATABASEpowerdns;
创建PowerDNS数据库
7、 接下来,我们将创建一个名为powerdns的数据库用户:
MariaDB[(none)]>GRANTALLONpowerdns.*TO'powerdns'@'localhost'IDENTIFIEDBY‘tecmint123’;MariaDB[(none)]>GRANTALLONpowerdns.*TO'powerdns'@'centos7.localdomain'IDENTIFIEDBY'tecmint123';MariaDB[(none)]>FLUSHPRIVILEGES;
创建PowerDNS用户
注意: 请将“tecmint123”替换为你想要设置的实际密码。
8、 我们继续创建PowerDNS要使用的数据库表。像堆积木一样执行以下这些:
MariaDB[(none)]>USEpowerdns;MariaDB[(none)]>CREATETABLEdomains(idINTauto_increment,nameVARCHAR(255)NOTNULL,masterVARCHAR(128)DEFAULTNULL,last_checkINTDEFAULTNULL,typeVARCHAR(6)NOTNULL,notified_serialINTDEFAULTNULL,accountVARCHAR(40)DEFAULTNULL,primarykey(id));
创建用于PowerDNS的表domains
MariaDB[(none)]>CREATEUNIQUEINDEXname_indexONdomains(name);MariaDB[(none)]>CREATETABLErecords(idINTauto_increment,domain_idINTDEFAULTNULL,nameVARCHAR(255)DEFAULTNULL,typeVARCHAR(6)DEFAULTNULL,contentVARCHAR(255)DEFAULTNULL,ttlINTDEFAULTNULL,prioINTDEFAULTNULL,change_dateINTDEFAULTNULL,primarykey(id));
创建用于PowerDNS的表 records
MariaDB[(none)]>CREATEINDEXrec_name_indexONrecords(name);MariaDB[(none)]>CREATEINDEXnametype_indexONrecords(name,type);MariaDB[(none)]>CREATEINDEXdomain_idONrecords(domain_id);
创建表索引
MariaDB[(none)]>CREATETABLEsupermasters(ipVARCHAR(25)NOTNULL,nameserverVARCHAR(255)NOTNULL,accountVARCHAR(40)DEFAULTNULL);
创建表supermasters
你现在可以输入以下命令退出MariaDB控制台:
MariaDB[(none)]>quit;
9、 最后,我们可以继续配置PowerDNS了,以MariaDB作为后台。请打开PowerDNS的配置文件:
#vim/etc/pdns/pdns.conf
在该文件中查找像下面这样的行:
##################################launchWhichbackendstolaunchandordertoquerythemin##launch=
在这后面放置以下代码:
launch=gmysqlgmysql-host=localhostgmysql-user=powerdnsgmysql-password=user-passgmysql-dbname=powerdns
修改“user-pass”为你先前设置的实际密码,配置如下:
配置PowerDNS
保存修改并退出。
10、 现在,我们将启动并添加PowerDNS到系统开机启动列表:
#systemctlenablepdns.service#systemctlstartpdns.service
启用并启动PowerDNS
到这一步,你的PowerDNS服务器已经起来并运行了。要获取更多关于PowerDNS的信息,你可以参考手册http://downloads.powerdns.com/documentation/html/index.html。
第二部分: 安装PowerAdmin来管理PowerDNS
11、 现在,我们将安装PowerAdmin——一个界面友好的PowerDNS服务器的 Web 管理器。由于它是用PHP写的,我们将需要安装PHP和一台网络服务器(Apache):
#yuminstallhttpdphpphp-develphp-gdphp-imapphp-ldapphp-mysqlphp-odbcphp-pearphp-xmlphp-xmlrpcphp-mbstringphp-mcryptphp-mhashgettext
安装Apache 和 PHP
PowerAdmin也需要两个PEAR包:
#yum-yinstallphp-pear-DBphp-pear-MDB2-Driver-mysql
安装Pear
你也可以参考一下文章了解CentOS 7中安装LAMP堆栈的完整指南:
CentOS 7中安装LAMP
安装完成后,我们将需要启动并设置Apache开机启动:
#systemctlenablehttpd.service#systemctlstarthttpd.service
启用Apache开机启动
12、 由于已经满足PowerAdmin的所有系统要求,我们可以继续下载软件包。因为Apache默认的网页目录位于/var/www/html/,我们将下载软件包到这里。
#cd/var/www/html/#wgethttp://downloads.sourceforge.net/project/poweradmin/poweradmin-2.1.7.tgz#tarxfvpoweradmin-2.1.7.tgz
下载PowerAdmin
13、 现在,我们可以启动PowerAdmin的网页安装器了,只需打开:
http://192.168.0.102/poweradmin-2.1.7/install/
这会进入安装过程的第一步:
选择安装语言
上面的页面会要求你为PowerAdmin选择语言,请选择你想要使用的那一个,然后点击“进入步骤 2”按钮。
14、 安装器需要PowerDNS数据库:
PowerDNS数据库
15、 因为我们已经创建了一个数据库,所以我们可以继续进入下一步。你会被要求提供先前配置的数据库详情,你也需要为Poweradmin设置管理员密码:
输入PowerDNS数据库配置
16、 输入这些信息后,进入步骤 4。你将创建为Poweradmin创建一个受限用户。这里你需要输入的字段是:
用户名(Username) – PowerAdmin用户名。
密码(Password) – 上述用户的密码。
主机管理员(Hostmaster) – 当创建SOA记录而你没有指定主机管理员时,该值会被用作默认值。
主域名服务器 – 该值在创建新的DNS区域时会被用于作为主域名服务器。
辅域名服务器 – 该值在创建新的DNS区域时会被用于作为辅域名服务器。
PowerDNS配置设置
17、 在下一步中,Poweradmin会要求你在数据库表中创建一个新的受限数据库用户,它会提供你需要在MariaDB控制台输入的代码:
创建新的数据库用户
18、 现在打开终端并运行:
#mysql-uroot-p
提供你的密码并执行由PowerAdmin提供的代码:
MariaDB[(none)]>GRANTSELECT,INSERT,UPDATE,DELETEONpowerdns.*TO'powermarin'@'localhost'IDENTIFIEDBY'123qweasd';
为用户授予Mysql权限
19、 现在,回到浏览器中并继续下一步。安装器将尝试创建配置文件到/var/www/html/poweradmin-2.1.7/inc。
文件名是config.inc.php。为防止该脚本没有写权限,你可以手动复制这些内容到上述文件中:
配置PowerDNS设置
20、 现在,进入最后页面,该页面会告知你安装已经完成以及如何访问安装好的PowerAdmin:
PowerDNS安装完成
你可以通过运行以下命令来启用用于其他动态DNS提供商的URL:
#cpinstall/htaccess.dist.htaccess
出于该目的,你将需要在Apache的配置中启用mod_rewrite。
21、 现在,需要移除从PowerAdmin的根目录中移除“install”文件夹,这一点很重要。使用以下命令:
#rm-fr/var/www/html/poweradmin/install/
在此之后,你可以通过以下方式访问PowerAdmin:
http://192.168.0.102/poweradmin-2.1.7/
PowerDNS登录
在登录后,你应该会看到PowerAdmin的主页:
PowerDNS仪表盘
到这里,安装已经完成了,你也可以开始管理你的DNS区域了。
第三部分: PowerDNS中添加、编辑和删除DNS区域
22、 要添加新的主区域,只需点击“添加主区域”:
添加主区域
在下一页中,你需要填写一些东西:
域(Domain) – 你要添加区域的域。
所有者(Owner) – 设置DNS区域的所有者。
模板(Template)– DNS模板 – 留空。
DNSSEC – 域名系统安全扩展(可选——看看你是否需要)。
点击“添加区域”按钮来添加DNS区域。
主DNS区域
现在,你可以点击“首页”链接回到PowerAdmin的首页。要查看所有现存的DNS区域,只需转到“列出区域(List Zones)”:
查看区域列表
你现在应该看到一个可用DNS区域列表:
检查DNS区域列表
23、 要编辑现存DNS区域或者添加新的记录,点击编辑图标:
编辑DNS区域
在接下来的页面,你会看到你选择的DNS区域的条目:
域名的DNS区域条目
24、 在此处添加新的DNS条目,你需要设置以下信息:
名称(Name) – 条目名称。只需添加域/子域的第一部分,PowerAdmin会添加剩下的。
类型(Type) – 选择记录类型。
优先级(Priority) – 记录优先级。
TTL – 存活时间,以秒计算。
出于本文目的,我将为子域new.example.com添加一个A记录用于解析IP地址192.168.0.102,设置存活时间为14400秒:
添加新DNS记录
最后,点击“添加记录”按钮。
25、 如果你想要删除DNS区域,你可以回到“列出区域”页面,然后点击你想要删除的DNS区域旁边“垃圾桶”图标:
删除DNS区域
Poweradmin将问你是否确定想要删除DNS区域。只需点击“是”来完成删除。
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
RHEL/CentOS 7中如何安装并配置PowerDNS和PowerAdmin的详细内容,希望对您有所帮助,信息来源于网络。