mirror of
https://github.com/jokob-sk/NetAlertX.git
synced 2025-12-07 09:36:05 -08:00
Create INSTALL.md
This commit is contained in:
198
doc/INSTALL.md
Normal file
198
doc/INSTALL.md
Normal file
@@ -0,0 +1,198 @@
|
||||
# Pi.Alert Installation
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
Initially designed to run on a Raspberry PI, probably it can run on many other
|
||||
Linux distributions.
|
||||
|
||||
## Dependencies
|
||||
| Dependency | Comments |
|
||||
| ------------------------ | -------------------------------------------------------- |
|
||||
| Lighttpd | Probably works on other webservers / not tested |
|
||||
| arp-scan | Required for Scan Method 1 |
|
||||
| Pi.hole | Optional. Scan Method 2. Check devices doing DNS queries |
|
||||
| dnsmasq | Optional. Scan Method 3. Check devices using DHCP server |
|
||||
| IEEE HW Vendors Database | Necessary to identified Device vendor |
|
||||
|
||||
# Installation process
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
|
||||
## Raspberry Setup
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
1 - Install 'Raspberry Pi OS'
|
||||
- Instructions https://www.raspberrypi.org/documentation/installation/installing-images/
|
||||
- Lite version (without Descktop) is enough for Pi.Alert
|
||||
|
||||
2 -Activate ssh
|
||||
- Create a empty 'ssh' file in the boot partition of the SD
|
||||
|
||||
3 - Start the raspberry
|
||||
|
||||
4 - Login to the system with pi user
|
||||
- user: pi
|
||||
- password: raspberry
|
||||
|
||||
5 - Change de default password
|
||||
- passwd
|
||||
|
||||
6 - Set the casic configuration
|
||||
```
|
||||
sudo raspi-config
|
||||
```
|
||||
|
||||
7 - Optionally, configure a static IP in raspi-config
|
||||
|
||||
8 - Update the OS
|
||||
```
|
||||
sudo apt-get update
|
||||
sudo apt-get upgrade
|
||||
sudo reboot
|
||||
```
|
||||
|
||||
## Pi-hole Setup
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
1- Links & Doc
|
||||
- https://pi-hole.net/
|
||||
- https://github.com/pi-hole/pi-hole
|
||||
- https://github.com/pi-hole/pi-hole/#one-step-automated-install
|
||||
|
||||
2 - Login to the system with pi user
|
||||
|
||||
3 - Install Pi-hole
|
||||
```
|
||||
curl -sSL https://install.pi-hole.net | bash
|
||||
```
|
||||
- Select "Install web admin interface"
|
||||
- Select "Install web server lighttpd"
|
||||
|
||||
4 - Configure Pi-hole admin password
|
||||
```
|
||||
pihole -a -p PASSWORD
|
||||
```
|
||||
|
||||
5 - Connect to web admin panel
|
||||
- http://192.168.1.x/admin/
|
||||
- (replace the 192.168.1.x with your Raspberry IP)
|
||||
|
||||
6 - Activate DHCP server
|
||||
- Pi-hole -> Settings -> DHCP -> Mark "DHCP server enabled"
|
||||
|
||||
7 - Add pi.alert DNS Record
|
||||
- Pi-hole -> Local DNS -> DNS Records -> Add new domain /IP
|
||||
- pi.alert 192.168.1.x
|
||||
- (replace the 192.168.1.x with your Raspberry IP)
|
||||
|
||||
8 - Deactivate your current DHCP Server
|
||||
- Normaly at your router or AP
|
||||
|
||||
9 - Renew your computer IP to unsure you are using new DHCP Server and DNS
|
||||
- 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 & Pythom
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
1 - Install arp-scan utility and test
|
||||
```
|
||||
sudo apt-get install arp-scan
|
||||
sudo arp-scan -l
|
||||
```
|
||||
|
||||
2 - Install Python & packages
|
||||
```
|
||||
sudo apt-get install python-setuptools
|
||||
sudo apt install python-pip
|
||||
|
||||
pip install netaddr
|
||||
pip install dpkt
|
||||
pip install MacLookup
|
||||
```
|
||||
|
||||
|
||||
## Pi.Alert
|
||||
<!--- --------------------------------------------------------------------- --->
|
||||
Download Pi.Alert and uncmompress
|
||||
curl -LO https://github.com/pucherot/Pi.Alert/raw/main/install/pialert_latest.tar
|
||||
tar xvf pialert_latest.tar
|
||||
rm pialert_latest.tar
|
||||
|
||||
Front
|
||||
sudo ln -s /home/pi/pialert/front /var/www/html/pialert
|
||||
|
||||
Update lighttp 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"
|
||||
|
||||
Restart web server
|
||||
sudo /etc/init.d/lighttpd restart
|
||||
|
||||
Config gmail security if you want to use email reporting with gmail
|
||||
Go to your Google Account https://myaccount.google.com/
|
||||
On the left navigation panel, click Security
|
||||
On the bottom of the page, in the Less secure app access panel, click Turn on access
|
||||
Click Save button
|
||||
|
||||
Config Pialert parameters
|
||||
nano ~/pialert/back/pialert.conf
|
||||
|
||||
if you want to use email reporting, configure this parameters
|
||||
REPORT_MAIL = True
|
||||
SMTP_USER = 'user@gmail.com'
|
||||
SMTP_PASS = 'password'
|
||||
REPORT_TO = 'user@gmail.com'
|
||||
|
||||
if you want to update yout Dynamic DNS, configure this parameters
|
||||
DDNS_ACTIVE = True
|
||||
DDNS_DOMAIN = 'your_domain.freeddns.org'
|
||||
DDNS_USER = 'dynu_user'
|
||||
DDNS_PASSWORD = 'A0000000B0000000C0000000D0000000'
|
||||
DDNS_UPDATE_URL = 'https://api.dynu.com/nic/update?'
|
||||
|
||||
if you have installed Pi.hole and DHCP, activate this parameters
|
||||
PIHOLE_ACTIVE = True
|
||||
DHCP_ACTIVE = True
|
||||
|
||||
Update vendors DB
|
||||
python ~/pialert/back/pialert.py update_vendors
|
||||
|
||||
Test Pi.Alert Scan
|
||||
python ~/pialert/back/pialert.py internet_IP
|
||||
python ~/pialert/back/pialert.py 1
|
||||
|
||||
Add crontab jobs
|
||||
(crontab -l 2>/dev/null; cat ~/pialert/back/pialert.cron) | crontab -
|
||||
|
||||
|
||||
PIHOLE UNKNOWN
|
||||
DYNU ACTIVE
|
||||
APPLE
|
||||
TAR nuevo
|
||||
conf
|
||||
py
|
||||
cron
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
Pending explain the installation process
|
||||
- step 1
|
||||
- step 2
|
||||
```
|
||||
|
||||
|
||||
|
||||
### License
|
||||
GPL 3.0
|
||||
[Read more here](doc/LICENSE.txt)
|
||||
|
||||
### Contact
|
||||
pi.alert.application@gmail.com
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user