Guide menu
On this page

Command line

Install the panel on your router from a terminal with install.sh, on Linux, macOS or Windows.

Last updated Oct 15, 2026View as Markdown

Overview

install.sh is a bash script that installs Nasnet Panel on your MikroTik router from a terminal. It does everything the graphical installer does, and it can also run unattended from a config file. It runs on Linux and macOS as it is, and on Windows through WSL or Git Bash.

Before you start

  • Your computer is connected to the router, preferably with a cable to a LAN port, not ether1.
  • You know the router’s address (usually 192.168.88.1), and a username and password with full rights.
  • The router meets the requirements in Installation.
  • Your computer has bash, curl, ssh, scp, and sha256sum or shasum. The sections below cover each system.

Steps

Linux

  1. Check that the tools are there. Most distributions include them. If scp is missing, install the OpenSSH client: sudo apt install openssh-client on Debian and Ubuntu, or sudo dnf install openssh-clients on Fedora.

  2. Download the script and run it:

    curl -fsSLO https://raw.githubusercontent.com/nasnet-community/nasnet-panel/dev/scripts/install.sh
    bash install.sh
  3. Continue with Answer the prompts.

macOS

  1. Open Terminal. macOS already has every tool the script needs. It uses shasum in place of sha256sum automatically.

  2. Download the script and run it:

    curl -fsSLO https://raw.githubusercontent.com/nasnet-community/nasnet-panel/dev/scripts/install.sh
    bash install.sh
  3. Continue with Answer the prompts.

Windows

The script doesn’t run in Command Prompt or PowerShell. Use one of these:

  • WSL (recommended). Open PowerShell as administrator and run wsl --install, then restart. Open Ubuntu from the Start menu and follow the Linux steps above.

  • Git Bash. Install Git for Windows, which includes bash, curl, ssh and scp. Open Git Bash and run:

    curl -fsSLO https://raw.githubusercontent.com/nasnet-community/nasnet-panel/dev/scripts/install.sh
    bash install.sh

Then continue with Answer the prompts.

If you’d rather not set up a shell, use the graphical installer.

Answer the prompts

  1. Enter the Router IP. The script checks Winbox (8291) and SSH (22), and asks for another port if one doesn’t answer.
  2. Enter the Router user (admin by default) and Router password.
  3. Follow the output. When the script asks for physical confirmation, press the reset/mode button briefly, or unplug and replug the router.
  4. When it finishes, renew your DHCP lease and open http://192.168.10.1:8080/.

Run it unattended

Put the router details in a file and pass it with --config:

cat > router.env <<'EOF'
ROUTER_IP=192.168.88.1
ROUTER_USER=admin
ROUTER_PASS=secret
EOF
bash install.sh --config router.env

To keep the password out of the file, leave out ROUTER_PASS and set SSHPASS instead:

SSHPASS=secret bash install.sh --config router.env

Uninstall

bash install.sh --uninstall --config router.env

This removes the container, its network settings, the installer’s firewall rules and the uploaded files. Your LAN stays on 192.168.10.1/24.

Reference

Flag What it does Default
--dry-run Prints every action and changes nothing. Off
--uninstall Removes the container, networking, NAT rules and uploaded files. Off
--config <file> Reads ROUTER_IP, ROUTER_USER and ROUTER_PASS from a file. None
--version <tag> Release to install. snapshot installs the development build. Latest release
--image-tar <path> Uses a local image tar instead of downloading one. None
--storage <name> Disk for the container, or internal. Asks when needed
--lan-port <port> LAN port for the panel over HTTP. 8080
--https-lan-port <port> LAN port for the panel over HTTPS. 8443
--no-lan-baseline Keeps your current LAN instead of moving it to 192.168.10.1/24. Off
--wifi-uplink Joins a WiFi network as the router’s internet for the install. Off
--wifi-ssid <ssid> WiFi network to join, instead of picking from a scan. None
--wifi-password <pw> WiFi password, instead of the prompt. Also read from WIFI_PASSWORD. Asks
--no-rollback Leaves changes in place when the install fails. Off
-v, --verbose Prints more detail. Off
-h, --help Shows usage. None

Troubleshooting

missing required tool: scp (or ssh, curl). Install the OpenSSH client or curl for your system, as described in the Linux steps.

bash: install.sh: No such file or directory on Windows. You’re in PowerShell or Command Prompt. Open WSL or Git Bash and run it there.

The script stops and asks you to use another port. Your computer is plugged into ether1, which the script needs for the internet connection. Move the cable to another port and run the script again.