{"id":18042,"date":"2015-12-02T15:30:05","date_gmt":"2015-12-02T21:30:05","guid":{"rendered":"https:\/\/www.rosehosting.com\/blog\/?p=18042"},"modified":"2022-12-16T04:59:27","modified_gmt":"2022-12-16T10:59:27","slug":"install-powerdns-and-poweradmin-on-an-ubuntu-14-04-vps","status":"publish","type":"post","link":"https:\/\/www.rosehosting.com\/blog\/install-powerdns-and-poweradmin-on-an-ubuntu-14-04-vps\/","title":{"rendered":"Install PowerDNS and PowerAdmin on an Ubuntu 14.04 VPS"},"content":{"rendered":"
In this tutorial, we will show you how to install PowerDNS and Poweradmin on an Ubuntu 14.04 VPS<\/a> with Nginx, MariaDB and PHP-FPM. PowerDNS is an open source, high-performance and reliable DNS server, written in C++ and can be used as an alternative to BIND. Poweradmin is a free, web-based administration tool for PowerDNS written in PHP. This guide should work on other Linux VPS<\/a> systems as well but was tested and written for an Ubuntu 14.04 VPS<\/a>.<\/p>\n <\/p>\n To install MariaDB, run the following commands:<\/p>\n When the installation is complete, run the following command to secure your installation:<\/p>\n To install the latest version of PowerDNS just run:<\/p>\n Select The database information will be written to the Clone the project repository from GitHub:<\/p>\n Set the correct permissions:<\/p>\n To install the latest stable version of PHP version 5.6 and all nessesary modules, run:<\/p>\n Edit the PHP-FPM pool configuration file:<\/p>\n Restart PHP-FPM:<\/p>\n Ubuntu 14.04 comes with nginx version 1.4, to install the latest stable version of Nginx version 1.8, run:<\/p>\n Create a new Nginx server block with the following content:<\/p>\n Activate the server block by creating a symbolic link :<\/p>\n Test the Nginx configuration and restart nginx:<\/p>\n To start the installation wizard, open your browser and type Step 1: Select the desired language, Step 6: If you have set the correct permissions the installer will create a Poweradmin php configuration file. That’s it, you have successfully installed PowerDNS and Poweradmin on your VPS!<\/p>\n You can now login to the Poweradmin interface using admin as username and setYourPoweradminAdminPassword as password.<\/p>\n Of course you don\u2019t have to do any of this if you use one of our Linux VPS Hosting<\/a> services, in which case you can simply ask our expert Linux admins to set this up for you. They are available 24×7 and will take care of your request immediately.<\/p>\n PS<\/span>.<\/strong> If you liked this post please share it with your friends on the social networks using the buttons on the left or simply leave a reply below. Thanks.<\/p>\n","protected":false},"excerpt":{"rendered":" In this tutorial, we will show you how to install PowerDNS and Poweradmin on an Ubuntu 14.04 VPS with Nginx, … <\/p>\nLogin to your VPS via SSH<\/h4>\n
ssh user@vps\r\n<\/pre>\n
Update the system and install necessary packages<\/h4>\n
[user]$ sudo apt-get update && sudo apt-get -y upgrade\r\n[user]$ sudo apt-get install software-properties-common vim git\r\n<\/pre>\n
Install MariaDB 10.0<\/h4>\n
[user]$ sudo apt-key adv --recv-keys --keyserver hkp:\/\/keyserver.ubuntu.com:80 0xcbcb082a1bb943db\r\n[user]$ sudo add-apt-repository 'deb http:\/\/ftp.osuosl.org\/pub\/mariadb\/repo\/10.0\/ubuntu trusty main'\r\n[user]$ sudo apt-get update\r\n[user]$ sudo apt-get install -y mariadb-server<\/pre>\n
[user]$ mysql_secure_installation\r\n<\/pre>\n
Install PowerDNS<\/h4>\n
[user]$ sudo apt-get install pdns-server pdns-backend-mysql<\/pre>\n
Yes<\/code> to create and configure database for pdns-backend-mysql with dbconfig-common. Provide the password of the database’s administrative user (MySQL root user password) and choose a password for the pdns-backend-mysql user.<\/p>\n
pdns.local.gmysql.conf<\/code> file.<\/p>\n
[user]$ sudo cat \/etc\/powerdns\/pdns.d\/pdns.local.gmysql.conf<\/pre>\n
# MySQL Configuration\r\n#\r\n# Launch gmysql backend\r\nlaunch=gmysql\r\n\r\n# gmysql parameters\r\ngmysql-host=localhost\r\ngmysql-port=\r\ngmysql-dbname=pdns\r\ngmysql-user=pdns\r\ngmysql-password=yourPdnsUserPassword\r\ngmysql-dnssec=yes\r\n# gmysql-socket=\r\n<\/pre>\n
Clone Poweradmin<\/h4>\n
[user]$ git clone https:\/\/github.com\/poweradmin\/poweradmin.git \/var\/www\/html\/pdns.myDomain.com\/<\/pre>\n
[user]$ chown -R www-data: \/var\/www\/html\/pdns.myDomain.com\/\r\n<\/pre>\n
Install and configure PHP and required PHP modules<\/h4>\n
[user]$ sudo add-apt-repository -y ppa:ondrej\/php5-5.6\r\n[user]$ sudo apt-get update\r\n[user]$ sudo apt-get -y install php5-fpm php5-cli php5-gd php5-mysqlnd php5-mcrypt<\/pre>\n
[user]$ sudo mv \/etc\/php5\/fpm\/pool.d\/www.conf{,.bak}<\/pre>\n
[user]$ sudo vim \/etc\/php5\/fpm\/pool.d\/www.conf<\/pre>\n
[www]\r\nuser = www-data\r\ngroup = www-data\r\nlisten = \/var\/run\/php5-fpm.sock\r\nlisten.owner = www-data\r\nlisten.group = www-data\r\nlisten.mode = 0666\r\npm = ondemand\r\npm.max_children = 5\r\npm.process_idle_timeout = 10s;\r\npm.max_requests = 200\r\nchdir = \/<\/pre>\n
[user]$ sudo service php5-fpm restart\r\n<\/pre>\n
Install and configure Nginx<\/h4>\n
[user]$ sudo add-apt-repository -y ppa:nginx\/stable\r\n[user]$ sudo apt-get update\r\n[user]$ sudo apt-get -y install nginx<\/pre>\n
[user]$ sudo vim \/etc\/nginx\/sites-available\/pdns.myDomain.com\r\nserver {\r\n server_name pdns.myDomain.com;\r\n listen 80;\r\n root \/var\/www\/html\/pdns.myDomain.com;\r\n\r\n access_log \/var\/log\/nginx\/pdns-access.log;\r\n error_log \/var\/log\/nginx\/pdns-error.log;\r\n\r\n index index.php;\r\n\r\n location \/ {\r\n try_files $uri $uri\/ \/index.php?$query_string;\r\n }\r\n\r\n location ~ \\.php$ {\r\n fastcgi_split_path_info ^(.+\\.php)(\/.+)$;\r\n fastcgi_pass unix:\/var\/run\/php5-fpm.sock;\r\n fastcgi_index index.php;\r\n include fastcgi_params;\r\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\r\n fastcgi_intercept_errors off;\r\n fastcgi_buffer_size 16k;\r\n fastcgi_buffers 4 16k;\r\n }\r\n\r\n location ~ \/\\.ht {\r\n deny all;\r\n } \r\n}<\/pre>\n
[user]$ sudo ln -s \/etc\/nginx\/sites-available\/pdns.myDomain.com \/etc\/nginx\/sites-enabled\/pdns.myDomain.com<\/pre>\n
[user]$ sudo nginx -t\r\n[user]$ sudo service nginx restart\r\n<\/pre>\n
Install Poweradmin<\/h4>\n
http:\/\/pdns.myDomain.com\/installer<\/code><\/p>\n
\nStep 2: Click on the “Go to step 3” button
\nStep 3: Fill the database information fields:
\n– Username: pdns
\n– Password: yourPdnsUserPassword
\n– Database type: MySQL
\n– Hostname: localhost
\n– DB Port: 3306
\n– Database: pdns
\n– Poweradmin administrator password: setYourPoweradminAdminPassword
\nStep 4: Set the username and password for Poweradmin, Hostmaster and Primary and Secondary nameservers.
\nStep 5: Before going to next step, perform the mariadb command shown on the screen.<\/p>\n[user]$ mysql -uroot -p<\/pre>\n
GRANT SELECT, INSERT, UPDATE, DELETE\r\nON pdns.*\r\nTO 'yourUser'@'localhost'\r\nIDENTIFIED BY 'yourUserPassword';\r\n\\q\r\n<\/pre>\n
\nAfter the installation wizard completes, remove the install directory using the following command:<\/p>\n[user]$ rm -rf install\/<\/pre>\n
\n