I apologize for the English language deficiencies but I will try to clearly describe the solutions I have uncovered. So far I have found three solutions to my problem.
- Basic solution
Use Nethserver’s built-in solution to separate Internet and local traffic. This implements each feature according to the Red and Green network interface settings.
Pro
With this solution, the built-in features of Nethserver work well, you can set in a graphical interface which network interface they are available on. In this situation, Nethserver works like a router. If you use your own router, this is not the best solution …
Contra
Unfortunately, with this solution, the services what I have installed are available from all network interfaces, even from the Internet, due to the general settings (Nagios, Zoneminder, etc.). I think another problem is that some services are also available through VPN. I would not allow some services to be accessed via VPN either. I think it’s a security risk. I am looking for a solution to this problem!
- Apache virtual hosts
Create an apache virtual host for each service. To do this, modify the httpd.conf file by adding a new virtual host port to Listen. The lines <VirtualHost *: portnumber> and must be added to the apache configuration of the self-installed network service. Be sure to add the SSLEngine On line.
Pro
This is a standard solution for customizing services and Apache provides the right tools for configuration. Unfortunately, due to the Nethserver configuration, the above unique procedure must be followed.
Contra
Unfortunately, the apache configuration has been significantly modified from the original CentOS configuration, therefore, you must modify the apache config files to do this. These settings may change the behavior of Nethserver and may be overwritten when changing the Nethserver configuration. This is not the best solution …
- Control access to services
Apache directives allow you to restrict access to network services. Modify the configuration of your network services so that they are only available from the allowed network address ranges. To do this, you only need to modify the apache config file for each service, but you do not need to modify the Nethserver apache config. To do this, you must change the Require or Follow directive in the apache file of the network service you have installed. To do this, enter the network address range from which you allow or deny access.
Pro
This is a simple, easy task and does not affect the Nethserver configuration.
Contra
If you want to change the availability of Nethserver’s built-in network services, you can do so, but they may be overwritten when you change Nethserver’s built-in network services configuration.
Conclusion
I think the best solution is to use solutions 1. and 3. together if you are not using your own router and the Nethserver is connected directly to your ISP’s modem.
If you are using your own router and Nethserver is not performing a traffic management task then I think Solution 3. is the right one.
What do you think about that?
Thanks and Regards