Windows Host vs. Linux Host

Previously, we have explained fully about what a server is, different servers in web hosting and other related things like the control panels, SSL and etc. In the posts about different control panels, we kept talking about Linux or Windows hosts. In this post, we are going to talk about the differences between Linux host and Windows host.

Linux host vs. Windows Host

Windows Servers

As you know, the first step of having a successful website is having a good domain. We will explain how you can choose a good domain, in a future post.

After choosing a domain, now you need to choose your hosting service. If you have a website for personal use or for a small business, this means you don’t need that much space and resources. So, shared hosting can be a perfect solution for you. The first things you’ll see at the time of buying a shared hosting plan are: Linux host, Windows host, cPanel, Plesk, DirectAdmin, and etc. As we’ve mentioned before, some control panels work on Linux, some work on Windows and some work on both.

  • cPanel, Plesk, DirectAdmin,..: These are hosting control panels that we’ve explained each of them fully before.

Choosing the control panel depends on what OS has been installed on the server. So, if you need a specific control panel, you need to buy a hosting plan that can support the control panel for you. For example, if you specifically want cPanel as your control panel, you need to buy a Linux server because cPanel only works on Linux. We should mention that the OS that we install on servers are not the same as the ones you install on PC. There are special distributions of Linux and Windows just to be installed on servers. Another thing to mention is that there are other operating systems that you can install on servers but Linux and Windows are the most common and professional ones.

Linux Servers or Windows Servers?

If you are using a CMS like WordPress, Joomla, DNN and etc, you can check their website to see what services they can run on. You can also ask your developer about the service the website needs. As we mentioned, your website’s programming language is really important. For example, PHP works on both Linux and Windows hosts. But it has more features and options on Linux so you better have it on a Linux host.

Hope you enjoyed this post if you did, you can visit our blog for more!

CSF Configurations on Webmin

In our last post, we explained fully about CSF and its installation on Linux servers. Now, we are going to show you how you can install and access CSF configurations on the Webmin control panel.

Webmin is a free and open-source control panel that we have explained about different functions of it like adding users, installing SSL, and etc in our previous posts. On most control panels, after you install CSF on your servers (which we have already shown you how you can do that in our last post), you’ll see it on the Plugins page. But on Webmin, this is different. There are some steps you need to do to access CSF.

CSF on Webmin

As we said above, before accessing the CSF configurations, first you need to install CSF on your servers. Take a look at the link below if you need help installing CSF:

CSF Installation on Linux Servers

After the installation, the CSF is in the testing mode so we need to change that. First, go to the path below:

Vi /etc/csf/csf.conf

Change the testing mode from 1 to 0 and then restart the CSF and LFD using these commands:

Service csf restart
Service lfd restart 

Now follow these steps to access CSF configurations:

log into Webmin and go to the Webmin tab. Find the “Webmin Configuration” on the menu and open it.

On this page, you’ll find “Usermin Modules”.

In the “Install Modules” section, you need to choose the CSF setup file which is in the path below:


Choose the file and click on the Install Modules button.

At the end of the installation, you’ll see a Firewall icon on the dashboard. By clicking on that icon, you can access different CSF configurations and features like allowing or denying IPs.

CSF Configurations

Hope you enjoyed this post if you did, you can visit our blog for more!

CSF Installation on Linux

When you buy a VPS or a dedicated server, before installing a control panel, WHM or anything else on that server, you need to make sure the server is secured. Some people think that just because their server is brand new and doesn’t have that much data on it, hackers won’t attack them. However, you should know that sometimes hackers don’t care about data and all they want are your server’s resources. For example, hackers can attack your CPU or bandwidth with a DDoS attack or etc. There lots of ways to secure a Linux server. The most famous way is installing CSF which is a type of firewall. CSF stands for Config Server Firewall and it is a free software with lots of tools to help you secure the server. In this post, we are going to show you how you can install CSF on your Linux Server.

Configure Server Firewall

CSF Installation Guide

