whois.at.hsp.sh

Zamieszanynot7cd, mw
Rozpoczęto2018-01-12
Status

Działa na http://whois.at.hsp.sh

Repo https://github.com/hs3city/whois
Tagi

Ogólnie fajnie by było wiedzieć czy ktoś jest w hs'ie. Aktualnie jest działający skrypt dla mikrotika, który wysyła co jakiś czas POST'a do bazy danych po stronie serwera.

Stack

  1. Mikrotik
  2. Flask

Instrukcja

  1. Zarejestruj się będąc w spejsie
    1. Najlepiej nick zgodny z wiki
    2. Tak, hasła są hashowane
  2. Zajmij urządzenia które są twoje
    1. Jeżeli nic nie widać poczekaj maks 15 minut, mikrotik powinien je już wysłać
    2. Uwaga, to samo urządzenie może mieć kilka interfejsów sieciowych
  3. Ustaw flagi dla urządzenia (z ctrl wiele)
  4. W profilu możesz ustawić flagi dla siebie i zmienić dane
  5. Czasem wpadnij zaktualizować swoje urządzenia
  6. Na slacku użyj komendy /ktohakuje
    1. Nie panikuj kontener z botem wolno wstaje
    2. Panikuj, spotty-kiwi nie żyje, napraw, po dostęp uderzaj do not7cd naprawiane
  7. Wykorzystaj endpoint http://whois.at.hsp.sh/api/now w swoim projekcie

Opis

  1. Na wewnętrznym serwerze stoi aplikacja która nasłuchuje requestów z routera.
  2. Router mikrotik wysyła listę leasów na adres serwera co 12
  3. Serwer zbiera informacje o urządzeniach i ich właścicielach
  4. Serwer wystawia jeden JSON GET z aktywnością z ostatnich 30 minut
  5. Slack bot wysyła zapytanie na whois.at.hsp.sh gdy wywołany

Skrypt dla Mikrotik z RouterOS >= 6.39.

FIXME Skrypt należy przepisać żeby uploadował surowe dane, a ich procesowanie trzeba przerzucić na aplikację w Pythonie.

FIXME (Prawdopodobnie) przez konfigurację Mikrotika skrypt nie może połączyć się z whoisem używając publicznego adresu.

Skrypt wysyła dane w parametrze data sformatowane do json:

data=[{"mac":"11:22:33:44:55:66","name":"Dom","last":"50w6d16h1m10s","status":"waiting"},{"mac":"AA:BB:CC:DD:EE:FF","name":"HS","last":"4d1h58m8s","status":"bound"}]

Testowa komenda:

curl -X POST -H "User-Agent: Mikrotik/6.x Fetch" -d 'data=[{"mac":"11:22:33:44:55:66","name":"Dom","last":"50w6d16h1m10s","status":"waiting"},{"mac":"AA:BB:CC:DD:EE:FF","name":"HS","last":"4d1h58m8s","status":"bound"}]' https://whois.at.hsp.sh/api/last_seen

Log

Proof of Concept: skrypt na mikrotiku komunikujący się z aplikacją — 2018/03/03 5:36


Program uruchomiony na serwerze w HS — not7cd, mroz 2018/03/25 16:18


Forwad i DNS na serwer + Bot na slackunot7cd 2018/04/08 12:38


Hairpin NAT1) dla at.hs3.pl Sensowny docker w testach — not7cd 2018/04/15 13:54


glitch.com coś zmienił z SQlite więc spotty-kiwi nie działa — 2018/04/22 15:17


Prawilny deployment na Serwer na laptopie. — allgreed 2018/04/25 23 z hakiem


Instalacja nginx + certbot (https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04), konfiguracja nginx w trybie reverse proxy dla at.hs3.pl, przekierowanie portu na routerze. MAMY HTTPS! Do zrobienia zostało - całkowite ukrycie at.hs3.pl za reverse proxy (aktualnie port 80 jest serwowany bezpośrednio przez aplikację) — mroz 2018/07/01 16:40not7cd 2018/07/01 16:40


kontener wywalony na 127.0.0.1:6000 dostęp tylko przez proxy ngnix'a — not7cd 2018/07/04 17:57


Deployment na arthurhttps://whois.at.hsp.sh. — yasiu 2020/09/01


Skrypt na Mikrotiku został poprawiony i whois znowu działa w lokalu na Do Studzienki. — michal 2020/09/29

Podobne projekty

  • whois.txt
  • ostatnio zmienione: 2020/09/30 19:53
  • przez michal