Hi,
For a small to medium-sized deployment of Odoo, it is recommended to have one server for the Odoo application and web server, and a separate server for the PostgreSQL database. Linux is generally preferred due to its stability and performance, with Ubuntu Server 20.04 LTS or 22.04 LTS and Debian 10 or 11 being the most recommended distributions. While Windows is supported, it is less common for production environments. For a company with 5 employees, a server with 2 CPU cores and 2GB RAM is sufficient, but as the company grows, such as with 20 employees, a server with 4 CPU cores and 8GB RAM is advisable. For 90 employees, separating the application and database servers is recommended, and for 250+ employees, load balancing across multiple application servers may be necessary. For networking, using a static IP address is recommended, and although a VPN is not strictly required, using OpenVPN can enhance security for remote access. Security practices should include enabling a firewall (e.g., UFW on Ubuntu), keeping the system up to date, using SSH key authentication instead of passwords, and implementing regular backups. For antivirus, it is generally not required for Linux servers if good security practices are followed, but ClamAV, an open-source antivirus tool, can be used if needed.
Regards