E-mail server in Windows Server, part 2: Security

This is a follow-up to the tutorial How to install an e-mail server in Windows, directed to those who already have an hMailserver and want to increase the security.

Spam protection

To activate the spam protection, please go to Settings >> Anti-spam in the hMailserver Administrator.

In the tab "General" you can leave the settings the way they are, as shown in the image. Of course you can adjust them later according to your needs.

In the second tab "Spam tests" you should select all four spam detection parameters:

- Use SPF (3)
- Check host in the HELO command (2)
- Check that sender has DNS-MX records (2)
- Verify DKIM-Signature header (5)

Malware protection

As already mentioned in the previous tutorial, you have the possibility to use different anti malware software in hMailServer. The most easy solution is to use the free ClamWin anti virus scanner. You can download it there:


Please follow the installation wizard. Installing the browser extension is not required for your e-mail server. Normally ClamWin will now appear in the Windows system tray and start to update its database once a day. It will also protect your system from malware. You are of course free to change those settings individually in the ClamWin menu. The integration in the hMailServer is easy. Please go to Settings >> Anti-Virus >> ClamWin. The button "autodetect" will find the correct path to your ClamWin anti virus installation and you can finish the setup with "Save".

TLS encryption

To enable your clients to start an encrypted connection to your server, so nobody can steal your data, you have to enable this in your settings first. You will need an SSL certificate to achieve this. If you do not have already one for the host name of your server, you can create a self signed one on your own. Self signed certificates are free. But you will have to add an exception manually each time you set up a new client for your server. Most clients like Thunderbird or Outlook will ask you for that after the credentials got entered and they start the first connection. You can use XCA to create such a certificate:


After the software got installed and opened, you have to create a new database on the upper left side. You can choose any name, you do not even have to remember the password. We will need this tool only once to create the new certificate. You can remove it again afterwards.

After the new database got created you can choose the tab "Certificates". In the following menu please choose "New Certificate" on the right side. A new window will open. In this new window please choose the tab "Subject" and add your host name next to "commonName". In our example screenshot this is mail.yourdomain.com. Now please create a key for the certificate by pressing the button "Generate a new key". The options in the window normally will be  inserted correctly per default as shown in the image. You can finish the creation with "create".

The next step is to switch to the tab "Extensions". Enter a date until the certificate will be valid. You can be generous at this point. In our example we set a date in the year 2030 for "Validity not after". With the "OK" button in the bottom right corner you will finally create the certificate.

Now you have to export the certificate and the according key. Please choose in the tab "Certificates" the certificate and click on "Export" on the right side. You can let the path the way it is. In our case it is:

C:\Program Files (x86)\xca\mail.yourdomain.com.crt

In the tab "Private Keys" please do the same for the previously created key. The path should be:

C:\Program Files(x86)\xca\mail.yourdomain.com.pem

Please open the hMailServer Administrator and navigate to Settings >> Advanved >> SSL certificates and click on "Add". Now you have to add the previously exported certificate and key as shown in the image below and save the settings.

For the last step please go to Settings >> Advanced >> TCP/IP ports. There you have to modify the three entries below " / 25 / SMTP" as shown in the following images. At "SSL Certificate", please choose your recently created certificate. " / 25 / SMTP" has to stay in its original state as the only one. If you change it, your e-mail server will not work properly!

Now you have to open the new ports in your firewall. For that you can edit the rule from the previous tutorial. We called it "Ports for hMailServer" there. Please change the "local ports" from 25, 110, 143, 587 to 25, 465, 993, 995. (Windows Firewall with Advanced Security on Local computer >> Inbound Rules >> Ports for hMailServer >> Protocols and Ports)

The settings for your clients have changed too:

ingoing server:

protocol: IMAP; port: 143; security: SSL/TLS; server: the IP or hostname of your server

outgoing server:

protocol: SMTP; port: 587; security: SSL/TLS; server: the IP or hostname of your server


How to install an e-mail server in Windows Server

