Web server module use and documentation

Since I have nethserver running my small business (DNS, DHCP, NextCloud, SMTP, etc…) and port 80 is already open for letsencrypt cert renewal, I figure why not use it to host my company website. I can’t imagine it gets very much traffic. Most of it is probably hackers and bots. Why pay GoDaddy as a host and add their expensive ssl cert to secure it.

I don’t see a Web server section under the modules section of the official documentation. (maybe I should write it)

Is it advisable to run the company website from NethServer? Are there potential issues with security or bandwidth?

I have found some threads related to the web server module so I will be reading through them in the coming days, but I cant find any official documentation.

NethServer Version: 7.5.1804
Module: WebServer

I think what documentation there is, is here:

That is the first one I read, and I just submitted a git hub pull request to make it a little more readable. However, it really isn’t helping a newbie like myself. That’s why I’m thinking maybe I could work my way through the process and try to document it at the same time. Unless I really shouldn’t run a public website on NethServer in which case I’d be wasting my time.

A little more information:
I have NethServer running on an ESXI virtual machine. There are 4 physical network cards in the server. I could always spin up a dedicated virtual machine to host my website however, NethServer already has port 80 open for letsencrypt. I can see the defalt NethServer page over the internet. Why not host my site instead?

My site has only information and links to other sites. Is there a security risk to my internal network?
What if I add a shopping cart or secure costumer login portal, is there a security risk now?

In my opinion the best way is to build a second virtual nethserver as webserver.

Nethserver supports serving web pages and should be secure. I recommend to additionally use letsencrypt certificates. It should be no problem to add shopping systems. If the sites use php higher than 5.4 you may have a look at the php-scl module. You may also need the mariadb server from the software center if a mysql database is needed.

One way is to use the default virtual host and to put your site to /var/www/html/ via ftp client like gftp or filezilla or (win)scp. Your site will then be shown instead of the Nethserver default page.
You may use an ftp user or enable the default user of the default virtualhost in the virtualhost settings to upload files via ftp:


Another way is to use a virtual host, create your virtualhost with your domain and enable FTP access for it. If you use a virtualhost the Nethserver default page will only be shown if clients don’t use YOURDOMAIN.TLD.

Then you may upload files via ftp with user “yourhost” or via scp, the site is located in /var/lib/nethserver/vhost/yoursite

As FTP is a very old protocol using cleartext passwords, I recommend to disable FTP if not used or use scp instead.

1 Like