Installing software on servers is different from installing software on a PC. Since you don’t have access to the server physically, you need to connect to the server remotely. SSH or Secure Shell is the best way to connect to a Linux server. A Linux server is a server that has Linux as its operating system. SSH is a command-line without GUI that helps you send commands to your server. To establish an SSH connection you need PuTTY software on your computer. After opening the PuTTY program, enter the server’s IP and the port. The default port for an SSH connection is 22 so only enter the port if you have changed it before. After clicking on open, enter the username and the password to log in. * You won’t see anything when you are typing the password but don’t worry just type it and press “Enter” *.


Now enter this command to start the CSF installation:

cd /usr/src && rm -fv csf.tgz && wget && tar -xzf csf.tgz && cd csf && sh

This is what you see before the command:

And here is the message you’ll see after the installation is complete:

As the last step, you need to install iptables on your server. To do that, enter this command:

perl /usr/local/csf/bin/

You will see the message above again when the installation is complete.

With these a few easy steps, you have installed CSF on your server. Now you can log into your WHM and from the Configserver Security &Firewall section, config CSF however you want.

Hope you enjoyed this post if you did, you can visit our blog for more!

Create an email address and manage Webmail on Webmin

In this post, we are going to explain how you can create an email address with your domain after @ on the Webmin control panel.

As we have mentioned before, if your company or website has its own webmail, it can help you look much more professional. By your own webmail, we don’t mean having an email address from one of the famous webmails like Google, Yahoo or etc. We mean having webmail and email addresses that include your domain name after @. Which one of the following email addresses do you think looks better on the contact us page of your website?


Surely as we explained above, the second one is much more professional. So in order to have an email address like the second one, you need a control panel. We have explained how to create webmail on CyberPanel, cPanel, DirectAdmin, Plesk before and now we are going to explain it on Webmin.

Add a Webmail on Webmin

From the menu on the left, find the “Edit users” option.


As you can see in the picture below, you need to click on the “Add users to this server” button.

Now you can easily type in your preferred phrase or word before @domain to create the email address. You should also choose a password for this email address and don’t forget to keep that password somewhere confidential.

*If you don’t know what email addresses you should make for different departments, we gave some examples that are commonly used in our post about Webmail*

After creating the email, return to the “Edit users” page and select the user you just created. Then just like the picture below, click on the “Login to usermin” option.

Usermin uses a different port which is 20000 and when you log into it you can see all of the needed sections like Draft, Inbox, Sent and etc.

Hope you enjoyed this post if you did, you can visit our blog for more!

DNS Configuration on Webmin Control Panel

In this post, we are going to show you how you can Configure DNS on the Webmin control panel.

As you know Webmin is a free and open-source control panel that is supported on lots of operating systems. We have explained a lot about Webmin in our previous posts. We explained about Webmin’s installation, how to add a user and create a database on it, how to install an SSL certificate and etc.

How to Configure DNS on Webmin

As the first step, log into Webmin at https://IP address:1000.

From the menu on the left, click on “Servers” and then from the dropdown, click on the “Bind DNS Server”. On the new page, you’ll see a table of all the existing DNS Zones. On the top and the bottom of that table, there are some options. Click on the “Create master zone” to continue.

On the Create master zone page, you need to enter some information:

  • Domain Name: The domain you are configuring DNS for.
  • Master Server: write a hostname here.
  • Email Address: Your Email address.

Give this information and click on the create button.

Click on “Return to zone list” and find addresses.

Here you’ll see two fields:

  • Name: Choose a name and write it here. For example Webmin.
  • Address: Write your server‘s IP.

Create the Address record and on the bottom of the page click on the “Return to record type” button.

On the new page, find the Name Server’s icon and click on it. There you’ll see two fields:

  • Zone Name: Pick and type in any name such as Webmin.
  • NameServer: Write a nameserver like

Create the NameServer record and click on the “Return to zone list” to go back.

On the Bind DNS Server page, click on the “Edit config file” option. Enter the server’s IP in the “listen on port” and “allow query” section and save the changes. Now after you returned to the last page, click on the “apply configuration” button then stop and start it again.

In the end, on the Network section, click on “Add Allowed Services” and save.

Hope you enjoyed this post if you did, you can visit our blog for more!

How to Install SSL Certificate on Webmin

In our last post, we showed you how you can create a database on the Webmin control panel. In this post, we are going to explain how you can install an SSL certificate on Webmin. This is for Ubunto and the process may differ on other Operating systems.