You want to send and receive e-mails with your Windows server and connect to it by using your clients on PC, smartphone or tablet? In this tutorial we will explain how you can setup your own e-mail server on a Windows system with a static public IP. This tutorial will work for our VPS as well as for our dedicated servers. hMailServer is a free open source program, the setup is rather simple and can be done in just a few easy steps. Next to the default features like SMTP, POP3 and IMAP, the software is capable to detect spam and also a free virus protection like ClamWin can be added.


hMailServer needs NET Framework 3.5. to run correctly. Therefore you should add it to Windows before you install hMailServer. To do so, please open the Server Manager. The next steps will differ a little in the different versions of Windows Server. We will explain it by using the example of Windows Server 2012. Please click on "Manage" on the right upper side and choose "Add Features and Roles". In the window that opens you can click four times on "Next" and leave all the settings the way they are. Now you can choose the features you need to install. You just have to choose the NET Framework 3.5 like shown in the image. With "Next" again, you confirm this selection and "Install" will start the installation. As soon as the process is finished, you can close the window and proceed with the installation of your e-mail server.

Please download the latest version of the software from this site:


Please do not choose a version that is still in beta, since it might contain bugs and vulnerabilities. After you received the installation package, you can execute it and accept the terms of service.

You should leave the default installation directory as is and continue with "Next". Now you can choose the required products for installation. You will need the full installation, so please let "Server" and "Administrative Tools" checked and proceed with "Next". For an easy installation, we do recommend to choose "Use built-in database engine" in the next step. In the following window let the name be hMailServer and proceed. hMailServer will need a password for administrative tasks in the future. So please create a password you want to use to protect your service and write it down. The last step will be to start the installation. It should finish without error.

hMailServer Configuration

Please open the hMailServer Administrator. In the first window you have to activate "Automatically connect on Start-up" and click on "Connect".

In the next window, please go to "Domains", choose "Add..." and insert your domain you want to use for sending e-mails.

After the domain got saved, you can add new e-mail addresses in the menu "Accounts".

Now please go to Settings >> Protocols >> SMTP >> Delivery of e-mail. There, please add the local host name of your server that should be used for introducing your server to other e-mail servers. It has to be a valid domain and has to resolve to the IP of your server. So please add an A record to your DNS zone if necessary. You also should set an identical PTR for the IP address of your server. This can be done in the Contabo customer control panel. The host name should consist of three parts. That means it has to be an FQDN and it may not contain too many numbers, since it might seem to be generic. A good name for example might be: "mail.justanexample.com". When you are done, please save your new settings.

Firewall Configuration

The main configuration is done. But you still have to open all used e-mail ports in the firewall to make it work. Please open the Windows Firewall settings and choose "Inbound Rules". On the right side click on "New Rule". A window will open and you have to choose "Port" and click on "Next". In the next window please insert the ports 25, 110, 143 and 587, as shown in the image.

In the following window please choose "Allow The Connection" and after "Next", please check "Domain", "Private" and "Public".

In the last window you can enter a name for the new rule. For example "Ports for hMailServer". Please finish the setup and close the firewall settings.

Now you should add an SPF record to your DNS zone. Many e-mail servers will reject e-mails from your server if it does not exist. Therefore please add this TXT record to your zone:

justanexample.com 86400 in TXT "v=spf1 ip4: ~all"

"justanexample.com" has of course to be replaced with your domain and with your IP.

You should also add an MX record to your DNS zone, if it does not exist already. The MX record should look like this:

justanexample.com 86400 in MX 10 "mail.justanexample.com"

The value "mail.justanexample.com" has to be replaced with the the host name you have chosen for your e-mail server.

The basic setup of your e-mail server is now complete. It should be able to send and receive e-mails as soon as the DNS changes are active and you can now connect with any e-mail client like Outlook, Thunderbird or Apple Mail.

Client Configuration

Please use the following settings for your e-mail client.

ingoing server:

protocol: IMAP; port: 143; security: none; server: the IP or host name of your server

outgoing server:

