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.

The Promise

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.

The Reality

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.

VPS creation

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

Control Panel

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.

The network

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.

Speedtest run with the python3 command-line speedtest-cli script

Unfortunately, the network is limited to only 500 GB on the smallest plan.

CPU Performance

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 Performance

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.

About LXC

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

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.

Benchmarks

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
-----------------------------------------------

Verdict

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.

The good

  • Location: privacy-respecting Switzerland
  • Fast support both by ticket and chat
  • Fast disk and RAM
  • Fast network
  • Privacy policy that respects you

The bad

  • Very limited data allowance (because it is an expensive location)
  • Limited number of templates
  • Middling CPU performance

The ugly

  • Limitations imposed by the LXC platform (no docker)