Configure SMB
Configure SMB Organic Design procedure |
After doing some research, it seems that the most popular and reliable way of achieving an internet-based file share is using Samba over a Virtual Private Network (VPN). Other solutions such as WebDav have turned out to be unreliable and temperamental.
OpenVPN
OpenVPN is a full-featured SSL VPN solution which can accomodate a wide range of configurations, including remote access, site-to-site VPNs, WiFi security, and enterprise-scale remote access solutions with load balancing, failover, and fine-grained access-controls. OpenVPN is a single program that is run on both the server hosting the share, and on the clients which will be accessing it.
Server configuration
First install OpenVPN using apt-get install openvpn The first choice in VPN configuration is whether to set it up using a bridging or routing methodology. Routing is very scalable and is transparent to the software using the network, but it is much more difficult to configure and maintain. The other option is bridging which is simpler to configure, but relies upon the software being used withint the network to be able to route host information itself. Since we only require one application (Samba) and it can be configured to route names as a WINS server, we have chosen to use the bridging configuration.
- The documentation for how to set it up in a bridging configuration can be found here.
Setting up Ubuntu workstations
First install OpenVPN using apt-get install openvpn
Setting up on Windows workstations
On Windows OpenVPN is normally run from the console, which can be a little annoying to have lying on the taskbar all the time. OpenVPN GUI lets you run OpenVPN without this console window. Instead you get an icon in the notification area (the area on the right side of the taskbar) from which you can control OpenVPN to start/stop your VPN tunnels, view the log, change your password and other useful things.