Any operating system (Linux, Windows, Mac, Android) flavor and version of your choice will work. We decided to go with CentOS for no specific reason.
Note: if your login doesn't have sudo privilleges you can google or check this out https://www.digitalocean.com/community/tutorials/how-to-create-a-sudo-user-on-centos-quickstart
By default CentOS firewall is running and enabled. You can check with following command in terminal window of CentOS
$sudo systemctl status firewalld
Open two ports 8080 for communication will be used by Automation Interface (OpenHab service) and 1883 will be used by Messaging Interface( mosquitto service) by default. In case you decide to use any other ports than default you need to repeat following steps for those ports also.
$sudo firewall-cmd --permanent --add-service=http
$sudo firewall-cmd --permanent --add-service=http
$sudo firewall-cmd --permanent --add-port=8080/tcp
$sudo firewall-cmd --permanent --add-port=1883/tcp
Doublecheck by following commands:
$sudo firewall-cmd --list-ports
$sudo firewall-cmd --list-service