README.md 1.5 KB

blacklister

IP collector for blacklists

Installation

Abhängigkeiten

apt-get install libapache2-mod-php default-mysql-server php7.4-mysql git

Source Code

cd WEBROOT git clone https://git.symbionet.de/andre/blacklister.git .

Konfiguration

MySQL

create database DATABASE;
create user 'DBUSER'@localhost identified by 'DBPASS';
grant all privileges on DATABASE.* to 'DBUSER'@localhost;

db.php

Anpassung der Datanbank Zugansdaten in db.php
private $host = 'localhost';
private $user = 'DBUSER';
private $pass = 'DBPASS';
private $db = 'DATABASE';

Admin User anlegen

Token erzeugen

echo "<?php echo bin2hex(random_bytes(16)) . PHP_EOL; ?>" | php
ADMINTOKEN

Token in der Datenbank einpflegen

mysql
use DATABASE;
INSERT INTO clients values('ADMINTOKEN','admin','NAME O. BESCHREIBUNG');

Anwendung

Clients anlegen

Im Webinterface unter /admin.php mit dem Admin Token anmelden:
Role admin: Zugriffsrecht auf das admin Interface
Role reporter: kann IP Adressen eintragen und 3x von der Liste entfernen Role consumer: kann Blocklisten abfragen

IP Adressen reporten

IP Adressen melden kann z.B. als Aktion für fail2ban konfiguriert werden. Über eine REST API können die Adressen via GET Request reportet werden.
wget http(s)://URI/?token=REPORTERTOKEN&ip=IPADRESSE

Blockliste abfragen

Blocklisten werden via REST API ausgeliefert.
wget http(s)://URI/list.php?token=CONSUMERTOKEN