How to Install MikroTik on a VPS in 2025 – Complete Guide to Setup MikroTik CHR on a VPS

If you have ever wanted to look into running a router in the VPS without hardwares? then you are at the right spot. In this tutorial, I will take you through all there is to know about MikroTik CHR. I will tell you what it is, why it would be interesting to run on a VPS, how it works, what you can actually use it for, benefits of having a VPS defined over physical hardware, and what you should maybe gather before you start. After that, I will take you through the cool common steps of installing MikroTik on a VPS (Ubuntu version), and the performance tweaks I recommend.

Install MikroTik on a VPS

A Short Guide on Mikrotik CHR

MikroTik is an industry-favorite hardware company producing a range of modems, routers, and even a few server devices. Its routers were especially popular because of their unique operating system. After a while, MikroTik started releasing that operating system as an independent piece of software, calling it RouterOS. RouterOS basically allows you to turn any computer system into a MikroTik router device, providing practical but straightforward functionality. MikroTik CHR (Cloud-Hosted Router) is a version of RouterOS MikroTik released more recently. CHR is designed to function on clouds, Virtual Private Servers (VPS), and virtual machines.

Mikrotik CHR Use Cases

So, MikroTik CHR is your best bet for turning your remote server into a router, so you can easily create powerful VPN servers, load balancers, and more. Many admins love it for tasks like MikroTik VPN setup, where you can build secure tunnels for remote workers or branch offices. It’s up to you to make the most of your virtual, remote MikroTik router, but potentially, there are a lot of incredible use cases for a MikroTik CHR VPS. If you use a Windows PC or laptop, you can also use MikroTik’s Winbox to simplify using MikroTik’s CHR or RouterOS. Naturally, I’ll show you how to do that as well as how to install MikroTik on a VPS.

Other Use Cases:

  • VPN server
  • Load balancer
  • Firewall & security gateway
  • Bandwidth management (QoS, shaping)
  • Network monitoring (NetFlow, SNMP)
  • Hotspot gateway with captive portal
  • Remote access gateway
  • Multi-WAN router (failover/load balance)
  • IoT device hub
  • Virtual lab for testing

 

Mikrotik CHR and Use Cases

Running MikroTik on an Ubuntu VPS

MikroTik installed on an Ubuntu server is like making a high-tech control tower in the cloud. You will serve the role of the air traffic controller for your network. You will handle traffic and create routing in such a manner that the physical router may never need to be touched. Everything is virtual and changeable and can be controlled from anywhere in the world.

For example, you can customize a MikroTik DNS server setup to make sure your clients opt their queries in no time at all, no matter what location they come from. You can handle firewall rules without ever laying hands on on-premise equipment remotely.

Advantages of Installing MikroTik on a VPS

  • Anywhere-Anytime: set up a MikroTik router in a remote data center in just minutes.
  • Scale-On-Demand: Increase the VPS and say goodbye to adding more hardware.
  • Cost Effective: No more buying and maintaining routers and paying for the VPS instead.
  • Resilient: Use your provider’s uptime and backup and redundancy.
  • Safe Environment: Run performance tests for VPNs or firewall rules or routing setups.

 

install MikroTik CHR on VPS

Requirements to Install MikroTik on a VPS

Make sure you meet these conditions:

  • A VPS (best is KVM-based) with at least 1 CPU, 512MB of RAM, and 2GB of storage.
  • Your OS installed must be Ubuntu (no older than 22.04).
  • SSH access (on Windows use PuTTY, and on Linux/Mac just use ssh).
  • The MikroTik CHR image.

 

Some VPS providers will not allow custom OS boot. Be sure that your host supports ISO / disk mounting.

How to Install MikroTik on a VPS

Step 1: Buy a Mikrotik VPS

Head over to Cloudzy.com and buy a MikroTik VPS plan. Make sure to get a plan with decent resources, so your remote router can handle the tasks you have in mind for it. I would suggest the “Growing” plan, which is basically the most affordable plan with the necessary resources and performance. To manually install MikroTik Router (CHR) on your Cloudzy VPS, you need to select a Linux VPS and choose Ubuntu 16 or 18 as your VPS operating system.

Step 2: Update and Prepare Ubuntu VPS

Connect to your VPS:

ssh root@your-vps-ip

Update packages:

apt update && apt upgrade -y

Install tools you’ll need:

apt install wget unzip qemu-utils -y

Step 3: Download MikroTik CHR Image

Grab the latest stable CHR image from MikroTik:

wget https://download.mikrotik.com/routeros/7.15/chr-7.15.img.zip
unzip chr-7.15.img.zip

Step 4: Convert Image for VPS

Convert the raw image into a bootable format:

qemu-img convert -f raw -O qcow2 chr-7.15.img mikrotik-chr.qcow2

Write it to your VPS boot disk (replace vda with your disk):

