Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rafaeljusto/shelter
Program to periodically validate and alert domains about DNS or DNSSEC misconfiguration
https://github.com/rafaeljusto/shelter
Last synced: about 9 hours ago
JSON representation
Program to periodically validate and alert domains about DNS or DNSSEC misconfiguration
- Host: GitHub
- URL: https://github.com/rafaeljusto/shelter
- Owner: rafaeljusto
- License: gpl-2.0
- Created: 2013-10-30T10:17:52.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2016-03-28T10:55:37.000Z (over 8 years ago)
- Last Synced: 2024-06-20T16:52:41.373Z (5 months ago)
- Language: Go
- Size: 3.66 MB
- Stars: 8
- Watchers: 3
- Forks: 3
- Open Issues: 29
-
Metadata Files:
- Readme: README.md
- Changelog: ChangeLog
- License: LICENSE
Awesome Lists containing this project
README
shelter
=======[![Build Status](https://travis-ci.org/rafaeljusto/shelter.png?branch=master)](https://travis-ci.org/rafaeljusto/shelter)
[![GoDoc](https://godoc.org/github.com/rafaeljusto/shelter?status.png)](https://godoc.org/github.com/rafaeljusto/shelter)
[![Download](https://api.bintray.com/packages/rafaeljusto/deb/shelter/images/download.png) ](https://bintray.com/rafaeljusto/deb/shelter/_latestVersion)System created for registries to periodically validate and alert domains about DNS or
DNSSEC misconfiguration.The idea started at the roundtable "DNSSEC: cooperation for the uptake of regional
initiatives" in LACTLD Tech Workshop occured in Panama City, Panama on September of 2013.
The roundtable was leaded by Hugo Salgado (.cl); Rafael Dantas Justo (.br); Robert Martin-
Legene (PCH). Many others participants from other registries of Latin America also
contributed with ideas for the project.For more information check the [Wiki](https://github.com/rafaeljusto/shelter/wiki).
features
--------* Automatically detect DNS/DNSSEC configuration problems of the registered domains
* Automatically sends e-mails notifying domain's owners of the configuration problems
* System can be deployed on registry or provider back-end infrastructure, not letting
critical data to spread to other networks
* Uses REST architecture to allow a distributted system and easy integration with other
softwares
* Multi-language support for notification's e-mails that can be distinct for each domain's
owner
* Built-in web client to manage domains easily without the necessity to develop a REST
client
* IDN support for domains' names
* Optimized scan strategy to verify all registered domains configurations
* On-the-fly domain verification interface
* Allow a cluster of MongoDB servers for data persistencyinstalling
----------The install information can be found [here](https://github.com/rafaeljusto/shelter/wiki/Install-and-configure).
building
--------The Shelter project was developed using the [Go language](http://golang.org/)
The objects are persisted using a MongoDB database.
To install it check the webpage http://www.mongodb.org/Also, to easy run the project tests you will need the following:
* Python3 - http://www.python.org/
* Karma and dependencies - http://karma-runner.github.io
* npm install -g karma
* npm install -g karma-cli
* npm install -g karma-jasmine
* npm install -g karma-phantomjs-launcher
* npm install -g karma-ng-html2js-preprocessorRemember that the project directory should respect the path bellow, because the source
code dependencies can make references to this structure.```
/src/github.com/rafaeljusto/shelter
```You can automatically retrieve the project with the desired structure using the following
command:```
go get -u github.com/rafaeljusto/shelter
```And finally, to build the project, just run the following command on the project root:
```
go build shelter.go
```Optionally you can run the tests executing the following command on the project root:
```
python3 test-all.py
```deploying
---------To deploy the project you will need one or more programs bellow, depending on the operational system
that you choose, and if you want a CI enviroment.* FPM - https://github.com/jordansissel/fpm (Debian packages)
* ~~Termbox - https://github.com/nsf/termbox-go (Debian packages)~~
* Docker - http://docker.io/
* ~~OpenSSL - https://www.openssl.org/ (used in Docker build)~~
* Inno Setup - http://www.jrsoftware.org/isinfo.php (Windows)All necessary scripts to generate the packages are under the deploy folder in the project
root.