How to make DNS accessible to public - linux

So I configured an authoritative name server after reading pages after pages of text regarding the standards of the server and its security. Question is how do I make my server accessible to the public such that they don't need to add my name server to their network configuration in order to access domains registered to that name server? I already have a domain name registered for that name server through a third party domain name provider.

Your registrar will have a way to make your DNS server authoritative for your domain. Look in their control panel for DNS options. When you register your domain they will set the DNS servers to their own, which you can change later. When you set your DNS servers it will take a bit for it to update, so if it doesn't happen right away just wait an hour or so. You should also flush and register DNS on the machine you are trying to access the site from.
FYI - you got down voted because stackoverflow is for programming and not server config questions.

Related

Nodejs - What does it actually means to deploy a website on a domain and how to do it?

I am a bit new to the deployment of a website. I have a server which is written in Node.js. Previously I had been using Heroku for deploying my apps without knowing much about deployment. I would like to know how do I deploy my server to create a website which has .com at the end of it like www.example.com and not www.example.herokuapp.com. I think it has something to do with domains (correct me if I am wrong). I would like to know what exactly is a domain and a DNS provider and how to deploy a website in such a way. Thank you.
You should ask one question to yourself when you hit www.example.com in browser how does it load a page?. When you run a website on your laptop it basically runs locally, if you want to access your website over the internet you would require public IP(host or server) accessible over the internet so you can access a webpage using public IP:port. But this is not the best option because IP may change in the future and also remembering IP for each application will be difficult. Imagine if you access Facebook, Instagram or any other websites by its IP addresses how difficult and inconvenient would it be? There are a couple of things you should know.
DNS-> Domain Name system
Every host is identified by the IP address but remembering numbers is
very difficult for the people and also the IP addresses are not static
therefore, a mapping is required to change the domain name to IP
address. So DNS is used to convert the domain name of the websites to
their numerical IP address.
DNS is a hostname to IP address translation service. DNS is a distributed database implemented in a hierarchy of name servers. It is an application layer protocol for message exchange between clients and servers.
Name servers
Domain Name Servers (DNS) are the Internet's equivalent of a phone book. They maintain a directory of domain names and translate them to Internet Protocol (IP) addresses. This is necessary because, although domain names are easy for people to remember, computers or machines, access websites based on IP addresses.
DNS record
A domain name, IP address what is the validity?? what is the time to live ?? and all the information related to that domain name.
Once you understand the DNS
Host(Deploy) your website to Amazon EC2 or Heroku and obtain Public IP.
Buy a domain from domain provider like Godaddy
Map domain(ie www.example.com to IP)-> DNS record
Mapping domain to IP may vary platform to platform but the Core principle remains the same. I would suggest you these below link. Try to find differences in both, doing so you will learn along the way
http://www.littlebigextra.com/map-domain-name-amazon-aws-ec2-instance/
https://medium.com/progress-on-ios-development/connecting-an-ec2-instance-with-a-godaddy-domain-e74ff190c233

Hosting Website LIVE on the domain I've bought

I'll get straight to the point.
I have bought a domain. I want to host it on my computer, maybe on a raspberry pi since only 50 persons/month will visit it.
Anywhere I've looked I see two hosting methods, using IIS/WAMP/XAMPP to only create a localhost website or adding the domain to C:\Windows\System32\drivers\etc\hosts.txt that is also... localhost.
What is the magic answer here? How can I host LIVE a website with the domain that I have bought? Am I stuck to using a hosting service? Am I missing something really important?
using IIS/WAMP/XAMPP to only create a localhost website
You need an HTTP server if you want to host a website. It needs to run on the computer you want to host the website from.
adding the domain to C:\Windows\System32\drivers\etc\hosts.txt
That's what you do as a poor man's solution instead of buying a domain name.
The Domain Name needs to be associated with a DNS server (and secondary DNS server) by your registrar.
Usually, a registrar will provide DNS hosting services as part of the deal.
The DNS server needs an A record pointing at the IP address of the computer running the web server. This IP address needs to be available to whomever is going to visit it (which almost certainly needs to be public facing) and should be static (unless you want to play games with very short TTL values and frequent reconfiguration of the DNS servers).
If you plan to host multiple different websites on the same server, you'll probably want to configure the HTTP server software to handle Virtual Name Hosting (whereby it pays attention to the Host header in the request and dynamically serves different content based on it)

