Giter VIP home page Giter VIP logo

ipredkoll's Introduction

Om

Det här är ett program som är gjort att fungera som ett komplement till
ipredkoll.se och specifikt genom att logga de IP-adresserna du använder
för att ansluta med till internet. Det för att om Maafian kommer och vill
begära ut information om just ditt IP så ska du kunna få en varning, även om
du är en foliehatt. :)

Just nu så är det här en ALPHA, det kan krascha oväntat och viktigast
är att det saknas en funktion att hämta vilka adresser som undersöks
från ipredkoll.se.

Programmet är från början tänkt att vara lätt att bygga ut och göra egna
sorters notifieringar, så länge man kan Ruby dvs.

Om du vill komma i kontakt med mej så kan du skicka ett e-post till
[email protected] eller så kan du hitta mej på irc.piratpartiet.se nick ba.

Buggar och/eller förslag på förbättringar kan ni lämna i
Issue trackern.

Installationsinstruktioner

Det här är skrivet med Ruby och använder några olika
gems för utökning, då främst amalgalite för att
få in SQLite3-databas enkelt eftersom målet är att kunna fixa i
ordning en lättinstallerbar version till Windows.

Installationsinstruktioner finns i wikin

För tillfället har jag testat att köra det här i:

  • Windows
  • Linux
  • Mac OS X

Hur programmet arbetar

Var 15:e minut så försöker det ta reda på vad du har för IP-adress, om du
sitter NAT:ad så kommer den att använda en extern tjänst, myip.dk, för att
ta reda på ditt IP. Förslag på bättre lösningar mottages tacksamt! :)

Om det IP:t du har nu inte har någon öppen post i database så stänger den
eventuellt öppna poster med datum och tid och öppnar därefter en ny post
med det nuvarande IP:t.

Om ditt IP, och tid, matchar något från ipredkoll.se så kommer en varning
skickas via de notifiers du har aktiverat. I nuläget finns bara en men det
kommer att komma fler.

Utöka med egna notifiers

För att utöka med en egen notifier så behöver du bara skriva en klass under
modulerna IPREDkoll::Notifiers. För ett exempel på en enkel notifier så se
notifier.rb och Logger.

Därefter så behöver du bara ladda den i din config.rb och lägga till
klassnamnet i arrayen config.notifiers så kommer den anropas.

ipredkoll's People

Contributors

ba avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ipredkoll's Issues

Ett UI för serverbiten

Tanken jag har är att ha en liten server som sparar IP:n och sköter den biten, till det ett smidigt UI som man kan använda för att konfa och se vad som händer.

Följande funktioner ser jag som bas till UI:t:

  • Kunna se vilka adresser du haft
  • Kunna ändra konfiguration (inte så mycket att ändra i nuläget, men hoppet är att enkelt kunna lägga till utökningar och sedan konfigurera det från det här gränssnittet - ligger en bit fram)
  • Använda det som ett sätt varna om något händer. Kommer också vara det sättet som används för att markera att du mottagit en varning så den inte skickas igen.

Windowskompatabilitet

Kunna köra det i windows utan problem.
Funderar på om det ska gå som en tjänst eller försöka satsa på ett program som ligger i Trayen. I nuläget lutar det mot det senare.

Arbete pågår

Ändring av hur man hittar data-mappen i olika OS

I nuläget så är alla mappar/konfigfiler hårdkodade men planen är att lägga in följande logik:

  • I Windows så kommer konfig/data-mappen ligga under applikationsmappen\etc (ex. c:\program\ipredkoll\etc
  • I Unix-baserade system så kommer filerna, om inget annat specificeras, hamna under ~/.ipredkoll/.

Båda kommer att gå att ändra fast jag kommer förutsätta att ingen är intresserad av att göra det under Windows.

Skriva en testsvit

Ha en testsvit för alla logikdelar av programmet så om något blir galet så märks det direkt.

Måste lära mej att använda rpsec och mock objects.

Enkel installation i Mac OS X

En enkel binärinstallation för Mac OS 10.4 och 10.5, möjligen bara en fullständig paketering med alla paket då det finns en version av Ruby på båda. 10.4 är... speciell men går förhoppningsvis att arbeta med.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.