When you want a step up from shared hosting or wish for more freedom to install your own software (such as a VPN), a VPS can be a solution.
But how do you know if your provider respects your privacy?
Enter HarborVPS: the Canadian-owned Swiss VPS company.
Why Switzerland? Switzerland has one of the strictest privacy set of laws in the world. Situated right in the centre of Europe - yet not part of the European Union - Switzerland is at an ideal place for connectivity, with access to AMS-IX and other important exchanges.
But Swiss VPS offers often have a significant problem: their price. Being an almost exotic location, Swiss virtual private servers often come at a premium.
HarborVPS's motto is "Privacy + Performance". The Privacy part is firstly based upon the very location of the servers: Switzerland. It is also linked to the AUP and TOS which allow private VPN services. But what about performance? How does it fare compared to the standards of the industry, namely DigitalOcean and Vultr?
The offer I tested is the smallest and most affordable: Raft at USD 6.95 per month.
It includes 1 vCPU at 3.3Ghz (turbo speed), 512 MB of DDR3 RAM, 256 MB SWAP, 15 GB of RAID SSD storage, and only 500 GB of transfer with 1 IPv4 address.
HarborVPS colocate their servers in Zurich at PrivateLayer - which means they own their hardware instead of leasing it. PrivateLayer are well-known in the world of VPNs, as they are the datacenters often used by providers for their Swiss location. Private Internet Access and Speedify both have their Swiss server at PrivateLayer for example.
Signing up to HarborVPS is quite a standard process: as with all WHMCS-powered control panels, you'll be asked to input a domain name for your VPS. While this step could seem weird at first, it is part of the usual signup funnel for this particular platform.
When validating your order, you'll have to create an account in the billing area of HarborVPS.
Payment can be made either with Paypal, pre-paid debit cards or cryptocurrencies.
VPS setup took less than 5 minutes, as it was fully automatic.
You can choose among a limited list of OS templates, which for now include
- CentOS 7
- Debian 8 or 9
- Ubuntu 16.04, 16.10, 17.04 or 17.10
The control panel is Proxmox, which allows for starting/stopping your VPS, reinstalling from a template, and other usual tasks.
One thing to note is that backups are included in the price, a feature seldom present in unmanaged VPS offers. There are both automatic backups and the possibility to make your own; although creating a snapshot erases the previously saved one. Snapshots and backups cannot be downloaded - but you can restore them easily.
Connectivity for a private server is critical: peering and routing differs from provider to provider. This determines the latency your visitors or users will experience between their devices and your server - or your browsing experience if your use the VPS for VPN purposes.
HarborVPS advertise a 10Gbit/s network. This is obviously not the bandwidth dedicated to your particular VPS, but to the hypervisor. In other words, you share this massive bandwidth capacity with other customers whose VPS is on the same physical machine.
Still, you can expect at least over 100 Mbps for the upload speed, and around 500 Mbps for the download part.
Unfortunately, the network is limited to only 500 GB on the smallest plan.
Unlike with some VPS offers, you won't find old-as-dirt processors straight from the bargain bin, or as it is often the case, the latest ebay decommissioned server lot auction. All HarborVPS's servers are of the SuperMicro brand, with Dual Xeon E5-2670.
Unixbench reports a single-core CPU performance of around 600, which is decidedly average.
Disk access is fast, but does not seem to be the newer type of SSD: NVMe, which would allow for speeds even greater than SATA 3 can achieve.
Virtualisation types for Virtual Private Servers do not come with the same degree of freedom.
The cheapest system is OpenVZ, which you will often find in low-end VPS offers. With OpenVZ, your kernel is shared. As such, this type of virtualisation can offer better performance at the expanse of limited customisation and a shared kernel from the last decade. With OpenVZ, you are stuck with a GNU/Linux kernel from the 2.6 branch.
At the other end of the spectrum, KVM is full virtualisation: you can install whatever OS you want on it, even BSD variants and Windows.
LXC, which stands for Linux Containers is in the middle. An LXC VPS is not exactly a full-fledged Virtual Machine, but allows for more recent kernels than OpenVZ.
One interesting fact is that LXC is actually the precursor to Docker, the now-ubiquitous container format. Yet, trying to install Docker on a LXC VPS will fail, as it would require disabling SELinux on the host machine - which would put the segregation of users' data at risk.
Support is fast and usually replies under an hour. You can raise a ticket in the client area, or use the live chat widget on the homepage.
More surprisingly, support is also available through the Telegram messenger app.
Here are some benchmarks, executed with a freshly-installed system. ServerScope benchmark was unable to complete because of LXC-related errors.
Benchmark started on 16-Apr-2018 23:28:30 ## System Information OS Name : Ubuntu 16.04.4 LTS (64 bit) Kernel : Dedicated / 4.13.16-2-pve Hostname : lxctest CPU Model : Genuine Intel(R) CPU @ 2.30GHz CPU Cores : 1 core @ 2299.948 MHz CPU Cache : 25600 KB Total RAM : 512 MiB (Free 489 MiB) Total SWAP : 768 MiB (Free 756MiB) Total Space : 47GB (1% used) Running for : 5hrs 10min 22sec ## CDN Speedtest CacheFly : 115.27 MiB/s | 922.13 Mbps | ping 10.939ms CDN.net : 54.74 MiB/s | 437.95 Mbps | ping 19.111ms Gdrive : 30.02 MiB/s | 240.13 Mbps | ping 11.108ms ## North America Speedtest Softlayer, Washington, USA : 10.80 MiB/s | 86.39 Mbps | ping 98.551ms SoftLayer, San Jose, USA : 1.67 MiB/s | 13.33 Mbps | ping 158.491ms SoftLayer, Dallas, USA : 883.79 KiB/s | 6.90 Mbps | ping 165.203ms Vultr, New Jersey, USA : 23.49 MiB/s | 187.91 Mbps | ping 93.972ms Vultr, Seattle, USA : 10.92 MiB/s | 87.39 Mbps | ping 154.788ms Vultr, Dallas, USA : 14.06 MiB/s | 112.47 Mbps | ping 131.861ms Vultr, Los Angeles, USA : 8.17 MiB/s | 65.38 Mbps | ping 162.471ms Ramnode, New York, USA : 11.75 MiB/s | 94.02 Mbps | ping 97.160ms Ramnode, Atlanta, USA : 8.87 MiB/s | 71.00 Mbps | ping 110.235ms OVH, Beauharnois, Canada : 346.07 KiB/s | 2.70 Mbps | ping 100.089ms ## Europe Speedtest Vultr, London, UK : 86.64 MiB/s | 693.13 Mbps | ping 24.287ms LeaseWeb, Frankfurt, Germany : 169.38 MiB/s | 1355.05 Mbps | ping error! Hetzner, Germany : 87.13 MiB/s | 697.07 Mbps | ping 14.142ms Ramnode, Alblasserdam, NL : 75.86 MiB/s | 606.87 Mbps | ping 19.251ms Vultr, Amsterdam, NL : 120.06 MiB/s | 960.46 Mbps | ping 16.136ms EDIS, Stockholm, Sweden : 19.11 MiB/s | 152.90 Mbps | ping 31.512ms OVH, Roubaix, France : 70.86 MiB/s | 566.86 Mbps | ping 18.364ms Online, France : 47.79 MiB/s | 382.34 Mbps | ping 33.264ms Prometeus, Milan, Italy : 169.77 MiB/s | 1358.13 Mbps | ping 1.788ms ## Exotic Speedtest Sydney, Australia : 523.93 KiB/s | 4.09 Mbps | ping 311.219ms Lagoon, New Caledonia : 107.76 KiB/s | 0.84 Mbps | ping 333.545ms Hosteasy, Moldova : 2.70 MiB/s | 21.57 Mbps | ping 42.740ms Prima, Argentina : 0 B/s | N/A | ping error! ## Asia Speedtest SoftLayer, Singapore : 866.79 KiB/s | 6.77 Mbps | ping 187.742ms Linode, Tokyo, Japan : 191.19 KiB/s | 1.49 Mbps | ping 268.876ms Linode, Singapore : 1.31 MiB/s | 10.46 Mbps | ping 257.957ms Vultr, Tokyo, Japan : 4.63 MiB/s | 37.05 Mbps | ping 252.981ms ## IO Test CPU Speed: bzip2 512MB - 72.1 MB/s sha256 512MB - 126 MB/s md5sum 512MB - 334 MB/s Disk Speed (512MB): I/O Speed - 2.0 GB/s I/O Direct - 158 MB/s RAM Speed (256MB): Avg. write - 2116.3 MB/s Avg. read - 4949.3 MB/s Benchmark finished in 137 seconds
nench.sh v2018.04.14 -- https://git.io/nench.sh benchmark timestamp: 2018-04-28 11:54:47 UTC ------------------------------------------------- Processor: Genuine Intel(R) CPU @ 2.30GHz CPU cores: 1 Frequency: 1989.102 MHz RAM: 512M Swap: 768M Kernel: Linux 4.13.16-2-pve x86_64 Disks: sda 465.8G SSD sdb 465.8G SSD sdc 2.7T HDD zd0 8G SSD zd16 50G SSD zd32 50G SSD CPU: SHA256-hashing 500 MB 4.101 seconds CPU: bzip2-compressing 500 MB 7.187 seconds CPU: AES-encrypting 500 MB 2.517 seconds ioping: seek rate ioping.static: fcntl(O_DIRECT) failed, please retry without option -D: Invalid argument ioping: sequential read speed ioping.static: fcntl(O_DIRECT) failed, please retry without option -D: Invalid argument dd: sequential write speed 1st run: 1239.78 MiB/s 2nd run: 1239.78 MiB/s 3rd run: 1239.78 MiB/s average: 1239.78 MiB/s IPv4 speedtests your IPv4: 81.17.19.xxxx Cachefly CDN: 114.43 MiB/s Leaseweb (NL): 53.81 MiB/s Softlayer DAL (US): 0.98 MiB/s Online.net (FR): 53.94 MiB/s OVH BHS (CA): 6.40 MiB/s No IPv6 connectivity detected -----------------------------------------------
If you're looking for a privacy-minded VPS company, a Swiss VPS at HarborVPS might be a great choice for you - unless you can't live without Docker.
- Location: privacy-respecting Switzerland
- Fast support both by ticket and chat
- Fast disk and RAM
- Fast network
- Very limited data allowance (because it is an expensive location)
- Limited number of templates
- Middling CPU performance
- Limitations imposed by the LXC platform (no docker)