protocol: SMTP; port: 587; security: none; server: the IP or host name of your server


If you want to do some optimizations to the server security like transport encryption, spam checks and malware protection, please take a look at our second tutorial: E-mail server in Windows Server, part 2: Security.


No space left on your HDD/SSD? Find big files and remove them!

It does not matter if you do website hosting, provide a gameserver or use other services, if you have no space left on your HDD/SSD problems will occur. Your websites might not be reachable anymore, your players cannot connect to your gameserver or all other services will not start.

To avoid this it is necessary to find big files on your system and to get rid of them. Today we will show you how to do this.


1. Connect to your server using SSH

2. Execute the following code:

# Change into root folder
cd /

# Find the top 10 files. This may take a while:
find -type f -exec du -Sh {} + | sort -rh | head -n 10

Once finished, a list of the ten largest files will be displayed. Normally these files might be old downloads or big log files. Files that are no longer used can be deleted, of course. Before deleting log files you should check them for errors you can solve so that the issue will be permanently fixed.

3. Using the command below you can remove files

rm <path_to_file>


In Windows you might not find big log files but forgotten downloads. To find them the following freeware is perfect:


Once you downloaded and executed the software you can start scanning a partition. A list of all files will be displayed. Please make sure not to delete Windows system files 😉 .

Posted by: Matthias | Tagged as: , , , , No Comments

Overview of available RAID levels

With this tutorial we will explain certain types of RAID levels to you.
Some of you might have already experienced a loss of data, no matter if it was an SD card holding some vacation photos or a hard disk holding important files. Losing data can be very costly if you try to restore them by some specialist. An expert is needed and the procedure takes a lot of time, the easiest way to avoid those costs is simply to avoid any data loss in the first place.

This overview is not relevant for any VPS, your VPS systems are already running safe on a RAID system monitored by experienced technicians.

Creating backups is still very important, a RAID does not replace any backup!

You can find further instructions within the following tutorial: Data loss and how to avoid it

There are some points which you should think about first, there are several results depending on your requirements.

  1. How important is the performance?
  2. How much data security should be provided by the RAID?
  3. Are system resources available to manage the RAID, such as CPU and RAM

Depending on the results of the above questions and your budget, there are several options available:
A hardware RAID is always more expensive but provides the best performance and security (if combined with a battery backup unit).
A software RAID is the easiest way to go for a RAID, it is able to handle almost any type of RAID and can be set up within a few minutes.

An overview of available RAID levels is shown below:


The RAID 0 provides increased write and read performance, the data will be distributed to at least two disks. Since there is no redundancy all data will be lost in case one disk fails.

  • At least two hard disks are needed
  • No disk redundancy at all
  • Maximum (complete) storage capacity available
  • Improved read and write performance


The RAID 1 provides increased read performance (depending on the software/hardware controller used), all data will be mirrored to a second disk. There is also a RAID 1E available - in that case all data will be mirrored to additional disks too.

  • At least two hard disks are needed
  • n-1 disks can fail
  • 1/n of storage available (n = number of disks, with two disks = > 1/2 of total storage)
  • Improved read performance


The RAID 5 provides increased write and read performance, the data is written to at least two disks, an additional disk is always used for storing parity data. The parity data has to be calculated for every write - so for very write intensive applications the RAID 5 requires a lot of performance due to the necessary calculations.

  • At least three hard disks are needed
  • One disk can fail
  • n-1/n of storage available (n = number of disks, with three disks = > 2/3 of total storage)
  • Improved read and write performance
  • Requires a lot of CPU time


The RAID 6 provides increased read performance, the data is written to at least two disks, two additional disks are always used for storing parity data. The parity data has to be calculated for every write - so for very write intensive applications the RAID 6 requires a lot of performance due to the necessary calculations. As there are two parity bits saved on the disks, the needed CPU time is very high.

  • At least four hard disks are needed
  • Two disks can fail simultaneously
  • n-2/n of storage available (n = number of disks, with two disks = > 2/4 (half) of total storage)
  • Improved read performance
  • Requires the most CPU time


