shinobi

DIY HOME SERVER 2021 – Software – SHINOBI

1. DIY HOME SERVER - SHINOBI - Prepare container

This guide is my implementation of installing Shinobi CCTV.

Lets integrate some IP Camera Surveillance into our home server by installing Shinobi CCTV.

A common way to install applications in Proxmox is to use Docker containers. But I like to do things a bit different. Let’s install Shinobi in an Ubuntu LXC.

In Proxmox, select local (storage) → CT Templates → Templates.

In the dropdown, select an Ubuntu LTS (.04) template and click the Download button.

For best performance, choose the Ubuntu LTS version using the same Linux kernel as your Proxmox installation. In my case, Proxmox 6.04 and Ubuntu 20.04 both use kernel 5.4.

Click the Create CT button to create a new LXC.

On the General tab, specify the container name an set the password for the root user.

Be sure to deselect the Unprivileged container option!

Click Next.

On the Template tab, select the latest Ubuntu CT Template.

Click Next.

On the Root Disk tab, set a 20 GB Disk size.

Click Next.

On the CPU tab, set the number of cores.

Click Next.

On the Memory tab, set the memory size.

Click Next.

On the Network tab, set the static IP address and specify the Gateway.

Click Next.

On the DNS tab, there’s nothing to change.

Click Next.

On the Confirm tab, check the Start after created option.

Click Next.

The container will be installed.

Select the container and click Options → Start at boot → Edit.

Set the Start at boot option and click OK.

2. DIY HOME SERVER - SHINOBI - Installation

Start the newly created Shinobi container.

Select the Console.

Log in as user root with the password set during the container creation.

Enter the following command sequences :

apt update
apt upgrade -y
apt install curl -y
apt install wget -y
bash <(curl -s https://gitlab.com/Shinobi-Systems/Shinobi-Installer/raw/master/shinobi-install.sh)

Answer the question about the Develepment branch with No by pressing Enter.

In the menu, select 1. Ubuntu – Fast and Touchless by pressing 1 + Enter.

Answer the question about the Disabling IP v6 with Yes by pressing y + Enter.

Shinobi is now installed.

Take note of the URL, the superuser name and pasword in the installation summary.

3. DIY HOME SERVER - SHINOBI - Configure SSH

Enter the following command sequences :

sudo apt install openssh-server -y
nano /etc/ssh/sshd_config

Replace the line :
#PermitRootLogin prohibit-password
with :
PermitRootLogin yes

sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start

You are now able to access the Shinobi LXC container by SSH.

4. DIY HOME SERVER - SHINOBI - Network storage

By default, Shinobi stores camera footage on the same virtual drive it is installed on. Because you want Shinobi to store recordings on your TrueNAS VM, you’ll have to configure the Shinobi LXC container to mount a pre-configured TrueNAS SMB shared dataset (called Camera).

Enter the following command sequences :

sudo apt install cifs-utils -y

mkdir -p /home/Shinobi/TrueNAS/Camera

nano /home/.smb

Enter the following :

user=xxxxx
password=xxxxx
domain=xxxxx

Press CTRL + O to save.
Press CTRL + X to exit.

nano /etc/fstab

Enter the following (in one line) :

//xxx.xxx.xxx.xxx/ShareName /home/Shinobi/TrueNAS/Camera cifs uid=0,credentials=/home/.smb,iocharset=utf8,vers=3.0,noperm 0 0

Press CTRL + O to save.
Press CTRL + X to exit.

Test the auto-mount by using :

mount -a
umount -a

Now reboot the container :

reboot

Your TrueNAS shared folder will now be mounted inside /home/Shinobi/TrueNAS/Camera every time you boot the container.

5. DIY HOME SERVER - SHINOBI - Create user

Log in to the URL mentioned during installation, it ends with :8080/super.

The default username is admin@shinobi.video, the default password is admin.

Click the Add button to add a new user.

Enter an email address.
Enter a password and confirm it.

Click the Save button.

Go to Configuration → Additional Storage and delete the existing storage array.

Then add a new one by clicking the + STORAGE ARRAY button.

Specify your shared SMB mount by entering a name and the path to the mount. Be aware __DIR__ is a replacement for /home/Shinobi, so enter __DIR__/TrueNAS/Camera as path.

If you feel like it, scroll down to the Email options tab and configure a GMail account to be used for messaging.

Click the grey Save button at the top of the configuration page.

A popup appears summarizing the new settings.

Scroll down and click the green Save button.

Now click the Exit button to leave the super user interface.

Log in to the URL mentioned during installation, this time without the /super.

Use the username (email address) and password you created previously.

You can now start using Shinobi CCTV.

6. DIY HOME SERVER - SHINOBI - Add VLAN NIC

For security and privacy reasons, you better put all your IoT devices and especially all IP cameras in a seperate VLAN, one that has no internet access. Believe me, a lot of IP cameras have security issues or even “phone home” from time to time. 

Because my mainboard has multiple NIC, I can add one Network Interface connected to a seperate VLAN to the Shinobi LXC container and use that one to reach my IP cameras.

Use NetworkAdd to add a NIC to the container. Specify a fixed IP addres inside the IoT VLAN and don’t specify a Gateway.

7. DIY HOME SERVER - SHINOBI - Add cameras

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.