This is the official github repository for the NavCoin Stake Box. This repository is the source code behind the raspberry pi image which runs the navcoin daemon and a PHP based web wallet.
Current Version: v1.0.8
You can download the raspberry pi image from our website:
http://www.navcoin.org/downloads
Below are some basic security configurations which you might want to implement when setting up your NavPi. The NavPi will work immediately if you simply burn the img to the SD card, plug it into your network and turn it on.
If you purchased your NavPi from our store, you can skip straight to the setup section since we have already flashed the NavPi image onto the device for you.
These should be straight forward, just follow the official documentation:
https://www.raspberrypi.org/documentation/installation/installing-images
Item | Value |
---|---|
Unix Username | pi |
Unix Password | navpi101 |
Web Password | nav |
Because we ship the image with some default settings, we do recommend taking the following precautions.
SSH is disabled for security purposes, so any configuration you want to do must be done directly on the device.
It is recommended to use Ethernet as WiFi can be very slow to sync, but if you must use WiFi you can set it up via the graphical user interface on the device.
The NavPi is already locked down to ip address ranges:
192.168.x.x 172.16.x.x 10.10.x.x
This should prevent anyone accessing the Web UI from outside of your local network. If your local network is on a different IP range to these defaults or you want to lock web access down to a particular IP address, then do the following:
sudo leafpad /etc/apache2/sites-available/navpi.conf
and press enter.<VirtualHost *:443>
section.Require ip XXX.XXX
to be the IP address or range you want to allow.sudo service apache2 reload
and press enter.passwd
and press enter.navpi101
as the current password.The NavPi ships with a default ssl cetificate installed, but you will want to generate a new one when you set it up.
Open terminal and paste in the following command:
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -out /etc/apache2/ssl/navpi-ssl.crt -keyout /etc/apache2/ssl/navpi-ssl.key
When you're prompted, fill in each of the details with your own or just press the enter key as these details are not required for a privately used ssl key.
Once you've generated the ssl key we need to flush and reload apache:
sudo systemctl daemon-reload
sudo service apache2 reload
Whenever you browse to your NavPi's ip address, it will force HTTPS using this new certificate.
Since it's a self signed certificate, your browser will still complain that it is insecure, but all communication to the NavPi through your browser will be encrypted so no one can intercept your passwords.
ifconfig
and press enter.inet addr
(eg. 192.168.1.99).nav
.Control
menu itemServer
section, click the Change UI Password
button.Control
menu item.Security
section, type your desired password into the text field next to the Encrypt Wallet
button.Encrypt Wallet
button.Whenever you reboot your device, you need to make sure it is unlocked for staking to earn your rewards.
Your Wallet Is Locked, Click To Change
.Unlock for Staking Only
.Unlock for Staking Only
button.Your Wallet Is Unlocked For Staking, Click To Change
.Control
menu item.Security
section, click the Backup Wallet
button.sudo mv /home/pi/Desktop/wallet.dat /home/stakebox/.navcoin4/wallet.dat
and press enter.navpi101
and press enter.sudo chown www-data:www-data /home/stakebox/.navcoin4/wallet.dat
and press enter.sudo chmod 600 /home/stakebox/.navcoin4/wallet.dat
and press enter.sudo reboot now
and pressing enterOnce you've done all this setup, it is worth making a backup image of the SD card so if it fails, you can easily restore to this point.
hdiutil convert foo.dmg -format UDTO -o bar.img
This .img file can now be burned to a new SD Card using Etcher.
cd /home/stakebox/UI
and press enter.git pull
and press enter.If you have the latest version of the UI, you should be able to perform future updates by using the update button on the control page.
If you're upto date with the latest UI, you can run the following script manually:
/home/stakebox/UI/libs/updater.sh
Distributed under the MIT software license.