dd if=chr-7.15.img of=/dev/vda bs=4M

Finish with:

sync

Step 5: Reboot Into MikroTik CHR

Restart the VPS:

reboot

When it comes back online, it will be running RouterOS CHR.

Step 6: First Login to MikroTik

By default, MikroTik CHR allows SSH on port 22. Connect with:

ssh admin@your-vps-ip

The default user is admin with no password.

First thing you should do is to set a password

password

Step 7: Access via Winbox or WebFig

If you are not a fan CLI, then you can handle CHR with GUI tools:

  • WebFig: Open http://your-vps-ip in your browser.
  • Winbox: Connect using the VPS IP.

Step 8: Basic Configuration

Enable a DHCP client on the main interface:

/ip dhcp-client add interface=ether1

Add NAT masquerade for internet access:

/ip firewall nat add chain=srcnat action=masquerade out-interface=ether1

 

As well as the traffic filtering layer, if you’re thinking about exposing some services, you will most likely want to configure MikroTik port forwarding rules so your VPS can safely direct external traffic to internal apps or devices.

 

How to install MikroTik on Ubuntu

Security Best Practices

  • Change the default credentials immediately.
  • Restrict SSH to your own IP:
/ip firewall filter add chain=input protocol=tcp dst-port=22 src-address=<your-ip> action=accept
/ip firewall filter add chain=input protocol=tcp dst-port=22 action=drop
  • Use HTTPS for WebFig, disable plain HTTP.

 

Security Best Practices of MikroTik CHR install

Optimizing MikroTik CHR on Your VPS

Installing MikroTik on a VPS offers you the option of cloud-based routing at the price of a physical hardware if you set it up correctly. Typically, the performance is determined more by the CPU than by the RAM of the VPS provider, so minor tweaks in the CHR configuration and virtualization can impact performance totally. This section will detail the important considerations for running your VPS based CHR quickly, stably and adequately.

  • VPS: Fast single-core CPU, 512 MB–2 GB RAM, SSD, 1 Gbps+ network.
  • CHR Version: Use VPS/Cloud 64-bit, keep updated.
  • Virtualization: Dedicated vCPU, virtio NIC, avoid bridges/nested virtualization.
  • CHR Tweaks: Enable FastPath, lean firewall/NAT, minimal logging, disable unused services/IPv6.

CHR Tweaks Quick Settings

  • FastPath / CFastPath: Enable for faster packet forwarding.
  • Firewall / NAT: Keep rules minimal; use raw rules where possible.
  • Logging: Limit or rotate logs to reduce disk and CPU load.
  • Services: Disable anything you don’t use (IPv6, DHCP, etc.).
  • Queues: Use simple queues only; avoid per-IP queues on high traffic.
  • Interfaces: Use virtio/paravirtualized NICs; avoid unnecessary bridges.
  • Monitoring: tool profile for CPU, SNMP or interface stats for traffic.

 

Increasing the Use of MikroTik CHR on Ubuntu

Wrapping Up

And well, with all being said, you have just learned the full process of Install MikroTik on a VPS. I have shown you what CHR is, the best use cases for CHR, and why it is better to set up CHR on a VPS than on actual hardware. I have also guided you through what you must have before you start.

FAQ

Definitely. In fact, the MikroTik CHR is an operating system designed to turn standard servers into routers with the same capabilities as a hardware MikroTik router.
No, unfortunately not. You can only set up a MikroTik Cloud Hosted Router on a VPS, like Cloudzy’s MikroTik VPS. But with our prices being so affordable, you’ll hardly feel any difference in costs.
Of course! We provide full root access on all our VPS plans, and that means you can easily connect to your MikroTik CHR VPS using SSH.
Runs on most virtual environments (KVM, VMware, Hyper-V, VirtualBox). Check if your VPS allows booting from ISO or raw images.
Download the CHR image from MikroTik, mount it as a bootable disk/ISO in your VPS or hypervisor, then start the VM. Format conversion may be needed for some platforms.
CHR runs as a standalone virtual router. You can host it alongside Ubuntu and route traffic between them.
No. Any SSH/telnet client works: OpenSSH, MobaXterm, Windows Terminal, etc.
Yes, if you: change default passwords, use secure protocols (SSH), firewall management ports, and keep CHR updated.

Share :

2 Responses

  1. what about if i decided to buy a linux vps and decide to install by myself mikrotik chr is it possible because i do not need all the spec of your mikrotik vps for my tests yours basic linux vps spec are fine for me so i prefer buy a basic linux vps and install the chr by myself what i need is to know if it’ll work?

  2. Great tutorial. But your script only install version CHR version 6.

    I tried modify the script and add the version 7 image link

    and when i run the script its giving me error of fstype mount error.

    can you please write how to fix this issue? or do you have a new link?
    thanks

Leave a Reply

Your email address will not be published. Required fields are marked *