FreeRadiantBunny docs

Install FreeRadiantBunny

These instructions are a work-in-progress Below is a step-by-step guide for getting a freeradiantbunny website with database operational.


1. Install freeradiantbunny and freeradiantbunny.node

1.1 Your project needs to be hosted.

So far the project has used only one hosting provider, digitalocean. So, this example uses digitalocean. There are many hosting providers. Note, that if you decide to sign-up digitalocean, you can help the freeradiantbunny.org project by using our referral link: Get Digital Ocean using the referral link for friends and followers of freeradiantbunny.node project..

1.2 If you get a digitalocean account, start by creating a "droplet"

In this case a "droplet" is built to be an NodeJS 12.18.0 on Ubuntu 20.04 virtual machine hosted in a big computer center of your chosen location.

Once the digitalocean account is ready, use the instructions below to create a droplet. The instructinos guide one in using a console to issue commands and create a droplet.

Enter the command-line sysadmin commands in the How To linked below. The commands help you set up a user account on your virtual server.

These instructions include the installation of the specialized node.js Express webserver (freeradiantbunny).

These instructions also include the code for installing the freeradiantbunny.node npm module using npm.



Below are some notes and command-line riffs for installing.

Give the webserver a unique identifier.

# three-letter identifier
$tli = "fcm";

After a fresh install of debian GNU/Linux, here are some commands for installing some basic software packages.

# set up webserver for freeradiantbunny
print "setting up webserver...\n";
print "tli = " . $tli . "\n";

First there we check that our software repositories are filled with current metadata.

$command = "sudo apt-get update";
$command = "sudo apt-get upgrade";

Then we install a text editor and a database.

$command = "sudo apt-get install emacs";
$command = "sudo apt-get install postgresql";

More software repository maintenance.

$command = "sudo apt autoremove";

Install node.js so that our webserver can reverse proxy to an asynchronous webserver.

$command = "sudo apt-get install nodejs";
$command = "sudo apt-get install npm";
$command = "node -v";
$command = "npm -v";
$command = "npm install npm@latest -g";
$command = "node -v";  

Install a process manager for node.js.

$command = "npm install pm2 -g";
$command = "pm2 -v";

Check the firewall.

# inspect firewall rules
$command = "sudo ufw status";

Install the files of the website. This is probably going to be the backup from the last install, or it could be the very first time this site is starting and the freeradiantbunny demo files.

// the following should be replaced with a git command to a repository
$webdir = "~/public_" . $tli;
$command = "cp -r ~/freeradiantbunny.node/node_modules/freeradiantbunny/public " . $webdir;

Below are some ideas on how to set up a SSL ceftificate for the website. The process will require that you enter the domain name of the website.

$command = "sudo apt-get install software-properties-common;";
$command = "sudo add-apt-repository universe;";
$command = "sudo add-apt-repository ppa:certbot/certbot;";
$command = "sudo apt-get update;";
$command = "sudo apt-get install certbot python3-certbot-nginx;";
$command = "sudo certbot --nginx";

All this is just to bootstrap that system. The instuctions above are to prep the system for freeradiantbunny.



2. Test the webserver.

2.1 This needs to be more helpful and descriptive. But, for now we encourage you to click around.


Updated: 2020-10-09