ISP Boost - the all-in-one ISP billing & RADIUS platform
Supercharge your ISP.
Run your entire Internet service from one panel - customers, packages, billing, resellers, NAS, and reports. Install it in minutes with a single command on your own server or any cloud VPS, anywhere in the world. No Linux skills required.
Introduction
ISP Boost is a complete management system for Internet Service Providers and network operators. It bundles a RADIUS server, a billing engine, a customer/reseller hierarchy, and a modern web control panel into a single product that runs on one server - on-prem or any cloud.
It's built for the real world of ISPs: prepaid & postpaid plans, reseller balances, activation invoices, vouchers/cards, FUP & quotas, MAC binding, session and authentication logs, and flexible money handling. You buy it once, install it on your own server or any cloud VPS, and your data stays with you.
Key features
| Area | What you get |
|---|---|
| Customers | Unlimited users, profiles/packages, expiry & FUP, quotas, MAC lock, bulk actions, KYC documents |
| Billing | Prepaid & postpaid, activation/renewal invoices, receipts, credit users, double-entry ledger, PKR currency |
| Resellers | Multi-level manager tree, per-reseller wallet, cascading pricing, balance-gated activation, scoped reports |
| RADIUS | FreeRADIUS 3.2, MikroTik & standard NAS, live sessions, auth log, disconnect (CoA) |
| Cards | Prepaid card / voucher batches, redeem & verify |
| Reports | Activations, sessions, journals, profits, receipts, auth log - all filterable |
| Operations | Tickets, inventory, HR, assets, custom form fields, branded reseller domains |
| Platform | One-time setup wizard, license & trial, secure auto-updates, role-based access control |
1. Hardware requirements
Before installing, make sure your server meets the recommended specs:
- A server or cloud VPS running a fresh Ubuntu 22.04 / 24.04.
- CPU with 4 cores or more.
- 8 GB RAM (16 GB recommended for larger networks).
- 120 GB+ SSD disk space.
- A stable network connection.
- Internet access (required for license activation & updates).
2. Installation (one command)
Good news: installing takes a single command. ISP Boost runs on any fresh Ubuntu Server 22.04 / 24.04 - on your own hardware or any cloud VPS, anywhere in the world (DigitalOcean, Linode, AWS, Vultr, Contabo, Hetznerβ¦). No on-prem server required.
- Get a server - a fresh Ubuntu 22.04/24.04 machine or cloud VPS with root/sudo access (4 CPU, 8 GB RAM, 120 GB SSD recommended).
- Run the installer - SSH in as
rootand paste:
It installs PHP, MySQL, Redis, Nginx and FreeRADIUS and starts the queue & scheduler - about 10β15 minutes. It installs alongside your OS and does not wipe the disk.URL=https://get.ispboost.com/install.sh && if [ -f /usr/bin/curl ];then curl -ksSO $URL ;else wget --no-check-certificate -O install.sh $URL;fi; bash install.sh - Open the panel - browse to the server's IP or your domain (
http://<server-ip>). You'll land on the Setup Wizard. Admin credentials are also saved to/root/h3radius-credentials.txt.
3. First-time setup wizard
The very first time you open the panel, ISP Boost runs a short one-time setup wizard so the system is ready in minutes:
- Company details - your company name, phone, email, address and timezone (used on invoices, the portal and notifications).
- Administrator account - set your admin username and a strong password.
- Activate or start a trial:
- Enter your license key - paste the key we sent you to unlock your plan, or
- Start the free 3-month trial - explore the full system with no key (up to 50 users).
- Finish - you're taken to the dashboard. The wizard never shows again.
4. License & free trial
ISP Boost is licensed per installation. Each plan sets a maximum number of users - this counts every subscriber record that currently exists (not concurrent/active-at-once sessions), so an expired or disabled subscriber still counts until it's deleted:
| Plan | Users | NAS/routers | Good for |
|---|---|---|---|
| Free | 50 (3 months) | 2 | Evaluating the full system |
| Starter | 1,000 | 10 | Small ISP / single area |
| Professional | 5,000 | 100 | Growing ISPs with resellers |
| Enterprise | 20,000 | 300 | Large multi-area operators |
| Unlimited | No user cap | Unlimited | No cap, ever |
The license is bound to your server's hardware on activation, so a key can't be copied to another machine. If your license lapses, the panel keeps working through a short grace period and then becomes read-only until you renew - your customers stay online the whole time (RADIUS is never interrupted).
5. Quick start
- Log in with the admin account you created in the wizard.
- Create a Profile (package) - Profiles β New. Set speed, price, validity and FUP/quota.
- Add your NAS - NAS β New. Enter your router's IP and a shared secret (see the next section).
- Create a user - Users β New. Pick the profile, set the username/password, and activate.
- Connect the customer - their router/PPPoE/Hotspot now authenticates against ISP Boost.
6. MikroTik: complete setup from scratch (Device, NAS, PPPoE, Hotspot)
This section takes a MikroTik router from a blank device to fully billing customers through ISP Boost, both PPPoE and Hotspot. Every network-facing step is given as Winbox clicks and the equivalent CLI/Terminal command - use whichever you're more comfortable with, they do the same thing. Skip 6.1 if your router already has working internet/LAN.
6.1 Device setup (basic router config)
A fresh/reset RouterOS device needs a WAN link, a LAN bridge, and NAT before it's usable at all. Skip this if it's already online.
| Winbox | CLI (Terminal) |
|---|---|
System β Identity - name the router (e.g. ISP-Main). | /system identity set name=ISP-Main |
IP β DHCP Client β + β Interface = your WAN port (e.g. ether1) β OK. (Skip if your WAN uses a static IP or PPPoE-out to an upstream ISP - configure that instead.) | /ip dhcp-client add interface=ether1 disabled=no |
Bridge β + β Name bridge1 β OK. Then Bridge β Ports β + for each LAN port (e.g. ether2, ether3) β Bridge = bridge1. | /interface bridge add name=bridge1/interface bridge port add bridge=bridge1 interface=ether2/interface bridge port add bridge=bridge1 interface=ether3 |
IP β Addresses β + β Address 192.168.88.1/24, Interface bridge1 β OK. | /ip address add address=192.168.88.1/24 interface=bridge1 |
IP β Firewall β NAT β + β Chain srcnat, Out. Interface ether1 (your WAN) β Action tab β masquerade β OK. | /ip firewall nat add chain=srcnat out-interface=ether1 action=masquerade |
6.2 NAS configuration (in ISP Boost)
- Go to NAS β New NAS and fill in: Shortname (a short identifier, e.g.
mt-main), NAS name / IP (your MikroTik's IP, reachable from the ISP Boost server), Secret (create a strong shared secret - you'll need the exact same value on the MikroTik), Type =mikrotik. - Save, then go to NAS β toolbar β Reload FreeRADIUS.
6.3 RADIUS client on the MikroTik
This is the one-time link between the router and ISP Boost - both PPPoE and Hotspot reuse it.
| Winbox | CLI (Terminal) |
|---|---|
Left menu RADIUS β + (Add New) β Services tab: tick ppp and hotspot. Address = your ISP Boost server's IP. Secret = the exact shared secret from 6.2. Authentication Port 1812, Accounting Port 1813 β OK. | /radius add service=ppp,hotspot address=<ISP-BOOST-IP> secret=<your-shared-secret> authentication-port=1812 accounting-port=1813 |
Back in the RADIUS window, toolbar β Incoming button (widen the window or use the Β» overflow if it's hidden) β tick Accept β Port 3799 β OK. This enables CoA (live disconnect/update from the panel). | /radius incoming set accept=yes port=3799 |
6.4 PPPoE setup
On the MikroTik:
| Winbox | CLI (Terminal) |
|---|---|
IP β Pool β + β Name ppp-pool, Addresses 10.10.0.2-10.10.0.254 β OK. | /ip pool add name=ppp-pool ranges=10.10.0.2-10.10.0.254 |
PPP β Profiles tab β + β Name isp-default, Local Address 10.10.0.1, Remote Address ppp-pool, DNS Server 8.8.8.8 β OK. Leave Rate Limit blank - RADIUS pushes it per-subscriber from the assigned ISP Boost profile. | /ppp profile add name=isp-default local-address=10.10.0.1 remote-address=ppp-pool dns-server=8.8.8.8 |
PPP β PPPoE Servers tab β + β Service Name isp-pppoe, Interface = your customer-facing interface (e.g. bridge1, or a dedicated VLAN), Default Profile isp-default, Authentication chap,mschap2 β OK. | /interface pppoe-server server add service-name=isp-pppoe interface=bridge1 default-profile=isp-default authentication=chap,mschap2 disabled=no |
| PPP window β toolbar AAA button β tick Use RADIUS, tick Accounting β OK. | /ppp aaa set use-radius=yes accounting=yes |
In ISP Boost:
- Profiles β New profile: Type = Prepaid (or Postpaid), set rate limit (e.g.
6M/6M), validity period and price. Syncs to FreeRADIUS automatically. - Users β New user: set username, password, assign the profile. These become the subscriber's PPPoE login.
Give the customer their username/password to enter in their own router's PPPoE client (or test from another MikroTik: /interface pppoe-client add interface=ether1 user=<username> password=<password> disabled=no).
6.5 Hotspot setup
On the MikroTik - create the Hotspot service (skip if it already exists):
| Winbox | CLI (Terminal) |
|---|---|
IP β Hotspot β click hotspot Setup (the wizard button, not a tab) β Hotspot Interface: your wifi/LAN interface (e.g. bridge1) β accept the pre-filled Local Address/Pool β Certificate none β SMTP 0.0.0.0 (skip) β DNS 8.8.8.8 β DNS Name optional β finish (the built-in local hotspot user it offers can be ignored, real users go through RADIUS/vouchers). | /ip hotspot setup (interactive wizard - same prompts as the GUI, answer them in order) |
| IP β Hotspot β Server Profiles β open the profile the wizard created β RADIUS tab β tick Use RADIUS β OK. | /ip hotspot profile set [find] use-radius=yes |
Walled Garden + login-page redirect - needed because ISP Boost hosts the actual voucher-login page, not the router itself:
| Winbox | CLI (Terminal) |
|---|---|
IP β Hotspot β Walled Garden β + β Dst. Host your-domain.com β Action allow β OK. Repeat with *.your-domain.com. | /ip hotspot walled-garden add dst-host=your-domain.com action=allow/ip hotspot walled-garden add dst-host=*.your-domain.com action=allow |
Then point the router's login page at ISP Boost: in Winbox, Files list β open hotspot/login.html (Edit, or drag it out, edit, drag back) and replace its contents with:
<html><head><meta http-equiv="refresh" content="0;url=https://your-domain.com/hotspot?link-login-only=$(link-login-only)&mac=$(mac)&ip=$(ip)"></head><body></body></html>RouterOS substitutes the $(link-login-only)/$(mac)/$(ip) placeholders itself when it serves this file, so the redirect carries the router's real login context to the ISP Boost portal - after a customer enters a valid voucher there, the portal auto-submits the credentials straight back to that login URL.
In ISP Boost - activate voucher selling:
- Profiles β New profile: set Type = Hotspot, rate limit, validity period and price.
- Cards β generate vouchers against that Hotspot profile.
6.6 Verify everything end to end
- PPPoE: connect a test device/router with the username/password from 6.4. It should get an IP from the pool within seconds.
- Hotspot: connect a test device to the wifi, it should redirect to the ISP Boost voucher page; enter a voucher from 6.5.
- Confirm it end to end: in ISP Boost, open that user β Sessions tab. An active session should appear within ~30 seconds - that confirms full authentication and accounting, not just a page redirect or PPP negotiation.
If login doesn't work, check in this order: (1) did you click Reload FreeRADIUS after adding the NAS (6.2)? (2) does the shared secret match exactly on both sides, no extra spaces (6.3)? (3) is UDP 1812/1813 reachable from the MikroTik to the ISP Boost server (firewall)? (4) open NAS β your NAS β Console for a live log of what FreeRADIUS sees from that specific router. (5) Hotspot only: is the Walled Garden entry in place, and does hotspot/login.html actually contain the redirect?
7. Resellers & roles
ISP Boost has a built-in multi-level reseller (manager) system. Each reseller logs into the same panel but sees only their own customers, with their own wallet balance and pricing.
- Top up a reseller - Managers β open the reseller β deposit balance.
- Reseller activates a user - the cost is charged to their wallet; if they're out of balance, activation is blocked.
- Roles - Organization β Roles & permissions. Create roles and tick exactly what each can do (activate, reports, billingβ¦). Assign a role to each manager on their form.
8. Updates
ISP Boost checks for updates automatically and can install them securely in the background (with a verified checksum and an automatic backup before each upgrade). When a new version is published, eligible servers update themselves - you can also see the current version under License.
9. Troubleshooting
| Symptom | What to check |
|---|---|
| Can't reach the panel | Confirm the server's IP or domain and that it's reachable (open port 80/443 in your cloud firewall); try http://<server-ip>. |
| "Already authorizing, retry later" on MikroTik | You added or changed a NAS but didn't click NAS β Reload FreeRADIUS - see section 6.2. |
| Users can't connect | Check the NAS IP & shared secret match, and the user is active & not expired. See Reports β Auth log. |
| Voucher rejected on the hotspot portal | Confirm the voucher was generated under a Hotspot-type profile and hasn't already been redeemed - see section 6.5. |
| Hotspot login page never appears / router doesn't redirect | The MikroTik Hotspot server itself isn't set up yet - run the Hotspot Setup wizard first, see section 6.5. |
| "Panel is read-only" | The license has lapsed past its grace period - go to License and enter/renew your key. |
| Reseller can't activate | Top up their wallet balance - activation is charged to the reseller. |
Uninstalling ISP Boost
If you need to completely remove ISP Boost from a server, run the uninstaller. It reverses everything the installer set up in the first place.
The full uninstall permanently deletes the ISP Boost application and, with the flags below, the MySQL database (all subscribers, invoices and history), the web server (nginx), PHP, Redis and FreeRADIUS, plus their config and data. There is no undo. Take a backup first if you might need the data.
Remove everything (app + database + all packages installed during setup - nginx, PHP, MySQL, Redis, FreeRADIUS), no prompts:
curl -fsSL https://get.ispboost.com/uninstall.sh | sudo bash -s -- --purge-db --purge-packages --yesPrefer to be asked before anything is dropped? Run it interactively - it removes the app and services, then prompts before deleting the database:
curl -fsSL https://get.ispboost.com/uninstall.sh | sudo bash--purge-packages: β¦ | sudo bash -s -- --purge-db --yes.FAQ
Does the user limit count concurrent/active users, or total subscribers ever created?
Total subscribers that currently exist in your database - not concurrent/active-at-once sessions. A subscriber counts toward your plan's limit the moment it's created (including the moment a voucher gets redeemed, which materialises a real subscriber record), and keeps counting even after it expires or is disabled. Expiring does not free up a slot. The only way to free a slot is to actually delete the old subscriber record (soft-deleted/trashed records don't count).
Can I create unlimited vouchers/users throughout the year, as long as active users don't exceed my plan limit at once?
No. Every voucher that gets redeemed permanently uses a slot until that specific record is deleted, regardless of whether it's still "active." If you run a high-turnover voucher business, periodically delete old/expired/unused subscriber records to stay under your cap, or plan for a higher tier if your real monthly volume of new vouchers is high.
What happens if I go over my user limit?
Not an instant lock. There's a grace period (the same grace window as license expiry) before the panel goes read-only - and even then, only the admin panel is affected (you can't create new users/vouchers). Subscribers already provisioned keep authenticating through FreeRADIUS normally, since RADIUS talks directly to the database and isn't gated by the license check.
Exactly which IP and secret do I use when adding a NAS?
NAS name/IP = your MikroTik's IP address, reachable from the ISP Boost server. Secret = any strong string you choose - it just has to match exactly (character-for-character, no extra spaces) on both the NAS entry in ISP Boost and the /radius add command on the MikroTik. See section 6.2/6.3 above for the full steps.
Do I need to reload FreeRADIUS every time I make a change?
No - only after adding a new NAS, or changing an existing NAS's IP or secret. Creating profiles, users, or vouchers never requires a reload; those take effect immediately.
How do I confirm RADIUS authentication is actually working, not just that the hotspot page redirected?
Open the subscriber in ISP Boost and check the Sessions tab. A real successful authentication creates an active session there within about 30 seconds - that confirms the full round trip (authentication and accounting), not just that the captive portal page loaded.
Support & contact
ISP Boost is built and supported by ISP Boost in Pakistan. We're here to help you get set up and grow.