PHPackages                             access-manager/access-manager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. access-manager/access-manager

ActiveProject[Utility &amp; Helpers](/categories/utility)

access-manager/access-manager
=============================

The Hotspot Management System

2.5.0(11y ago)615.2k31[9 issues](https://github.com/AccessManager/access-manager/issues)MITPHPPHP &gt;=5.4

Since Oct 10Pushed 7y ago18 watchersCompare

[ Source](https://github.com/AccessManager/access-manager)[ Packagist](https://packagist.org/packages/access-manager/access-manager)[ RSS](/packages/access-manager-access-manager/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (3)Dependencies (9)Versions (7)Used By (0)

Access Manager - Subscriber Manager for ISPs
============================================

[](#access-manager---subscriber-manager-for-isps)

Access Manager is a centralised radius based subscriber management system for WiFI Hotspot operators and Small/Medium ISPs. It supports Mikrotik as a NAC. It includes most of the features related to subscriber management. Including subscriber account, free/paid subscriptions, prepaid voucher generation and limiting subscription services based on data/time limit among others.

### Supported NAC/Router Vendors:

[](#supported-nacrouter-vendors)

- Mikrotik

Installation
------------

[](#installation)

Access Manager is written in PHP (Laravel Framework) and uses MySQL for database storage. Thus requires one time setup process to be followed. And this is going to be a lengthy one. And with that in mind, lets get started.

### Prerequisite

[](#prerequisite)

- Basic Knowledge of Linux Operating System

Though Access Manager can be installed on any linux flavor, however in this example we'll be using Ubuntu Server 16.04 LTS. And I assume you have configured network interface with IP address of 192.168.1.10/24.

This is considered good practice to update your system packages time to time, so run following command to check &amp; install available updates.

```
$ sudo apt update
$ sudo apt upgrade

```

Next install the required packages:

```
$ sudo apt install apache2 libapache2-mod-php php7.0 php-zip php7.0-mbstring php7.0-bcmath php7.0-mysql mysql-server freeradius freeradius-mysql freeradius-utils

```

**NOTE:**During the installation you'll be asked to set root password for MySQL server, choose a strong password and make a note of it, you'll need it later.

Access Manager manages its dependencies &amp; updates using composer. So, before we can download Access Manager, we need to download composer by following instructions from official composer website:

After downloading composer you'll end up with `composer.phar` in current directory. After that, issue following commands:

```
$ chmod +x composer.phar
$ sudo mv composer.phar /usr/bin/composer

```

The above mentioned commands will add executable bit to the composer file and move it to /usr/bin to make it globally accessible.

After having composer in place, we're ready to download Access Manager. In this example we'll download the project in current user's home directory. In case you're already not in the home directory type `cd` to change to home directory and `pwd` will output the path to current working directory, if you want to verify.

Now, to download Access Manager project issue following command:

```
$ composer create-project access-manager/access-manager -s beta

```

Above mentioned command will download Access Manager 3.0-BETA &amp; its dependencies. We'll also need to create a database we want to use for Access Manager. Use following commands to create a new databased called `acmanager`, you can choose whatever you want to name it:

when prompted enter the password for MySQL root user, you set during MySQL installation.

```
$ mysql -u root -p
mysql> create database acmanager;

```

Press `ctrl+d` to get out of MySQL prompt.

Still being in the home directory issue following commands to get into project directory &amp; make the storage directory writeable:

```
$ cd access-manager
$ chmod 777 -R storage

```

Since this is a fresh install, run following command for configuration setup.

*This command will ask for a few inputs including MySQL username/password. For testing you can provide root username &amp; password, but **it is strongly recommended to create a new user with less privileges for production server.***

```
$ php artisan setup:fresh

```

Access Manager setup is complete but we need to configure apache web server to serve our project. If you want to host other projects/websites on this server multiple virtual servers can be created. But for this example I'll edit the default virtual server. Use following command to open virtualserver config file using vim text editor:

```
$ sudo vim /etc/apache2/sites-enabled/000-default.conf

```

In this file we need to make two modifications:

1. change document root to `/home/{Your_User_Name}/access-manager/html`
2. add following code block somewhere within .... block.

```

    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted

```

Next step is to enable rewrite mode for apache.

```
$ sudo a2enmod rewrite

```

Now, for the changes to take effect, restart apache server with following command:

```
$ sudo service apache2 restart

```

At this point, you should be able to access the project by pointing your browser to IP address of the server, which in this case is 192.168.1.10. Login using admin credentials &amp; create new accouts, subscriptions, routers and all other features of Access Manager. But one more thing left to be configured is freeradius. Installing &amp; configuring Freeradius is same as earlier versions of Access Manager ie. 2.\*.

**MIND YOUR CREDENTIALS WHEN FOLLOWING OLDER EXAMPLES**

To install &amp; configure Freeradius server, refer to: [http://accessmanager.in/userguide/install\_and\_configure\_freeradius](http://accessmanager.in/userguide/install_and_configure_freeradius) .

And to integrate Access Manager &amp; Freeradius to complete the setup, follow:

[http://accessmanager.in/userguide/integrate\_access\_manager\_with\_freeradius](http://accessmanager.in/userguide/integrate_access_manager_with_freeradius)

**Use following code for exec modules:**

```
exec am-authorize {
input_pairs = request
shell_escape = yes
wait = yes
output_pairs = reply
program = "/usr/bin/php /home/am/access-manager/artisan am:authorize %u"
}

exec am-accounting {
input_pairs = request
shell_escape = yes
wait = yes
output = none
program = "/usr/bin/php /home/am/access-manager/artisan am:account %Z"
}

```

**Hope you enjoy the project. :)**

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity34

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~242 days

Recently: every ~301 days

Total

6

Last Release

3028d ago

Major Versions

2.5.0 → v3.0-BETA2018-02-01

PHP version history (2 changes)2.0PHP &gt;=5.4

v3.0-BETAPHP &gt;=5.6.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/4703459?v=4)[Rahul makhija](/maintainers/rahulmkhj)[@rahulmkhj](https://github.com/rahulmkhj)

---

Top Contributors

[![rahulmkhj](https://avatars.githubusercontent.com/u/4703459?v=4)](https://github.com/rahulmkhj "rahulmkhj (245 commits)")

---

Tags

freeradiusfreeradius-webinterfacehotspot-user-managementmikrotikwifi-hotspotmikrotikhotspot management system

### Embed Badge

![Health badge](/badges/access-manager-access-manager/health.svg)

```
[![Health](https://phpackages.com/badges/access-manager-access-manager/health.svg)](https://phpackages.com/packages/access-manager-access-manager)
```

###  Alternatives

[wireui/wireui

TallStack components

1.8k1.3M16](/packages/wireui-wireui)[livewire/volt

An elegantly crafted functional API for Laravel Livewire.

4195.3M84](/packages/livewire-volt)[ramonrietdijk/livewire-tables

Dynamic tables for models with Laravel Livewire

21147.4k](/packages/ramonrietdijk-livewire-tables)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