We have a full series of posts about SSL, how you can have it and etc on our blog page. If you want to know why SSL is a necessity for a site, you can read those posts. However, to explain very shortly, SSL is the green lock next to your domain that shows your website is trusted.

Install SSL Certificate on Webmin

After you order an SSL certificate, you’ll get a zipped file from your SSL provider. The files you need from that zipped file are: (the “example_com should be replaced by your actual domain name)

  • example_com.crt
  • example_com.key

So first you need to upload these three files to the server. To do that, log in to Webmin and from the menu choose the “other” option and from the dropdown, choose “Upload and Download“. On this page, you see “Upload to Server” on the top. Choose the files from your device and click on the Upload button.


Now you need to go to Apache Webserver’s page from the menu. If you can’t find this option there, just simply go to “Unused Modules” and install Apache Webserver.

Now you can find the “Apache Webserver” in the dropdown menu of the Server option on the menu. On this page, you see the “Global configuration” on top as shown in the picture.

Click on the “Configure Apache Modules” icon.

Here you’ll see a list of all Apache modules. Select “SSL” and click on the “Enable Selected Modules” button.

Now go back to the Apache Web server’s main page and click on the “Create virtual host” tab. Here you need to give some information:

  • Port: Write 443.
  • Document Root: The path you want this to be saved on.
  • Server Name: Your domain

An then click on the “Create now” button to continue.

Go to the “Existing Virtual Hosts” tab and select the Virtual host you just created.

On the Virtual Server Options page, click on “SSL Options“. Edit the information as shown in the picture.

This is all done and as the last step, you just need to restart Apache to make the changes work. So, to do that, from the menu click on “System” and from the dropdown choose “Bootup and Shutdown“. On the list it shows you, choose “apache2” to restart. Your SSL certificate has been installed successfully.

Hope you enjoyed this post if you did, you can visit our blog for more!

Create a DataBase on Webmin Control Panel

In our last post, we showed you how you can create a user on Webmin. As you know, Webmin is a free control panel. In this post, we are going to show you how you can create a database on this control panel.

First, you need to log into your Webmin account. To do that, you can access your Webmin at the address below:

https:// Your IP:1000

Create a database on Webmin

After you logged in to Webmin, go to the Virtualmin tab and click on the domain.

On the menu on the left, click on the “Edit Database” and then “Create new database”

Now you have to type in a name for your database and choose its type. After that click on the Create button to continue.

Now you can go to the database’s page to create a user. To do that, after you went to the database’s page, click on the User Permission just like the picture below:

Type in a username and a password. In the Permissions section, set the required permissions for the user you are creating. In the end, click on the Create button.

*You can access these permissions from the Webmin tab. So if you want to change permissions for any of your databases, go to the Webmin tab then from the menu click on the “Servers”. Then you’ll see some options that one of them is MySQL Database Server, click on that to continue. Here you’ll see the list of all the databases you have created before. On top of the page, click on the Database Permissions as you can see in the picture below.

Choose the database and the user that you want to edit their permissions.

Hope you enjoyed this post if you did, visit our blog for more!

Upload a Website’s files to Webmin File Manager

Webmin is a free and open-source control panel for Linux and Windows. Previously, we have explained about Webmin’s installation and how to add a user to it. In this post, we are going to show you how you can upload a website’s file to Webmin’s File Manager.

When you want a website to be accessible through the Internet, one of the things you should do is to upload the website’s files to the server. One way of doing this is to upload the files to the file manager of your control panel.

Upload Website files to Webmin’s File Manager

َAs you know, Public-html is a file that every website must have since it includes all the things you want to be shown when someone types in your domain. Now When you want to upload a website’s files to Webmin these are the steps:

  • Create a Virtual Server:

From the dashboard go to the Virtualmin tab and then from the menu, choose the “Create Virtual Server” option. Type in your username and password to create the virtual server.

  • Go to File Manager:

When you log into the user’s panel, you see a lot of functions you can do. One of the options on the menu is the File manager. In that window, click on the file and then on the “Upload to current directory” option. And now you can easily upload your files. The steps that we just explained are shown in the pictures:

