• Contact
  • Contact Us
  • Disclamer
  • Home 1
  • Home 2
  • Home 3
  • Privacy Policy
Friday, May 9, 2025
How VPS - How to use/setup VPS
  • Login
  • Home
  • Management guides
    • Web servers software
      • Directadmin
      • Hocvps Script
      • Centmin Mod
      • CWP
      • Kloxo-MR
      • Plesk
    • Control Panels
    • Securing VPS/Servers
      • SSL Certificates
      • Upgrading
      • Authentication
  • Operating System
    • CentOS
    • Fedora
    • Debian
    • Linux
    • Arch
    • BSD
    • CoreOS
  • Reviews
  • Coupon
    • Domain Coupon
    • Hosting Coupon
No Result
View All Result
  • Home
  • Management guides
    • Web servers software
      • Directadmin
      • Hocvps Script
      • Centmin Mod
      • CWP
      • Kloxo-MR
      • Plesk
    • Control Panels
    • Securing VPS/Servers
      • SSL Certificates
      • Upgrading
      • Authentication
  • Operating System
    • CentOS
    • Fedora
    • Debian
    • Linux
    • Arch
    • BSD
    • CoreOS
  • Reviews
  • Coupon
    • Domain Coupon
    • Hosting Coupon
No Result
View All Result
How VPS - How to use/setup VPS
No Result
View All Result
Home Operating System Debian

Setup Your Own DNS Server on Debian/Ubuntu

How VPS by How VPS
November 1, 2019
in Debian
0
0
SHARES
40
VIEWS
Share on FacebookShare on Twitter

Contents

  1. Install Bind9
  2. Configuration
  3. Want to contribute?


This tutorial explains how to setup a DNS server using Bind9 on Debian or Ubuntu. Throughout the article, substitute your-domain-name.com accordingly. At the end of the tutorial, you will have a functional Ubuntu DNS server.

Install Bind9

apt-get install bind9

Configuration

Backup current Bind9 settings.

cp /etc/bind/named.conf.options /etc/bind/named.conf.options.bak

Edit /etc/bind/named.conf.options and replace the content to following:

options {
        directory "/var/cache/bind";
        auth-nxdomain no;
        listen-on-v6 { any; };
        statistics-file "/var/cache/bind/named.stats";
        rrset-order {order cyclic;};
    allow-transfer { 127.0.0.1; };
};
logging {
        channel b_query {
                file "/var/log/bind9/query.log" versions 2 size 1m;
                print-time yes;
                severity info;
        };
        category queries { b_query; };
};

Create the log directory for Bind9.

mkdir /var/log/bind9
chown bind:bind /var/log/bind9

Edit /etc/bind/named.conf to configure your domain zone file location. Append the following lines:

zone "your-domain-name.com" {
        type master;
        file "/etc/bind/zones/your-domain-name.com.db";
};

Create your domain zone file at /etc/bind/zones/your-domain-name.com.db. Insert your DNS records by following this template:

$TTL    86400
@   IN  SOA ns1.your-domain-name.com. root.your-domain-name.com. (
            2014100801  ; Serial
            43200       ; Refresh
            3600        ; Retry
            1209600     ; Expire
            180 )       ; Minimum TTL

; Nameservers
    IN  NS  ns1.your-domain-name.com.
    IN  NS  ns2.your-domain-name.com.
    IN  NS  ns3.your-domain-name.com.

; Root site
    IN  A   123.456.78.90

; Hostname records
*   IN  A   123.456.78.90
sub1    IN  A   123.456.78.91
sub2    IN  A   123.456.78.92

; Aliases
www IN  CNAME   your-domain-name.com.
webmail IN  CNAME   ghs.google.com.

; MX records
@   IN  MX  1   aspmx.l.google.com.
@   IN  MX  3   alt1.aspmx.l.google.com.
@   IN  MX  3   alt2.aspmx.l.google.com.
@   IN  MX  5   aspmx2.googlemail.com.
@   IN  MX  5   aspmx3.googlemail.com.
@   IN  MX  5   aspmx4.googlemail.com.
@   IN  MX  5   aspmx5.googlemail.com.

; SPF records
@   IN  TXT "v=spf1 ip4:199.195.140.194 include:_spf.google.com ~all"

Restart Bind9:

/etc/init.d/bind9 restart

You’re all set. At this point, you may want to register your DNS server with your domain registrar. After doing that, you can change your existing name server to your own DNS server.

If you come across problems and need to view errors, you may use the following command.

/etc/init.d/bind9 status

Want to contribute?

You could earn up to $300 by adding new articles

Submit your article
Suggest an update
Request an article
Previous Post

Using Apt Utilities On Ubuntu

Next Post

Setting up a Chroot on Debian

Next Post

Setting up a Chroot on Debian

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

No Result
View All Result

Recent Post

Install Imagemagick on CentOS
CentOS

Install Imagemagick on CentOS

by How VPS
June 28, 2023
0

This is how I installed Imagemagick on a vanilla CentOS server Start off by installing the prerequisites yum install php-pear...

Read more
how to Check phpinfo

How to Check phpinfo of Hosting or VPS?

June 28, 2023
Failed to download metadata for repo 'appstream' on Centos 8

How to fix error: Failed to download metadata for repo ‘appstream’ on Centos 8

February 25, 2022
How to Fix MySQL Error "Plugin 'InnoDB' registration as a STORAGE ENGINE failed"?

How to Fix MySQL Error “Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed”?

November 17, 2020
How to optimize Mysql or MariaDB

How to optimize Mysql or MariaDB

November 3, 2020

Recent News

  • Install Imagemagick on CentOS
  • How to Check phpinfo of Hosting or VPS?
  • How to fix error: Failed to download metadata for repo ‘appstream’ on Centos 8

Category

  • Arch
  • Authentication
  • Backups
  • BSD
  • Centmin Mod
  • CentOS
  • Control Panels
  • CoreOS
  • CWP
  • Debian
  • Directadmin
  • Encryption
  • Fedora
  • Firewalls
  • Hocvps Script
  • Hosting providers
  • Kloxo-MR
  • Linux
  • Mitigations
  • Operating System
  • Plesk
  • Reviews
  • Securing VPS/Servers
  • Security Patches
  • SSL Certificates
  • Uncategorized
  • Upgrading
  • VPS/Servers management guides
  • Vulnerability Detection
  • Web servers software
  • Webhosting Control Panel
  • About
  • Advertise
  • Careers
  • Contact

© 2025 JNews - Premium WordPress news & magazine theme by Jegtheme.

No Result
View All Result
  • Home
  • Management guides
    • Web servers software
      • Directadmin
      • Hocvps Script
      • Centmin Mod
      • CWP
      • Kloxo-MR
      • Plesk
    • Control Panels
    • Securing VPS/Servers
      • SSL Certificates
      • Upgrading
      • Authentication
  • Operating System
    • CentOS
    • Fedora
    • Debian
    • Linux
    • Arch
    • BSD
    • CoreOS
  • Reviews
  • Coupon
    • Domain Coupon
    • Hosting Coupon

© 2025 JNews - Premium WordPress news & magazine theme by Jegtheme.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
Thabet