Point/Send domain name to website on Windows Server 2008 R2

Okay, can't seem to find a great article or info on this. My client purchased a domain for his company (domain.com) through Network Solutions. He has a local server running Windows 2008 R2 that he wants to host his company's website on. I've created the website and have it running with Apache on localhost. The server does have a static IP, but when I visit it, I'm prompted for credentials (user, password) which is expected as it's meant to be protected.
My question:
How would I point the domain to the website on his server?
From what I've researched, I have options that include:
Pointing the domain to the static IP (what about the credentials?)
Creating A and CNAME records for the DNS server on Network Solutions
Setting up a local DNS server w/ Active Directory on the Windows machine
Creating a couple name servers that would tell Network Solutions
where to send the domain
It's safe to say I'm effectively confused, so any help would be very much appreciated.
So basically you have to associate the domain name to the IP address, and that is done using DNS.
I'd suggest option 2 where you let Network Solutions manage the DNS, and you create an A record for www.domainname.com that points to the IP address on your server. Keep in mind it might take 24-48 hours for this new record to propagate across the internet. Take a look at http://www.networksolutions.com/support/dns-manager-advanced-tools/ and http://www.networksolutions.com/support/a-records-ip-addresses/
Regarding the credentials prompt, I assume you are using IIS and so you'd want to check the Authentication settings for the site. If you want anonymous access to the site, you would enable it there.

How to point a domain to another address without access to add CNAME zone

Ive bought some domains from a hosting service and i want to point them to my other server. I did so usually by adding a DNS zone of type CNAME to list of DNS es which is set in my domain administration panel. but unfortunately I do not have access to add a CNAME, I can only change my name servers. I have even tried to point the name servers to my own domain name server, but this did not work so. for example I have the name servers ns1.online4iran.com and ns2.online4iran.com. but the domain still does not point to my server. is there a way to handle this situation. shall I start a spicific service on my server to handle this thing?
or should I preform specific configurations on my own domain configuration page?
thanks,
I did notice that some domain sellers do this, not sure why the monopoly. Sometimes, the changes don't reflect immediately. Wait for sometime & if still they don't reflect then do this. Check in the DNS Settings of your domain control panel if you have an option of 'Child Nameservers'. If yes, then you can run DNS service on your server locally & then make the necessary DNS changes on the server itself. Is your server Linux or Windows? Does it have a control panel installed?

Domain forwarding (sort-of)

I have been attempting to set up magento on a shared hosting server that doesn't support innoDB, ergo its not been possible. The domain I want to use has also been registered with this rubbish hosting provider. (one[dot]com for anyones reference). So I thought I would be able to point this domain to a different hosting provider that DOES support it, but one[dot]com doesnt allow me to change nameservers for the domain. They just said this:
You can only setup IP address, CNAME and web forwarding in our DNS settings but not change of nameservers
Would there be any way to change any of these settings or the .htaccess file so that, for example
http://www.mydomain.com/folder/page.php?query=string
Would display a page from the other server
http://xxx.xxx.xxx:xx/folder/page.php?query=string
I've created loads of sits doing all sorts but never really needed to other with the domain administration side of things.
You don't need to change name servers to map a domain to a different server. If the "good" provider supports it (i.e. allows you to register a domain on the server that isn't hosted by the company), just switch the A and MX records to the new server's IP address.
You do need the cooperation of the "good" provider for this, though.
If they're letting you set up the IP address, then setting the IP address of www.mydomain.com to xxx.xxx.xxx.xx should do the trick. On the other server, you'll need its webserver to be set up to serve www.mydomain.com as a virtual domain - if you're using a hosting provider they should do this for you; if not it should be fairly easy to set up (consult the manual of whichever web server software you're using).

Resources