Webinterface
This commit is contained in:
42
README.md
42
README.md
@@ -1,15 +1,39 @@
|
|||||||
# Aruba PoE
|
# PoE Manager Web-App
|
||||||
|
|
||||||
```
|
Webbasierte Verwaltung und Monitoring von PoE-Devices und Switches.
|
||||||
Dieses Repo konfiguriert auf Ubuntu/Debian einen Service,
|
Die App ermöglicht:
|
||||||
dieser Service ist in der Lage IPs zu Pingen und entsprechend daran POE auf vorgegebenen Ports an einem Aruba Switch
|
|
||||||
zu Aktivieren bzw. Deaktivieren.
|
|
||||||
```
|
|
||||||
|
|
||||||
## Wichtig:
|
- Anzeige von Device-Status (Online/Offline)
|
||||||
|
- Verwaltung von Devices und Switches
|
||||||
|
- Einstellung des Prüfintervalls
|
||||||
|
- Live-Log-Ansicht
|
||||||
|
- Benutzerverwaltung mit Adminrechten
|
||||||
|
|
||||||
User und Passwort setzen!
|
---
|
||||||
/usr/local/bin/custom/poe.sh
|
|
||||||
|
## **Installation (nach einem frischen Clone)**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Repo klonen
|
||||||
|
git clone https://gitea.int.eertmoed.net/WiS/Aruba-PoE.git /srv/poe_manager
|
||||||
|
cd /srv/poe_manager
|
||||||
|
|
||||||
|
# Virtuelle Umgebung erstellen
|
||||||
|
python3 -m venv venv
|
||||||
|
source venv/bin/activate
|
||||||
|
|
||||||
|
# Abhängigkeiten installieren
|
||||||
|
pip install --upgrade pip
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# Datenbank initialisieren
|
||||||
|
python create_db.py
|
||||||
|
|
||||||
|
# Admin-Benutzer erstellen
|
||||||
|
python create_admin.py
|
||||||
|
|
||||||
|
# Web-App starten
|
||||||
|
python app.py --host=0.0.0.0 --port=5000
|
||||||
|
|
||||||
Download:
|
Download:
|
||||||
|
|
||||||
|
|||||||
46
srv/poe_manager/create_db.py
Normal file
46
srv/poe_manager/create_db.py
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## **create_db.py**
|
||||||
|
|
||||||
|
```python
|
||||||
|
import sqlite3
|
||||||
|
|
||||||
|
conn = sqlite3.connect("sqlite.db")
|
||||||
|
c = conn.cursor()
|
||||||
|
|
||||||
|
# Switches
|
||||||
|
c.execute("""
|
||||||
|
CREATE TABLE IF NOT EXISTS switches (
|
||||||
|
hostname TEXT PRIMARY KEY,
|
||||||
|
ip TEXT NOT NULL,
|
||||||
|
username TEXT NOT NULL,
|
||||||
|
password TEXT NOT NULL
|
||||||
|
);
|
||||||
|
""")
|
||||||
|
|
||||||
|
# Devices
|
||||||
|
c.execute("""
|
||||||
|
CREATE TABLE IF NOT EXISTS devices (
|
||||||
|
mac TEXT PRIMARY KEY,
|
||||||
|
rpi_ip TEXT NOT NULL,
|
||||||
|
switch_hostname TEXT NOT NULL,
|
||||||
|
port TEXT NOT NULL,
|
||||||
|
name TEXT NOT NULL,
|
||||||
|
FOREIGN KEY (switch_hostname) REFERENCES switches(hostname)
|
||||||
|
);
|
||||||
|
""")
|
||||||
|
|
||||||
|
# Benutzer
|
||||||
|
c.execute("""
|
||||||
|
CREATE TABLE IF NOT EXISTS users (
|
||||||
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
|
username TEXT UNIQUE NOT NULL,
|
||||||
|
password TEXT NOT NULL,
|
||||||
|
is_admin INTEGER DEFAULT 0
|
||||||
|
);
|
||||||
|
""")
|
||||||
|
|
||||||
|
conn.commit()
|
||||||
|
conn.close()
|
||||||
|
print("Datenbank sqlite.db wurde initialisiert.")
|
||||||
Reference in New Issue
Block a user