disable http access on DNS server

August 17, 2014 930 views

Hello,
My DNS and HTTP servers are same machine and I have ns1, ns2 A records in DNS configuration file. How I can disable following http access?:

  1. http://ns1.mydomain.com
  2. http://ns2.mydomain.com
3 Answers

Hi! It's a little unclear what you're after. If you can expand on your question with some more details, it would help us to better answer it. What are you using as your web server? Apache? Nginx?

Nameservers generally listen on port 53 while HTTP listens on port 80. Assuming you have A records pointing both ns1.mydomain.com and www.mydomain.com to the same IP address, there's no way to disable HTTP access completely. Though you could make a 403 Forbidden error for requests to ns1.mydomain.com. You could use something like:

<VirtualHost *:80>
    ServerName www.mydomain.com
    DocumentRoot /var/www/html

    # The rest of you VirtualHost configuration....

</VirtualHost>

<VirtualHost *:80>
    ServerName ns1.mydomain.com
    <Location />
        Order allow,deny
        Deny from all
    </Location>
</VirtualHost>

Yes, I need exactly this solution ).
Thnx

Am on WHM/Cpanel (Centos) with Apache

Can I use any option on WHM to do it ?

I am a beginner, thanks

Where I put this code ?

<VirtualHost *:80>
ServerName www.mydomain.com
DocumentRoot /var/www/html

# The rest of you VirtualHost configuration....

</VirtualHost>

<VirtualHost *:80>
ServerName ns1.mydomain.com
<Location />
Order allow,deny
Deny from all
</Location>
</VirtualHost>

Have another answer? Share your knowledge.