A RAID 01 is a combination of two or more volume groups. Each volume group is configured to have a RAID 0, those volume groups are mirrored in a RAID 1. With a total number of four disks one entire volume group can fail with both disks and no data will be lost.

  • At least four hard disks are needed
  • Two disks can fail simultaneously if they belong to the same logical volume group
  • Half of total storage capacity is available
  • Improved read and write performance


A RAID 10 is a combination of two or more volume groups. Each volume group is configured to have a RAID 1, those volume groups are striped in a RAID 0. With a total number of four disks, two disks can fail simultaneously and no data will be lost - the failed disks must not belong to the same volume group.

  • At least four hard disks are needed
  • Two disks can fail simultaneously if they do not belong to the same logical volume group
  • Half of total storage capacity is available
  • Improved read and write performance


The difference between RAID 01 and RAID 10 is only visible with six or more disks, if you have six disks a RAID 10 will provide a higher calculated security rate. We do recommend using a RAID 10 instead of using a RAID 01 even if you do only have four disks. Some RAID controllers do not even support a RAID 01 anymore. RAID 5 and RAID 6 require the highest CPU time since a checksum has to be calculated on every writing process to the disk. Only a few enterprise RAID controllers do support RAID 5 and RAID 6, due to the need of calculating checksums the writing speed might suffer which might then cause problems when using write intensive applications.

For our dedicated servers it is always possible to order additional hard disks or RAID controllers, current prices can be found on our web site. If you need a special configuration, please contact our support team any day between 8 am and 11 pm (German timezone, UTC+2).

Posted by: Gianni-Donato | Tagged as: , , , , , 2 Comments

Analysing log files in Windows and Linux

Everyone knows the scenario, you want to analyze an issue of your server or local computer but where to find all those log files?

In the following tutorial we are going to analyze specific log files in Linux and logs in the Windows Event Viewer. An additional chapter will go through the log analysis via Systemd.

Linux log files

Unfortunately, it is quite different from distribution to distribution, which information can be extracted from specific log files. In the following we will analyze the log file structure of Debian 8 and CentOS 7.2. The first location to look for log files should always be /var/log/. Depending on their configuration, Apache, Nginx or similar applications write log files to this folder too. System log specifications and locations can be found in the file /etc/rsyslog.conf.

Debian 8:

  • /var/log/auth.log

Logs of successful and failed authentications to your system can be found in this log file. It is also logged when a user invokes commands via sudo.

  • /var/log/messages

This file contains log entries of general system information, amongst others, you will also find the system upstart logs.

  • /var/log/dmesg or dmesg

The kernel ring buffer can be read with dmesg. You will find information about the system upstart, runtime kernel module messages and many further messages according to the hard and software of your system. By default, dmesg shows the full ring buffer. However, the output can be customized by adding specific parameters. A thorough documentation can be found on the manual page (man dmesg).

  • /var/log/syslog

This is one of the most important log files in general. Every Linux process is free to log to the syslog by implementing the syslog interface. It also logs the system upstart and executed cron-jobs.

CentOS 7.2:

As the log file structure is quite similar to the one of Debian 8, we will just mention the differences.

  • /var/log/secure

This log file is the equivalent to /var/log/auth.log in Debian systems. All kind of authentications are logged here.

  • /var/log/messages

There is no separation of /var/log/messages and /var/log/syslog in CentOS, all system logs of processes which implement the syslog interface can be found here.

  • /var/log/cron

Cron specific log files are not part of the syslog as in Debian. They can be found in the above mentioned file.


Log analysis via Systemd

Systemd is basically the standard Init system of nearly all major Linux distributions today. Since at least April 2015, when Debian and Ubuntu switched to Systemd, every Linux administrator or user has been in touch with Systemd. As Systemd is a complex system, we will only take a look into the log analysis functionality provided. Every process in Systemd is identified as a unit. All active units can be shown via the following command:

systemctl list-units

