Webinterface
This commit is contained in:
42
README.md
42
README.md
@@ -1,15 +1,39 @@
|
||||
# Aruba PoE
|
||||
# PoE Manager Web-App
|
||||
|
||||
```
|
||||
Dieses Repo konfiguriert auf Ubuntu/Debian einen Service,
|
||||
dieser Service ist in der Lage IPs zu Pingen und entsprechend daran POE auf vorgegebenen Ports an einem Aruba Switch
|
||||
zu Aktivieren bzw. Deaktivieren.
|
||||
```
|
||||
Webbasierte Verwaltung und Monitoring von PoE-Devices und Switches.
|
||||
Die App ermöglicht:
|
||||
|
||||
## 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:
|
||||
|
||||
|
||||
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