[TUTO] Serveur de surveillance [WIP]
je voulais faire quelquechose de minimaliste, donc je suis parti sur de l'opensource et au plus simple.
j'ai donc un RPI4 alimenté en permanence, avec RPIOS
Home assistant installé en core dessus
une picam et une prise wifi 16A qui va alimenter à la fois la CN et l'aspirateur.
le plan c'est de pouvoir agir a distance et de pouvoir voir ce que fait la CN dans l'atelier quand je travaille dans mon bureau et de l'éteindre si je vois un problème depuis mon smartphone. j'ai également mis un detecteur de fumée au dessus de l'enclosure et une boule anti-feu dans l'enclosure.
liste d'achat :
Rpi4 4gb 32bit 68,90 € : https://amzn.to/2X4Sx6E
PiCam (moi j'ai pris une wide angle 200° car je voulais bien tout voir) j'ai pris celle là chez kubii : https://www.kubii.fr/cameras-accessoire ... 11205.html
celle la fera l'affaire sur amazon marquée compatible pi4 dans les commentaires 19,99 € : https://amzn.to/38RVtJr
multiprise 2,70 € : https://amzn.to/38XGzl7
prise wifi Konyks compatible tuya 19,56 € https://amzn.to/3rM0Cvd
carte micro sd 32go classe 10 - 11,61 € : https://amzn.to/3rJs5xz
ribbon (grande nate de connexion de la cam en 50cms ça suffit ) 5,29 € https://amzn.to/38XuQ65
alim rpi usbC - la vrai alim fait 5,1V - 3A - 13,65 € : https://amzn.to/3rNnU3J
boule anti feu 27,99 € : https://amzn.to/3b4bvTc
TOTAL : 169,69 €
pièces à imprimer :
boitier RPI4 : https://www.thingiverse.com/thing:3793664
bras amovible de la cam : https://www.thingiverse.com/thing:3114849
cover pour la cam wide angle : https://www.thingiverse.com/thing:4706284
boule anti-feu au plafond de l'enclosure c'est un peu mon assurance : https://www.thingiverse.com/thing:4706309
1] installer piOS :
faire un formatage de la carte SD avec sdcard formater
telecharger rpi imager : https://www.raspberrypi.org/software/
et installer sur la carte sd la version lite 32bit
aller à la racine de la SD avec l'explorateur
et créer un fichier
Code : Tout sélectionner
wpa_supplicant.conf
et coller ce texte :
Code : Tout sélectionner
country=fr
update_config=1
ctrl_interface=/var/run/wpa_supplicant
network={
scan_ssid=1
ssid="SSID"
psk="password"
}
créer un fichier
Code : Tout sélectionner
ssh
sauvegarder puis sortir la carte SD
pas comme des bourrins, faites attention un peu ! et ejecter proprement la carte SD
ensuite on la met dans le RPI et on le branche
2] se connecter au pi :
telecharger putty
https://www.chiark.greenend.org.uk/~sgt ... atest.html
aller sur le routeur puis dans DHCP et dans l'onglet actif pour voir si le Rpi a bien été trouvé et quelle adresse a été attribuée
dans notre exemple ça sera : 192.168.1.48
rentrer dans putty et se connecter en mettant l'adresse donc 192.168.1.48 et le port 22
il y a un message d'alerte on clique sur oui
et on se logge
user : pi
et passwd : raspberry
3] on sécurise le pi :
on commence par définir le mot de passe root :
Code : Tout sélectionner
sudo passwd root
su
adduser nicoco
et créez un mot de passe
Code : Tout sélectionner
nano /etc/ssh/sshd_config
Code : Tout sélectionner
permitrootlogin no
AllowUsers nicoco root
Code : Tout sélectionner
nano /etc/sudoers
Code : Tout sélectionner
# User privilege specification
Code : Tout sélectionner
#root ALL=(ALL) ALL
root ALL=(ALL:ALL) ALL
nicoco ALL=(ALL:ALL) ALL
homeassistant ALL=(ALL:ALL) ALL
Code : Tout sélectionner
/etc/init.d/ssh restart
ctrl+d
ctrl+d
se relogger sur putty
mettre votre user ici nicoco
+ passwd
Code : Tout sélectionner
su
Code : Tout sélectionner
userdel pi
raspbian est proprement installé
4] Installation de home assistant
Code : Tout sélectionner
sudo apt update
sudo apt install python3-dev python3-pip python3-venv
pip3 install --upgrade pip
sudo pip install zeroconf==0.24.0
sudo apt-get install build-essential checkinstall
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev \
libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev
cd /opt
sudo wget https://www.python.org/ftp/python/3.8.6/Python-3.8.6.tgz
sudo tar xzf Python-3.8.6.tgz
cd Python-3.8.6
sudo ./configure --enable-optimizations
sudo make altinstall
cd /opt
sudo rm -f Python-3.8.6.tgz
python3.8 -m pip install --upgrade pip
sudo pip3 install --upgrade virtualenv
sudo adduser --system homeassistant
sudo addgroup homeassistant
sudo adduser homeassistant dialout
passwd homeassistant
Code : Tout sélectionner
sudo mkdir /opt/homeassistant
sudo chown homeassistant:homeassistant /opt/homeassistant
sudo su -s /bin/bash homeassistant
cd /opt/homeassistant
python3.8 -m venv /opt/homeassistant
source bin/activate
python3.8 -m pip install wheel
pip3 install homeassistant
sudo pip3 install --upgrade homeassistant
hass
aller sur votre navigateur et allez sur http://ip:8123
et rentrer nom, user et passwd
là Home assistant est installé
5) Installation de la cam
réouvrir putty
connecter la cam avec les petites fiches
Code : Tout sélectionner
sudo apt update
sudo apt full-upgrade
sudo raspi-config
faire enter sur picam et activer la camera
faire sortir et lancer le reboot pour activer les modifications
relancer putty et se relogguer
Code : Tout sélectionner
sudo nano /etc/modules-load.d/modules.conf
Code : Tout sélectionner
bcm2835-v4l2
Code : Tout sélectionner
sudo apt-get install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad
sudo nano /etc/systemd/system/raspicam.service
Code : Tout sélectionner
[Unit]
Description=Raspberry Pi Camera Stream Service
After=network.target
[Service]
Type=simple
ExecStartPre=/usr/bin/v4l2-ctl -c video_bitrate=4000000
ExecStart=/usr/bin/gst-launch-1.0 v4l2src ! video/x-h264,width=1280,height=720,framerate=30/1 ! h264parse config-interval=1 ! matroskamux streamable=true ! tcpserversink host=::0 port=9000 sync=false sync-method=2
[Install]
WantedBy=multi-user.target
Code : Tout sélectionner
sudo systemctl daemon-reload
sudo systemctl enable raspicam.service
sudo systemctl start raspicam.service
apt-get install ffmpeg
Code : Tout sélectionner
sudo nano /opt/homeassistant/config/configuration.yaml
Code : Tout sélectionner
ffmpeg:
ffmpeg_bin: /usr/bin/ffmpeg
camera:
- platform: ffmpeg
input: tcp://192.168.1.48:9000
name: Raspicam
et 3 devant input: etc.
Code : Tout sélectionner
sudo systemctl restart homeassistant
cliquez sur la fenêtre et vous pouvez ensuite régler la focale à la main,
il faut tourner la petite bague, on a toujours peur de la péter mais ça tourne ^^
6) Installation de la prise
allez sur votre smartphone et telechargez tuya
enregistrez vous et créez une pièce
puis faites ajouter un nouveau dispositif/electricien/prise wifi
et suivez le guide.
allez dans home assistant
puis configuration/integration et cliquez sur ajouter en bas à droite
cherchez tuya
mettez le user et pass de votre compte que vous venez de créer
ajouter la prise et c'est bon.
On a maintenant un serveur de surveillance avec un Rpi, une cam qu'on peut orienter et la possibilité de l'éteindre depuis le téléhonne
en local seulement
7) mise en place d'un VPN
on installe pivpn sur le Rpi
Code : Tout sélectionner
curl -L https://install.pivpn.io | bash
et on fait toutes les redirections de port du routeur ver le Rpi
l'adresse ip doit être fixe ou il faut mettre en place une redirection ddns
on installe l'appli openvpn sur son smartphone, ensuite il faut mettre son adresse + le bon port.
et là depuis le smartphone et a l'exterieur, on se connecte au Rpi via openvpn
donc on se retrouve avec le smartphone sur le reseau local et on peut ainsi accéder à home assistant.
les photos sont pour bientôt !