When appending the parameter --all, this command also shows all inactive units.

Logs being created by Systemd are managed in the so called Journal. These logs can be accessed via the journalctl binary. If journalctl is called without any parameter, it will print out the whole Journal. However, it is also possible to output the log entries of specific units only. In the following example, we are going to analyze the log files of the Apache web server.

journalctl -u httpd

It is also possible to restrict the output with the parameters --since and --until.

journalctl -u httpd --since "2016-11-01 20:00:00" --until "2016-11-03 20:00:00"

The above command will output the Apache log entries between 2016-11-01 20:00:00 and 2016-11-03 20:00:00. It is also possible to use keywords like "today" or "yesterday".

You can also output the log files of more than one unit at the same time. In the following example we will output all Apache and Nginx log entries which have been logged since yesterday.

journalctl -u httpd -u nginx --since yesterday

If the parameter -f is used, all desired log entries are shown in real time.

The above was only a slight view into the possibilities of journalctl, there are several other useful features which are described on the manual page (man journalctl).


Log analysis via Windows Event Viewer

Windows Event Viewer Overview

In the above picture in the left navigation you can see the entry "Windows Logs". The following entries are most important.

  • Application

This entry will show the events of locally installed applications.

  • Security

Here you can see successful and failed login attempts.

  • System

This entry logs operating system internal events and errors.

Via the entry "Custom Views" -> "Server Roles" -> "Remote Desktop Services" you can see RDP related events and errors.

Potential hardware issues can be identified via "Application and Service Logs" -> "Hardware Events".

Useful for error analysis can also be the overview which can be seen via "Overview and Summary" -> "Summary of Administrative Events", it provides a summarized overview of the system status in general.


Plesk Onyx basics: The first steps

Plesk is a commercial web hosting platform developed by Parallels. It is available for Linux and Windows based operating systems and therefore for any operating systems offered by us.

Together with our partner Plesk, we are currently offering you Plesk Onyx one month for free. Simply select one of the below listed editions of Plesk Onyx and try it, before you buy and pay for it! Only available in combination with our VPS: Plesk Onyx now one month for free.

The current version of Plesk is version 17 (Onyx) which we offer in three different editions:

  • Web Admin Edition: This edition is targeted at users who only want to administrate their own websites. Unnecessary features such as customer/reseller management are not included in this edition.
  • Web Pro Edition: With this edition, you can host up to 30 different domains. Also, all features apart from the reseller management are available in this edition.
  • Web Host Edition: With this edition, you can host an unlimited amount of domains. There are no restrictions on behalf of Plesk. The Web Host Edition is the most extensive of all Plesk editions. It includes every feature - from reseller management over security core features until automatic outbound spam protection.

This tutorial, however, is restricted to the basics you need to know. We will show you how to add domains, FTP accounts, databases and e-mail accounts.

