This is an example. Depending on your situation, you may want to regroup or split out the various services on fewer or more servers.
Situation
- One physical office
- Up to 50 team members at one main office
- Dozens of team members working remotely, connecting in via the VPN
Required hardware
Server 1: Gateway
On premise device which provides
- Gateway
- Firewall
- VPN
- Print Server
- Internal DNS
- etc.
Requirements
- 2 network cards
- RAM: 1 gig (Any new computer will have sufficient CPU and RAM)
Server 2: Web and Collaboration
In data center (same or different as #2)
- Emails (IMAP and SMTP)
- Public website with logins to access the Intranet (Wiki, Blog, Calendar, etc.)
- Real-time collaboration (XMPP, and WebRTC)
- SSL certificates from Let's Encrypt
- File server (shared drive)
Requirements
- IP address and domain name
- RAM: 3 Gigs minimum for Videoconferencing.
Server 3: Virtual Machines
In data center (same or different as #2)
- Virtual machines with Kimchi to supply dev / testing environments or virtual desktops for team members
Requirements
- IP address: one per per VM
- RAM: 2 to 3 gigs per running VM
Desktop and mobile clients
See Software Components