CYBER
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mia 71414b6e63 Update 'views/domains/remove.tt' 3 months ago
bin (Optionally) check zones with nsd before they are written, to ensure safety 1 year ago
dbupdate Collect WHOIS name on account page 1 year ago
doc Move docs to separate dir 1 year ago
environments initial commit 1 year ago
lib Collect WHOIS name on account page 1 year ago
public Update 'public/js/admin_domains.js' 3 months ago
t initial commit 1 year ago
views Update 'views/domains/remove.tt' 3 months ago
whoissrv WHOIS server: display registrant name, if it has been entered 1 year ago
.dancer initial commit 1 year ago
.gitignore misc improvements, basic authentication system (no session support yet) 1 year ago
LICENSE Apply licence (GPLv2) 1 year ago
Makefile.PL initial commit 1 year ago
README.md Initial version of WHOIS server 1 year ago
app.psgi Indentation cleanup (switch to tabs) 1 year ago
config.yml (Optionally) check zones with nsd before they are written, to ensure safety 1 year ago
cpanfile (Optionally) check zones with nsd before they are written, to ensure safety 1 year ago
schema.sql Collect WHOIS name on account page 1 year ago

README.md

cyberman

A web-ui for registering domains, written in modern Perl 5 with Dancer.

issue tracker | detailed documentation

Current state

Cyberman was designed to serve .cyb, however it can easily be configured to work with other TLDs. In addition to the default ‘cyberpunk’ stylesheet, there is a more generic ‘light’ stylesheet available.

Features

  • Lightweight (~50M) server-side application, no database server required
  • Lightweight, intuitive web UI
  • Produces zone files which can be used by most DNS daemons

Prerequisites

You need a recent Perl 5 version (5.14 or later should do) and some Perl modules. The best way to get these is to install cpanminus (cpan App::cpanminus, curl https://cpanmin.us | perl - app::cpanminus, or better still, use your package manager) and then run cpanm --installdeps . in the repo directory.

You also need SQLite3. To set up the database:

cd /path/to/cyberman
sqlite3 db.sqlite
(sqlite prompt) .read schema.sql
(sqlite prompt) .q

Getting started

Once you’ve got all that, just run plackup to start a development server. You should probably inspect and alter config.yml first.

Production!

You can deploy cyberman however you want, using Plack. Just make sure you pass -E production - this disables detailed error pages which could be a security risk, and tones down the logging.

WHOIS server

The WHOIS server is written in Perl 6 (what do you think I am, a luddite?!) so you need to install that first, along with Panda, a package manager. Then, install the dependencies for the WHOIS server: cat whoissrv/DEPENDENCIES | xargs -n 1 panda install. Edit the values in the whoissrv section of config.yml and then start the server as root.

The WHOIS server is not supported on Windows at this time.

Questions, fan mail, etc

Feel free to join #cyb on irc.cyberia.is!

License

Cyberman: Web UI for domain registration
Copyright (C) 2017 "Al Beano" <albino@autistici.org>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program (see LICENSE file); if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.