By right-clicking on each file, you can do things like copy, move, delete, edit and etc. You can also do functions such as Change permissions by clicking on the properties.


In our future posts, we will give you more explanation about Webmin’s features.

Hope you enjoyed this post if you did, you can visit our blog for more posts like this.

How to Add a User to Webmin Control Panel

In our last post, we guided you through the installation and post-installation process of the Webmin control panel. In this post, we are going to show you how you can add a user to this control panel.

Just like any other control panel like cPanel, DirectAdmin, CyberPanel, Plesk and etc. there are two access levels for Webmin. You can either log in as root (admin) or as a user. If you log in as root, you have access to everything and you are unlimited. However if you log in as a user, you are limited to some actions that the admin gave you the permissions for. This means that only admins (anyone with root access) can add a user and set user’s permissions.

Add a User to Webmin

1- So as we explained above, the first step is to log in as root to the Webmin control panel. Webmin has two main sections:

  1. Virtualmin: Here you can create VMs.
  2. Webmin: Here you can add new users and set their permissions.

2- So after logging in to the Webmin’s dashboard, on the top-left side of the window, you’ll see Virtualmin and Webmin. Click on Webmin.

3- From the dropdown, choose the “Webmin Users” option.

Webmin Users

* Create a group: Webmin has this feature that allows you to create groups with preferred permissions. So when you create a user, you can add it to a group and all users in one group have the same permissions. This helps you when you want to create lots of users with the same permissions. Here is a picture that shows you how you can create a group:


so all you have to do is to choose the group’s name and click on the create button.


4- To add a user, on the Webmin Users page click on the “Create new user” option.

Add a user

5- In the first section, type in a name for the new user then choose its group and set a password for it. In the other section, you can set preferred permissions and limitations for the user.

Add a user

6- In this section, since we want our user to have all the needed access as a host, we need to give it all of the modules. So, click on select all and go to the bottom of the page and click on the create button. Now you have added a host to your Webmin.

Create a user

7- To see the host that you added, go to the Webmin users page again and click on the user you want to log in as. On the page shown below, click on the “Switch to User” to log into the user’s panel.


8- This is what your new user’s panel looks like:

User's Panel

Hope you enjoyed this post if you did, you can visit our blog for more!

Webmin Control Panel Installation Guide

Webmin is a hosting control panel that can run on Linux and Windows. However, it has some limitations when you run it on Windows. The best-supported systems at the moment are Solaris, Linux (Redhat in particular) and FreeBSD. This control panel is free and open-source so you can use it with no limitation. In this post, we are going to show you how you can install and setup Webmin on your servers.

Webmin Installation and Post-installation Process

This control panel has an easy installation process. You can upload the installation file using just one command.

1- Establish a remote connection to your servers using PuTTY (for Linux) or Remote desktop connection (for Windows).

2- Now copy and paste this command.

wget && sudo /bin/sh

3- Now go to your browser and type in the address below, to continue the setup process.

https://Server's IP:10000

4- Login to your account with the following details:

  • Username: root
  • Password: Server’s Password

5- On the dashboard, click on the Next button.

Setup process

6- In this step, it will ask you if you need more RAM for the users you’ll be making in the future. This setting can be changed and edited in the future so just skip it.


7- If you are going to host lots of websites on this server, you might have Email spamming problems. To solve this, you can install the ClamAV scanner during the Webmin installation process. If you want to install this scanner, check the Yes box. However, we don’t recommend installing these suggestions for the default installation.

8- In the next step, it asks you if you need Spamassassin to scan your emails. If you need any of these additional features, check the Yes box and continue.

9- Webmin is going to create a database and will get the amount of RAM and Processors from you. So type in the needed amount of the resources to continue the process.

Database Creation

10- Setup a password for your database. You can choose a new password or use the password for the root.

Setup a Password

11- How much space you want the database to have.

Database Space

12- Type in your default NameServers here.


13- One of the best things about Webmin is that you can change and secure your password in different ways. For example, you can hash the password to increase your server’s security.

Your installation is finished and you can use your control panel. In our future posts, we are going to tell you more about this control panel.

Installation is finished!

Hope you enjoyed this post if you did, you can visit our blog for more!