At first, we log in at our Plesk webinterface. In order to do so, we use the browser and type in our IP address and port 8443 (e.g.

We login with the login credentials we received via e-mail...

... and land directly on the main page of the Plesk webinterface. In our case there is already a domain added, in your webinterface the main page might look a little different.

Add a domain:

We click on "Add domain" on the main page and land on the following page:

We fill in all the text boxes. In the box "Domain name", we fill in our domain (without "www"). Our example domain is "example.com". As location for our new website we choose "Create a new webspace".

When choosing IPv4/IPv6 addresses, we choose the IP addresses which we want to use for our newly created domain. Choosing the username and the password are, of course, completely up to you.

The first step is already done now. After clicking on "OK", the new domain is added on our server.

Now we can upload the data for our homepage to the server. Usually, this is done via FTP. Luckily, Plesk already created an FTP account for us when creating the new domain. So all we have to do is opening an FTP client of our choice (e.g. FileZilla) and connect with the login credentials we just set for our new domain.

What is missing now is a database for our website. By clicking on "Databases" and "Add database", we can create a new database:

Again, we fill in all text boxes. In order to connect to that database, we have to create a new database user. Please note down its username and password, you will need it for your website later! When asked about access control, we choose "Allow local connections only".

After we created the database, the following screen will pop up:

Here, we could also import a dump of an already existing database. However, this tutorial is limited to the basics only.

Create an e-mail account:

What we need now is an e-mail account for our domain we just added. Plesk offers a comfortable way to do so as well. We click on "Mail" on the left side of the main menu and then choose "Create Email address":

After we filled in all the text boxes we click on "OK" in order to create the new mail account. Please remember to note down the access data, you will need them later!
Once the mail account is created, we can login on our mail webinterface on "webmail.example.com" for sending and receiving e-mails.

Sounds good to you? Great 🙂

If you are ready to try Plesk Onyx now, we would like to mention our current campaign with Plesk Onyx one more time. Get Plesk Onyx one month for free, in combination with one of our VPS. Select the model of your choice in our VPS overview and opt for your preferred Plesk Onyx edition during the configuration process.

Posted by: Florian | Tagged as: , , , , 1 Comment

The SSL certificate

Some of you might wonder in which situations an SSL certificate should be used. This tutorial will help you to find an answer whether or not you should upgrade your website or anything else by adding encryption.

The most important parts of a certificate are the public key and the private key.
The following image shows you what is happening when a client tries to establish an encrypted connection to some webserver.



First the client contacts the server and offers available encryption types, the server and the client come to an agreement on which type to use.
The web server sends the public key to the client so the client will be able to encrypt its requests. The webserver got his private key to decrypt all encrypted client requests. With the private key you are able to decrypt all client requests which were encrypted with the public key, that is why you should never hand out your private key to any third party.

To show you the advantage of using encryption, we created an HTML page containing a simple form which can be found on many websites. In the textfields we entered a username and password.

The username we chose: test@contabo.de

The password we entered: "unencryptedpassword"

To show the difference between encrypted messages and not encrypted messages, we captured some packets using a networking-tool.

Without any encryption we could easily extract the username and password used, we could also see which sites we visit.


With encryption enabled we could not find neither username nor password.
It just shows a packet containing some encrypted data, without the private key we cannot determine which data was actually sent.

If you are running a website, an email server or just an FTP server, it is always up to you to offer encryption or not. Offering encryption to your customers is the best way to act professionally.

There are many types of encryption, this post just handles certificates. Usually encryption algorithms have not changed for years, if you are going to optimize your server you will of course have to think about encryption types, etc.


The real meaning of those connection warnings:

If you are running a web interface (cPanel, Plesk, Webmin etc.) you probably encountered a warning as follows:


"The connection is not private", usually you should rethink if you really want to proceed. There is the possibility that some server got hijacked and you are redirected to the wrong website. In this case the warning pops up because the certificate is not valid for the domain we entered. On a web interface you will get a similar warning when using a so called "self signed certificate". Your browser got a list of authorities which it will trust, signed certificates by one of those authorities will not show any warning.

It can be really unwanted if that warning is showing to all of your customers, sometimes this warning is misinterpreted and the website will be left.

There is only one way to remove this warning, you need to get a certificate signed by some official authority.

Some official authorities, such as "Lets Encrypt", will sign your certificate for free, this is a nice option but not really recommended on a production environment. Usually the domain validated certificate or wildcard  certificate is being used for production environment, those certificates usually are valid for 365 days (1 year).

There are some differences between single domain, multi domain and wildcard certificates. Usually you would want a certificate for "yourdomain.tld" or "www.yourdomain.tld". A single domain certificate will be valid only for one of those domains, a multi domain certificate alias UCC (Unified Communications Certificate) is valid for all domains included within that certificate. In case you want "www.yourdomain.tld", "yourdomain.tld" and "subdomain.yourdomain.tld" within a single certificate, a UCC should fit your needs.

There is also some extended validation available, some bigger companies take advantage of this (e.g. PayPal pp_ev). At this point I want to mention that the private key and certificate will always remain the same, there is no encryption change, the certificate will just get signed.

Right after you got your certificate signed by some official authority, everyone will be able to access your encrypted website without any warning.


Encryption is important, all services (email server, FTP server, web server, etc.) running on your server should offer a way to establish an encrypted connection. There is no need of installing a signed certificate on each service, for most services self-signed certificates are fine.


Posted by: Gianni-Donato | Tagged as: , , , , 4 Comments

Using your nameservers in cPanel and Plesk

To use your domain in the Internet, you need to configure nameservers. The nameservers are needed to resolve the domain names into IP addresses. We recommend to use our nameservers (ns1.contabo.net, ns2.contabo.net, ns3.contabo.net) for your domains. We provide redundant servers in different data centers and you can easily manage your DNS zones over the customer control panel. But for several reasons it can be necessary to use your own nameservers.

This tutorial provides short instructions how to manage your own nameservers with cPanel and Plesk. For most domains extensions (TLD), it is necessary to use at least two different IP addresses for two different nameservers.

In this tutorial we are going to use the domain "yourdomain.com" and want to use the nameservers "ns1.yourdomain.com" and "ns2.yourdomain.com" with the IP addresses "" and "".


To use an additional IP address for a second nameserver, you will need to add the IP address in WHM at "IP Functions" - "Add a New IP Address". The DNS server will be accessible on all configured IP addresses on your server. You can use different IP addresses for the nameservers than for your website.

To use the nameservers with your domains, you will need to add them in WHM at "Server Configuration" - "Basic Webhost Manager® Setup". At the end of the page you can enter the nameserver you would like to use. After you entered the nameserver, you need to select "Configure Address Records". Please enter the IP address you want to use for this nameserver and press "Configure Address Record". After this is finished you can close the windows using "Close". Please note, that in some conditions -- for example if the nameservers are currently configured on a different server -- the entries for the nameserver will not be updated immediately. After you have finished, please press "Save changes".

Now you can "Create a New Account" with your domain at WHM - "Account functions". The configured nameserver will be used in the configuration of your new account and the DNS zone will be created with default values. You can see all DNS entries at WHM - "Edit DNS Zone".

On this page you can manage all DNS entries of your domain. Most entries are for internal usage and should not be changed. To manage user defined values, we recommend to use the "Zone Editor" at "Domains" in the cPanel account.

At last, you will need to configure your domain settings at your domain registrar. You need to change the nameserver entries. If you want to use subdomains of your domain, for example "ns1.yourdomain.com" for your domain "yourdomain.com", you will need to configure so called "Glue Records". This means, the domain registrar does not only save the name of your nameservers, but also the IP address. In some cases it is required to configure the new IP addresses for the nameservers at the current DNS zone of your domain.

After you have finished the configuration, it can take up to 24 hours until the new settings are propagated correctly. To test your nameservers and the name resolution for your domain, you can use tools like intoDNS. This tool will test the settings at your DNS provider and of your nameservers.


At first you will need to create your domain in Plesk. At "Websites & Domains" you can see an overview of your domains.

To use a second IP address for your nameservers, the IP address needs to be configured at "Tools & Settings" - "Tools & Resources" - "IP Addresses". The DNS server responds to all configured IPv4 and IPv6 addresses. You can use different IP addresses for your nameservers than for your websites.

All DNS zones in Plesk will be configured based on a DNS template. You can find the settings at "Tools & Settings" - "General Settings" - "DNS Template". In the DNS template you can configure all entries you need for all domains on your server. Beside some default entries and entries for internal services like webmail, the settings for the nameservers can be found here. By default Plesk creates two nameserver entries "ns1.yourdomain.com" and "ns2.yourdomain.com", but with the IP address of your domain. If you want to use the same nameservers for all your domains, we recommend to change the NS entries and the IP addresses of your nameservers in the template. If you want to use different nameservers, you can also change these settings later in the DNS zone of your domain. After you have finished the configuration of the DNS template, you will need to apply the DNS template to all domains.

Now you can see the new settings also in the DNS zone of your domain. You can manage the DNS zone at "Websites & Domains" - "yourdomain.com" - "DNS Settings". There you can add, edit and delete DNS entries.

At last, you will need to configure your domain settings at your domain registrar. You need to change the nameserver entries. If you want to use subdomains of your domain, for example "ns1.yourdomain.com" for your domain "yourdomain.com" as your nameservers, you will need to configure so called "Glue Records". This means, the domain registrar does not only save the name of your nameservers, but also the IP address. In some cases it is required to configure the new IP addresses at your current DNS zone of your domain.

After you have finished the configuration, it can take up to 24 hours until the new settings are propagated correctly. To test your nameservers and the name resolution for your domain, you can use tools like intoDNS. This tool will test the settings at your DNS provider and your nameservers.

Posted by: Torsten | Tagged as: , , , 2 Comments

Installing Windows Hyper-V 2016 on a dedicated server

Welcome to our tutorial about installing Hyper-V on your Dedicated Server with Windows Server 2016.

Step 1

Installing Hyper-V

After receiving the login information to your dedicated server you might want to find out how Hyper-V can be installed. Hyper-V is an additional Server-Role for Windows which can be added within the Server manager.

On the upper right side you will find the option "Add Roles and Features"


After clicking on that option a new windows will popup.

Navigate to "Server Roles" and select Hyper-V

Now select the checkbox and click on next.
You will be asked if the install manager is allowed to automatically reboot your server.

At least one reboot is required !

The installation can take up to one hour, depending on the rented dedicated server model and the storage configuration it might be completed within several minutes.



Step 2

Configuring Hyper-V

For configuration we are going to use the Hyper-V Manager, you can access this tool by clicking on "Tools" on the upper right side within your Server-Manager window.

Before creating a virtual machine, we have to configure the network interface. Open the "virtual Switch Manager" to perform the necessary steps.

Now we are going to create a new external switch:

Enter a name and description (notes) of your choice.

Select the external network and make sure that the checkbox "allow management operating system to share this network adapter" was selected. If it was not selected your server might be inaccessible afterwards.

Step 3

Configuration of the Network

On the taskbar at the very right side you will see the network icon.
Perform a rightclick to open the following dialogue:

Another window will open, navigate to your network devices:

Now rightclick on the recently created network device and select "Properties":

Select "Internet Protocol Version 4" and once more select "Properties"

Insert your Server's IP-Configuration.

Please double check the information you are setting up, otherwise your server will be inaccessible.

Step 4

Creating a virtual machine

For now we are almost done, the next step shows you how to create a virtual machine.

Within the Hyper-V Manager select "New" to create a new VM:

Configure the VM with your preferences:

Tip: Selecting "Generation 2" for Windows 8 (Windows Server 2012) VMs and later will improve the performance.

As network device you should select the Hyper-V Switch we have created before.

Select the .ISO you want to install and start the installation.

After the installation was completed you need to set up a public IP within the VM.
If you do not have any additional public IPs assigned to your account, please contact us at support@contabo.com to order additional IPs.

After a public IP was set up, your VM will be able to establish connections.


Changing the Windows Administrator password – The easy way

Today we are going to show you how to change your Windows Administrator password the easy way.
This tutorial works with almost all Windows versions starting from Windows XP/NT (Windows Server 2003).
On Windows 10 or Windows Server 2016 you should make sure that you are using local user accounts - not any online accounts.

Start the CMD.exe with administrator privileges, e.g. "Windowsbutton +R" and type in CMD.exe


The CMD.exe application should now pop up soon, the syntax for changing the password is very simple:

net user <username of the account you want to change the password> <new password>

Example :

net user administrator SomesecurePW2016

Of course you should never use this as a password, nor should you ever use it only for "testing" purpose.

Another option would be to use "*", this will prompt you to enter a password. On a desktop Windows operating system like Windows 10, you could remove the password by just entering an empty value.


Posted by: Gianni-Donato | Tagged as: , , , , 2 Comments