站長資訊網
        最全最豐富的資訊網站

        PowerDNS部署教程

        第1章環境描述:

        [root@ops-tmp-app-2~]#cat/etc/redhat-release

        CentOSLinuxrelease7.4.1708(Core)

        [root@ops-tmp-app-2~]#getenforce

        Disabled

        [root@ops-tmp-app-2~]#systemctlstatusfirewalld.service

        ●firewalld.service-firewalld-dynamicfirewalldaemon

        Loaded:loaded(/usr/lib/systemd/system/firewalld.service;disabled;vendorpreset:enabled)

        Active:inactive(dead)

        Docs:man:firewalld(1)

        第2章安裝pdns

        yuminstall-ypdnspdns-backend-mysql

        [root@ops-tmp-app-2~]#rpm-qa|greppdns

        pdns-4.0.6-2.el7.x86_64

        pdns-backend-mysql-4.0.6-2.el7.x86_64

        啟動pdns就可以了,這里粘貼一下配置文件

        [root@ops-tmp-app-2PowerDNS-Admin]#cat/etc/pdns/pdns.conf

        api=yes

        api-key=changeme

        api-logfile=/var/log/pdns.log

        cache-ttl=20

        daemon=yes

        default-ttl=30

        guardian=no

        launch=gmysql

        gmysql-host=10.3.2.15

        gmysql-port=3306

        gmysql-user=powerdns

        gmysql-dbname=powerdns

        gmysql-password=powerdns

        local-address=10.3.2.15

        master=yes

        setgid=pdns

        setuid=pdns

        webserver=yes

        webserver-address=0.0.0.0

        webserver-allow-from=0.0.0.0/0

        webserver-port=8081

        write-pid=yes

        allow-axfr-ips=10.3.2.15,10.3.2.5

        also-notify=10.3.2.15,10.3.2.5

        only-notify=10.3.2.15,10.3.2.5

        slave=no

        slave-cycle-interval=60

        log-dns-details=yes

        log-dns-queries=yes

        loglevel=6pdns日志默認輸出到message的系統日志中了,調試中可以把日志打印級別開大一點

        第3章后端數據庫配置

        3.1數據庫安裝

        yuminstallmariadb-servermariadb–y

        systemctlenablemariadb.service

        systemctlstartmariadb.service

        3.2設置密碼

        mysql_secure_installation

        首先是設置密碼,會提示先輸入密碼

        Enter current password for root (enter for none):<–初次運行直接回車

        Set root password [Y/n] <–是否設置root用戶密碼,輸入y并回車或直接回車

        New password: <–設置root用戶的密碼(比如123456)

        Re-enter new password: <–再輸入一次你設置的密碼

        3.3其他配置

        Remove anonymous users [Y/n] <–是否刪除匿名用戶,回車

        Disallow root login remotely [Y/n] <–是否禁止root遠程登錄,回車,

        Remove test database and access to it [Y/n] <–是否刪除test數據庫,回車

        Reload privilege tables now [Y/n] <–是否重新加載權限表,回車

        3.4統一字符集

        ->首先是配置文件/etc/my.cnf,在[mysqld]標簽下添加

        init_connect='SET collation_connection = utf8_unicode_ci'

        init_connect='SET NAMES utf8'

        character-set-server=utf8

        collation-server=utf8_unicode_ci

        skip-character-set-client-handshake

        ->接著配置文件/etc/my.cnf.d/client.cnf,在[client]中添加

        default-character-set=utf8

        ->然后配置文件/etc/my.cnf.d/mysql-clients.cnf,在[mysql]中添加

        default-character-set=utf8

        systemctl restart mariadb.service

        3.5創建數據

        [root@ops-tmp-app-2~]#mysql-p123456

        WelcometotheMariaDBmonitor.Commandsendwith;org.

        YourMariaDBconnectionidis2

        Serverversion:5.5.60-MariaDBMariaDBServer

        Copyright(c)2000,2018,Oracle,MariaDBCorporationAbandothers.

        Type'help;'or'h'forhelp.Type'c'toclearthecurrentinputstatement.

        MariaDB[(none)]>source/root/pdns.sql

        Sql文件的內容如下,復制一下自己創建sql文件即可

        CREATEDATABASEpowerdns;

        GRANTALLONpowerdns.*TO'powerdns'@'10.3.%'IDENTIFIEDBY'powerdns';

        FLUSHPRIVILEGES;

        usepowerdns;

        CREATETABLEdomains(

        idINTAUTO_INCREMENT,

        nameVARCHAR(255)NOTNULL,

        masterVARCHAR(128)DEFAULTNULL,

        last_checkINTDEFAULTNULL,

        typeVARCHAR(6)NOTNULL,

        notified_serialINTDEFAULTNULL,

        accountVARCHAR(40)DEFAULTNULL,

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEUNIQUEINDEXname_indexONdomains(name);

        CREATETABLErecords(

        idBIGINTAUTO_INCREMENT,

        domain_idINTDEFAULTNULL,

        nameVARCHAR(255)DEFAULTNULL,

        typeVARCHAR(10)DEFAULTNULL,

        contentVARCHAR(64000)DEFAULTNULL,

        ttlINTDEFAULTNULL,

        prioINTDEFAULTNULL,

        change_dateINTDEFAULTNULL,

        disabledTINYINT(1)DEFAULT0,

        ordernameVARCHAR(255)BINARYDEFAULTNULL,

        authTINYINT(1)DEFAULT1,

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEINDEXnametype_indexONrecords(name,type);

        CREATEINDEXdomain_idONrecords(domain_id);

        CREATEINDEXrecordorderONrecords(domain_id,ordername);

        CREATETABLEsupermasters(

        ipVARCHAR(64)NOTNULL,

        nameserverVARCHAR(255)NOTNULL,

        accountVARCHAR(40)NOTNULL,

        PRIMARYKEY(ip,nameserver)

        )Engine=InnoDB;

        CREATETABLEcomments(

        idINTAUTO_INCREMENT,

        domain_idINTNOTNULL,

        nameVARCHAR(255)NOTNULL,

        typeVARCHAR(10)NOTNULL,

        modified_atINTNOTNULL,

        accountVARCHAR(40)NOTNULL,

        commentVARCHAR(64000)NOTNULL,

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEINDEXcomments_domain_id_idxONcomments(domain_id);

        CREATEINDEXcomments_name_type_idxONcomments(name,type);

        CREATEINDEXcomments_order_idxONcomments(domain_id,modified_at);

        CREATETABLEdomainmetadata(

        idINTAUTO_INCREMENT,

        domain_idINTNOTNULL,

        kindVARCHAR(32),

        contentTEXT,

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEINDEXdomainmetadata_idxONdomainmetadata(domain_id,kind);

        CREATETABLEcryptokeys(

        idINTAUTO_INCREMENT,

        domain_idINTNOTNULL,

        flagsINTNOTNULL,

        activeBOOL,

        contentTEXT,

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEINDEXdomainidindexONcryptokeys(domain_id);

        CREATETABLEtsigkeys(

        idINTAUTO_INCREMENT,

        nameVARCHAR(255),

        algorithmVARCHAR(50),

        secretVARCHAR(255),

        PRIMARYKEY(id)

        )Engine=InnoDB;

        CREATEUNIQUEINDEXnamealgoindexONtsigkeys(name,algorithm);

        flushprivileges;

        第4章安裝powerDNS-admin的web管理界面

        這里沒有使用官方提供的poweradmin,是基于LAMP的,太重,部署很不方便

        4.1為powerDNS-admin準備數據庫和用戶

        MariaDB[(none)]>CREATEDATABASEpowerdnsadminCHARACTERSETutf8COLLATEutf8_general_ci;

        QueryOK,1rowaffected(0.00sec)

        MariaDB[(none)]>GRANTALLPRIVILEGESONpowerdnsadmin.*TO'pdnsadminuser'@'%'IDENTIFIEDBY'p4ssw0rd';

        QueryOK,0rowsaffected(0.00sec)

        MariaDB[(none)]>FLUSHPRIVILEGES;

        QueryOK,0rowsaffected(0.00sec)

        4.2克隆powerDNS-admin代碼

        gitclone

        https://github.com/ngoduykhanh/PowerDNS-Admin.git

        4.3進入主目錄修改.env配置文件,配置數據庫連接信息

        [root@ops-tmp-app-2PowerDNS-Admin]#cat.env

        ENVIRONMENT=development

        PDA_DB_HOST=10.3.2.15

        PDA_DB_NAME=powerdnsadmin

        PDA_DB_USER=pdnsadminuser

        PDA_DB_PASSWORD=p4ssw0rd

        PDA_DB_PORT=3306

        PDNS_DB_HOST=10.3.2.15

        PDNS_DB_NAME=powerdns

        PDNS_DB_USER=powerdns

        PDNS_DB_PASSWORD=powerdns

        PDNS_HOST=10.3.2.15

        PDNS_API_KEY=changeme

        PDNS_WEBSERVER_ALLOW_FROM=0.0.0.0

        4.4使用docker-compose構建

        docker-composebuild

        4.5啟動容器

        docker-compose up

        PS:只要powerdns-admin這個容器起來就可以了,其他都可以忽略或者直接干掉,因為數據庫是使用自己的,沒用compose文件中構建的

        [root@ops-tmp-app-2 PowerDNS-Admin]# docker ps

        CONTAINER IDIMAGECOMMANDCREATEDSTATUSPORTSNAMES

        56b74d880448powerdns-admin"/entrypoint.sh"6 days agoUp 1 second0.0.0.0:9191->9191/tcppowerdns-admin

        打開瀏覽器訪問9191端口就可以了

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 久久99精品免费一区二区| 亚洲中文字幕久久精品无码喷水| 青草青草久热精品视频在线观看| 国产精品一久久香蕉产线看| 亚洲精品尤物yw在线影院| 国产精品国产AV片国产| 精品国产日产一区二区三区| 国产精品第12页| 久久精品aⅴ无码中文字字幕重口| 久久精品18| 国产精品爽爽ⅴa在线观看| 青青草国产精品欧美成人| 国产高清在线精品一区| 国产精品精品自在线拍| 久久久久久夜精品精品免费啦| 亚洲欧美日韩精品久久亚洲区 | 国产精品久久久久久久久鸭 | 精品久久久久久无码免费| 2021国产精品视频网站| 久久精品国产99国产电影网| 国产精品自在线拍国产| 久久精品毛片免费观看| 久久国产亚洲精品无码| 欧美精品欧美人与动人物牲交| 亚洲综合无码精品一区二区三区| 欧美日韩成人精品久久久免费看| 精品一区二区三区色花堂| 亚洲精品A在线观看| 1区1区3区4区产品芒果精品| 久久精品国产一区二区三区日韩| 国产精品电影在线观看| 高清在线亚洲精品国产二区| 2018国产精华国产精品| 国产成人精品日本亚洲11 | 亚洲综合av永久无码精品一区二区| 亚洲精品国产va在线观看蜜芽| 四库影院永久四虎精品国产| 日本精品夜色视频一区二区| 亚洲精品99久久久久中文字幕| 伊人久久精品无码av一区| 久久香综合精品久久伊人|