kiviak-install
no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
| — | kiviak-install [2015-02-07 19:55:28] (current) – created - external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Installation ====== | ||
| + | |||
| + | Install Bind, webserver with PHP and MySQL. For example on Debian: | ||
| + | |||
| + | < | ||
| + | |||
| + | ===== DNS ===== | ||
| + | |||
| + | Convince someone to forward a NS subdomain to you. For example: | ||
| + | < | ||
| + | dyn | ||
| + | d | ||
| + | </ | ||
| + | |||
| + | ===== Configure Bind ===== | ||
| + | |||
| + | You need to configure a zone. If you don't have any, you can use example config files | ||
| + | |||
| + | * named.conf.local - zone inclusion | ||
| + | * zones.foo.master - zone specification | ||
| + | * d.brmlab.cz - example zone (of course change it to your needs) | ||
| + | |||
| + | After configuration, | ||
| + | |||
| + | We need to generate a user key that we will sign the updates with (with this you can also securely update a remote DNS server). | ||
| + | |||
| + | < | ||
| + | |||
| + | Two files are generated, K*key and K*private. Take the key from the *key one and put it to zone declaration (zones.foo.master in our case) | ||
| + | |||
| + | ===== Configure dynamic updater ===== | ||
| + | |||
| + | Put scripts from the shell/ directory somewhere. Edit config.sh. | ||
| + | |||
| + | Try update with < | ||
| + | |||
| + | On Debian I had a problem that the /etc/bind directory was not owned by the user under which bind is running, so bind was unable to perform the update | ||
| + | |||
| + | ===== Some security ===== | ||
| + | |||
| + | The key should not be world-readable. You can create a separate user, chown & chmod 600 the key and all the scripts and then use the example sudoers file to run the update under that user. | ||
| + | |||
| + | ===== Web frontend ===== | ||
| + | |||
| + | Create a MySQL database. I use [[http:// | ||
| + | < | ||
| + | CREATE DATABASE `kiviak`; | ||
| + | |||
| + | CREATE USER ' | ||
| + | GRANT ALL PRIVILEGES ON `kiviak`.* TO ' | ||
| + | </ | ||
| + | Then execute schema.sql to create the table. | ||
| + | |||
| + | Point your webserver to files in web/ folder. These files don't have to be writable by the webserver. | ||
| + | |||
| + | Edit config.php to reflect your environment. | ||
| + | |||
| + | Enjoy. | ||
| + | |||
| + | ===== Misc. ===== | ||
| + | |||
| + | The delete.php script deletes hostnames that have not been updated for more than a month. You can add it to your crontab. | ||
kiviak-install.txt · Last modified: by 127.0.0.1
