Update README.md
This commit is contained in:
82
README.md
82
README.md
@@ -1,81 +1 @@
|
|||||||
|
Need rewrite
|
||||||
```markdown
|
|
||||||
# FreeRADIUS Manager (Phase 1)
|
|
||||||
|
|
||||||
A lightweight web UI to manage MAC address-based FreeRADIUS configurations backed by a MariaDB/MySQL database.
|
|
||||||
|
|
||||||
## Features
|
|
||||||
- Add/edit/delete MAC-based users and VLAN assignments
|
|
||||||
- View Access-Accept and Access-Reject logs
|
|
||||||
- Lookup MAC vendors using maclookup.app API
|
|
||||||
- Dynamically populate vendor cache to reduce API usage
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Requirements (Phase 1)
|
|
||||||
- Existing FreeRADIUS installation
|
|
||||||
- Existing MariaDB or MySQL server with access credentials
|
|
||||||
|
|
||||||
### Required Tables
|
|
||||||
Add the following tables to your RADIUS database:
|
|
||||||
|
|
||||||
```sql
|
|
||||||
CREATE TABLE `rad_description` (
|
|
||||||
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
|
||||||
`username` char(12) DEFAULT NULL,
|
|
||||||
`description` varchar(200) DEFAULT NULL,
|
|
||||||
PRIMARY KEY (`id`)
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
|
||||||
|
|
||||||
CREATE TABLE `mac_vendor_cache` (
|
|
||||||
`mac_prefix` varchar(6) NOT NULL,
|
|
||||||
`vendor_name` varchar(255) DEFAULT NULL,
|
|
||||||
`status` enum('found','not_found') DEFAULT 'found',
|
|
||||||
`last_checked` datetime DEFAULT current_timestamp(),
|
|
||||||
`last_updated` datetime DEFAULT current_timestamp(),
|
|
||||||
PRIMARY KEY (`mac_prefix`)
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Getting Started
|
|
||||||
|
|
||||||
### 1. Clone this repo
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/yourname/freeradius-manager.git
|
|
||||||
cd freeradius-manager
|
|
||||||
```
|
|
||||||
|
|
||||||
### 2. Configure environment
|
|
||||||
Create a `.env` file or configure environment variables:
|
|
||||||
|
|
||||||
```env
|
|
||||||
FLASK_SECRET_KEY=super-secret-key
|
|
||||||
MYSQL_HOST=192.168.1.100
|
|
||||||
MYSQL_USER=radiususer
|
|
||||||
MYSQL_PASSWORD=yourpassword
|
|
||||||
MYSQL_DATABASE=radius
|
|
||||||
OUI_API_KEY= (leave empty for free tier)
|
|
||||||
OUI_API_LIMIT_PER_SEC=2
|
|
||||||
OUI_API_DAILY_LIMIT=10000
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. Run using Docker Compose
|
|
||||||
```bash
|
|
||||||
docker-compose up --build
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
- The MAC vendor database will auto-populate as addresses are discovered
|
|
||||||
- Only MAC-based users are supported in this release
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Phase 2 Goals
|
|
||||||
- Integrate FreeRADIUS server into Docker Compose
|
|
||||||
- Optional MariaDB container
|
|
||||||
- Provide self-contained stack for local or cloud deployment
|
|
||||||
```
|
|
||||||
|
|||||||
Reference in New Issue
Block a user