Update INSTALL.md

This commit is contained in:
pucherot
2021-01-18 15:43:03 +01:00
parent d3c2c8699f
commit e5b3408377

View File

@@ -17,189 +17,223 @@ Estimated time: 20'
# Installation process # Installation process
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->
## Raspberry Setup ## Raspberry Setup
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->
1 - Install 'Raspberry Pi OS' 1.1 - Install 'Raspberry Pi OS'
- Instructions https://www.raspberrypi.org/documentation/installation/installing-images/ - Instructions https://www.raspberrypi.org/documentation/installation/installing-images/
- *Lite version (without Descktop) is enough for Pi.Alert* - *Lite version (without Descktop) is enough for Pi.Alert*
2 - Activate ssh 1.2 - Activate ssh
- Create a empty file with name 'ssh' in the boot partition of the SD - Create a empty file with name 'ssh' in the boot partition of the SD
3 - Start the raspberry 1.3 - Start the raspberry
4 - Login to the system with pi user 1.4 - Login to the system with pi user
``` ```
user: pi user: pi
password: raspberry password: raspberry
``` ```
5 - Change the default password of pi user 1.5 - Change the default password of pi user
``` ```
passwd passwd
``` ```
6 - Setup the basic configuration 1.6 - Setup the basic configuration
``` ```
sudo raspi-config sudo raspi-config
``` ```
7 - Optionally, configure a static IP in raspi-config 1.7 - Optionally, configure a static IP in raspi-config
1.8 - Update the OS
```
sudo apt-get update
sudo apt-get upgrade
sudo shutdown -r now
```
8 - Update the OS
```
sudo apt-get update
sudo apt-get upgrade
sudo shutdown -r now
```
## Pi-hole Setup ## Pi-hole Setup
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->
1- Links & Doc 2.1 - Links & Doc
- https://pi-hole.net/ - https://pi-hole.net/
- https://github.com/pi-hole/pi-hole - https://github.com/pi-hole/pi-hole
- https://github.com/pi-hole/pi-hole/#one-step-automated-install - https://github.com/pi-hole/pi-hole/#one-step-automated-install
2 - Login to the system with pi user 2.2 - Login to the system with pi user
3 - Install Pi-hole 2.3 - Install Pi-hole
``` ```
curl -sSL https://install.pi-hole.net | bash curl -sSL https://install.pi-hole.net | bash
``` ```
- Mark "Install web admin interface" - Select "Install web admin interface"
- Mark "Install web server lighttpd" - Select "Install web server lighttpd"
4 - Configure Pi-hole admin password 2.4 - Configure Pi-hole admin password
``` ```
pihole -a -p PASSWORD pihole -a -p PASSWORD
``` ```
5 - Connect to web admin panel 2.5 - Connect to web admin panel
- http://192.168.1.x/admin/ - http://192.168.1.x/admin/
- (*replace 192.168.1.x with your Raspberry IP*) - (*replace 192.168.1.x with your Raspberry IP*)
6 - Activate DHCP server 2.6 - Activate DHCP server
- Pi-hole -> Settings -> DHCP -> Mark "DHCP server enabled" - Pi-hole -> Settings -> DHCP -> Mark "DHCP server enabled"
7 - Add pi.alert DNS Record 2.7 - Add pi.alert DNS Record
- Pi-hole -> Local DNS -> DNS Records -> Add new domain /IP ```
- pi.alert 192.168.1.x hostname -I
- (*replace 192.168.1.x with your Raspberry IP*) ```
- Pi-hole -> Local DNS -> DNS Records -> Add new domain /IP
- pi.alert 192.168.1.x
- (*replace 192.168.1.x with your Raspberry IP*)
8 - Deactivate your current DHCP Server (*Normaly at your router or AP*) 2.8 - Deactivate your current DHCP Server (*Normaly at your router or AP*)
2.9 - Renew your computer IP to unsure you are using the new DHCP and DNS server
- Windows: cmd -> ipconfig /renew
- Linux: shell -> sudo dhclient -r; sudo dhclient
- Mac: Apple menu -> System Preferences -> Network -> Select the network
-> Advanced -> TCP/IP -> Renew DHCP Lease
## Lighttpd & PHP
<!--- --------------------------------------------------------------------- --->
If you have already installed pi.hole, this step is not necessary
3.1 - Install lighttpd
```
sudo apt-get install lighttpd -y
```
3.2 - Install PHP
```
sudo apt-get install php php-cgi php-fpm php-sqlite3 -y
```
3.3 - Activate PHP
```
sudo lighttpd-enable-mod fastcgi-php
sudo service lighttpd force-reload
```
9 - Renew your computer IP to unsure you are using the new DHCP and DNS server
- Windows: cmd -> ipconfig /renew
- Linux: shell -> sudo dhclient -r; sudo dhclient
- Mac: Apple menu -> System Preferences -> Network -> Select the network ->
Advanced -> TCP/IP -> Renew DHCP Lease
## arp-scan & Python ## arp-scan & Python
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->
1 - Install arp-scan utility and test 4.1 - Install arp-scan utility and test
``` ```
sudo apt-get install arp-scan sudo apt-get install arp-scan
sudo arp-scan -l sudo arp-scan -l
``` ```
2 - Install Python & packages 4.2 - Test Python
``` New versions of 'Raspberry Pi OS' includes python. You can check that
sudo apt-get install python-setuptools Python is installed with the command:
sudo apt install python-pip ```
python -V
```
pip install netaddr 4.3 - If python is not installed in your system, you can install it with this
pip install dpkt command:
pip install MacLookup ```
``` sudo apt-get install python
```
## Pi.Alert ## Pi.Alert
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->
1- Download Pi.Alert and uncompress 5.1 - Download Pi.Alert and uncompress
``` ```
curl -LO https://github.com/pucherot/Pi.Alert/raw/main/install/pialert_latest.tar curl -LO https://github.com/pucherot/Pi.Alert/raw/main/install/pialert_latest.tar
tar xvf pialert_latest.tar tar xvf pialert_latest.tar
rm pialert_latest.tar rm pialert_latest.tar
``` ```
2 - Public the front portal 5.2 - Public the front portal
``` ```
sudo ln -s /home/pi/pialert/front /var/www/html/pialert sudo ln -s /home/pi/pialert/front /var/www/html/pialert
``` ```
3 - Update lighttpd config 5.3 - Update lighttpd config
``` ```
sudo sh -c "printf '\n\n\$HTTP[\"host\"] == \"pi.alert\" {\n server.document-root = \"/var/www/html/pialert/\"\n}\n' >> /etc/lighttpd/external.conf" sudo sh -c "printf '\n\n\$HTTP[\"host\"] == \"pi.alert\" {\n server.document-root = \"/var/www/html/pialert/\"\n}\n' >> /etc/lighttpd/external.conf"
sudo /etc/init.d/lighttpd restart sudo /etc/init.d/lighttpd restart
``` ```
4 - If you want to use email reporting with gmail 5.4 - If you want to use email reporting with gmail
- Go to your Google Account https://myaccount.google.com/ - Go to your Google Account https://myaccount.google.com/
- On the left navigation panel, click Security - On the left navigation panel, click Security
- On the bottom of the page, in the Less secure app access panel, - On the bottom of the page, in the Less secure app access panel,
click Turn on access click Turn on access
- Click Save button - Click Save button
5 - Config Pialert parameters 5.5 - Config Pialert parameters
``` ```
nano ~/pialert/back/pialert.conf nano ~/pialert/back/pialert.conf
``` ```
- If you want to use email reporting, configure this parameters - If you want to use email reporting, configure this parameters
```ini ```ini
REPORT_MAIL = True REPORT_MAIL = True
SMTP_USER = 'user@gmail.com' SMTP_USER = 'user@gmail.com'
SMTP_PASS = 'password' SMTP_PASS = 'password'
REPORT_TO = 'user@gmail.com' REPORT_TO = 'user@gmail.com'
``` ```
- If you want to update your Dynamic DNS, configure this parameters - If you want to update your Dynamic DNS, configure this parameters
```ini ```ini
DDNS_ACTIVE = True DDNS_ACTIVE = True
DDNS_DOMAIN = 'your_domain.freeddns.org' DDNS_DOMAIN = 'your_domain.freeddns.org'
DDNS_USER = 'dynu_user' DDNS_USER = 'dynu_user'
DDNS_PASSWORD = 'A0000000B0000000C0000000D0000000' DDNS_PASSWORD = 'A0000000B0000000C0000000D0000000'
DDNS_UPDATE_URL = 'https://api.dynu.com/nic/update?' DDNS_UPDATE_URL = 'https://api.dynu.com/nic/update?'
``` ```
- If you have installed Pi.hole and DHCP, activate this parameters - If you have installed Pi.hole and DHCP, activate this parameters
```ini ```ini
PIHOLE_ACTIVE = True PIHOLE_ACTIVE = True
DHCP_ACTIVE = True DHCP_ACTIVE = True
``` ```
6 - Update vendors DB 5.6 - Update vendors DB
``` ```
python ~/pialert/back/pialert.py update_vendors python ~/pialert/back/pialert.py update_vendors
``` ```
7 - Test Pi.Alert Scan 5.7 - Test Pi.Alert Scan
``` ```
python ~/pialert/back/pialert.py internet_IP python ~/pialert/back/pialert.py internet_IP
python ~/pialert/back/pialert.py 1 python ~/pialert/back/pialert.py 1
``` ```
8 - Add crontab jobs 5.8 - Add crontab jobs
``` ```
(crontab -l 2>/dev/null; cat ~/pialert/back/pialert.cron) | crontab - (crontab -l 2>/dev/null; cat ~/pialert/back/pialert.cron) | crontab -
``` ```
9 - Add permissions to the web-server user 5.9 - Add permissions to the web-server user
``` ```
sudo chgrp -R www-data ~/pialert/back ~/pialert/back/pialert.conf ~/pialert/front ~/pialert/db sudo chgrp -R www-data ~/pialert/back ~/pialert/back/pialert.conf ~/pialert/front ~/pialert/db
chmod -R 770 ~/pialert/back ~/pialert/back/pialert.conf ~/pialert/front ~/pialert/db chmod -R 770 ~/pialert/back ~/pialert/back/pialert.conf ~/pialert/front ~/pialert/db
``` ```
10 - Check DNS record por pi.alert (explained in point 7 of Pi.hole installing) 5.10 - Check DNS record for pi.alert (explained in point 2.7 of Pi.hole
- Add pi.alert DNS Record installation)
- Pi-hole -> Local DNS -> DNS Records -> Add new domain /IP - Add pi.alert DNS Record
- pi.alert 192.168.1.x ```
hostname -I
```
- Pi-hole -> Local DNS -> DNS Records -> Add new domain /IP
- pi.alert 192.168.1.x
- (*replace 192.168.1.x with your Raspberry IP*)
5.11 - Use admin panel to configure the devices
- http://pi.alert/
- http://192.168.1.x/pialert/
- (*replace 192.168.1.x with your Raspberry IP*) - (*replace 192.168.1.x with your Raspberry IP*)
11 - Use admin panel to configure the devices
- http://pi.alert/
- http://192.168.1.x/pialert/
- (*replace 192.168.1.x with your Raspberry IP*)
## Device Management ## Device Management
<!--- --------------------------------------------------------------------- ---> <!--- --------------------------------------------------------------------- --->