This is just a list of all the things you should have, need to find out or should consider when you want to build this server.
- A Mac mini (any model)
- A connection to the internet
- Preferably a fixed ip-address (dynamic is also possible)
- Access to all the necessary ports
- Acces to your Domain names registration settings
The Mac mini
The mini may be any model (Intel or PowerPC based), it doesn’t really matter which one you pick. For a personal web-server which will host several sites and act as a mail-server for several people performance isn’t really an issue. Mostly the bandwidth limitations will prevent your server from getting overloaded when using a broadband connection. The Intel based (specially the dual core) will perform better but will be more expensive. I currently have a Intel based Mac mini Core Duo running as my production server at Macminicolo.net (this site is one of the sites running on it) and my first G4 Mac mini is running as my backup server still at home.
(You can of course use a different model Mac if you want to, as long as it is running OS X 10.3 or later.)
A broadband connection
Depending on the expected amount traffic you can use any connection which you can afford. But take note of the upload speed. When you are just surfing the net and downloading your main concern is download speed and it can’t be high enough. When putting a server on the net the upload speed becomes an important factor. The upload speed determines the speed at which others can connect to your site. The higher your upload speed the faster a web page from your site loads in another persons browser. The highest upload speed available at the moment with a normal ADSL connection is 1 Mbit.
Preferably a fixed ip-address
Having a fixed ip-address has make life easier for your domain registration. That said it is not impossible to get a domain name with a dynamic ip-address. But then you have to use some extra programs to handle the changing ip-address. Please note that usually the ip-address only changes after a reboot or a connectivity failure. The program you should have a look at if you have a dynamic ip-address is: DNSUpdate, which can send your changing ip-address to Dyndns.com, EasyDNS and ZoneEdit.com.
Access to all the necessary port numbers
Some broadband providers block incoming ports to prevent abuse or just to prevent you to deploy your own services. Before you subscribe to a particular service read the rules and regulations of the service provider. See what is supported and if you are allowed to run your own server on their network. Ask people in your surroundings who run their own server for which provider they use, or ask people who use the provider you are looking at what their findings are about the service. If that doesn’t work, call the service provider if they support you having your e-mail and web-server. Try to get a written or e-mail confirmation on this so that you can reclaim any cost you have made if they aren’t true to their word.
If you want to check your current connection you can use the free tools from HackerWacker. The most important ports you’ll need are 80 and 25. For web based acces you need port 80, for receiving mail you need access to port 25.
A domain name is considered your online identity. There are several reasons to get one:
- A web address like www.mydomain.com is easier to remember and to share than an ip-address
- Easier to register with search engines and online directories
- You can have domain e-mail addresses, like firstname.lastname@example.org instead of email@example.com
Register your domain name at any registrar you like but keep the following in mind. Make sure that where you register your domain name you can also manage your own DNS entries. This makes changing anything in the future a lot easier (like the MX records for your mail server). Also note that some registrars claim ownership of the domain name you register which makes it difficult to move your domain name to a different registrar if you get problems with the current one or you find a cheaper/better one.
For a domain you’ll need an A record which links the domain to the ip-address.
diymacserver.com A 18.104.22.168 *.diymacserver.com A 22.214.171.124
The wildcard will allow you to put anything in front of .diymacserver.com like www or test and it will arrive at your server. Very usefull in combination with virtual hosts in Apache.
For sending and receiving mail you’ll need MX records.
prio domain ip-address 10 mail.diymacserver.com 126.96.36.199 20 mail.richard5.net 188.8.131.52
You’ll need a least 2 if you don’t want to miss any emails. Get someone else to be your fallback mailserver or use a free fallback mailservice like from http://www.rollernet.us/. Some domain registrars provide this service for you on top of their DNS service. I can also provide a backup MX mailserver for you, this will include all the anti spam settings I’ve documented so there will be no back-door entry for spam to your server.
Next step: Preparing your Mac to run as a server