L'idée est de démontrer qu'il est possible d'héberger un site web à bas coût et basse consommation énergétique (directe), éventuellement hors grille énergétique (solaire ou batterie) et hors réseau Internet (accès wifi)
Est-il pour autant ecolowtech ?
touch /boot/ssh
USER=pi PASSWORD=raspberry SALT=lalabomedia NAME=$(eval openssl passwd -6 -salt $SALT -stdin <<< $PASSWORD) echo $USER':'$NAME | tee /boot/userconf.txt
echo 'country=FR ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev network={ ssid="Nom du wifi" psk="Mot de passe du wifi" key_mgmt=WPA-PSK }' | tee /boot/wpa_supplicant.conf
Il s'agit de retrouver l'IP de son Raspberry sur le réseau auquel on l'a connecté. Pour cela, soit :
OU
sudo nmap -sn 192.168.0.0/24
Si nmap n'est pas installé, tapez la commande suivante :
sudo apt install nmap
Vous devriez avoir un appareil intitulé “Raspberry Pi Foundation”, retenez son IP. Parfois le nom n'apparait pas. Cherchez alors un autre appareil probablement intitulé “Unknown”
Nous allons nous connecter en SSH au Raspberry, avec dans un terminal la commande suivante :
ssh pi@IP_QUE_VOUS_AVEZ_TROUVE
Vous êtes désormais connecté au Raspberry !
WIFINAME='CourtCircuit' sudo apt install hostapd echo 'interface=wlan0 driver=nl80211 hw_mode=g channel=6 ieee80211n=1 wmm_enabled=0 macaddr_acl=0 ignore_broadcast_ssid=0 auth_algs=1 ssid='$WIFINAME | sudo tee -a /etc/hostapd/hostapd.conf sudo systemctl unmask hostapd sudo systemctl enable hostapd sudo systemctl restart hostapd
echo 'interface wlan0 static ip_address=192.168.0.254/24' | sudo tee -a /etc/dhcpcd.conf
sudo apt install dnsmasq echo 'interface=wlan0 dhcp-range=192.168.0.1,192.168.0.253,255.255.255.0,24h cache-size=0 address=/#/192.168.0.254' | sudo tee -a /etc/dnsmasq.conf sudo systemctl unmask dnsmasq sudo systemctl enable dnsmasq sudo systemctl restart dnsmasq
sudo apt install lighttpd sudo mv /var/www/html/index.lighttpd.html /var/www/html/index.html
A vous de copier le contenu de votre site web dans /var/www/html
On obtient une consommation totale de 50mA à 5V, soit 0,25W
sudo sed -i 's/vc4-kms-v3d/vc4-fkms-v3d driver/' /boot/config.txt echo '@reboot /usr/bin/tvservice -o' | sudo tee -a /etc/crontab
echo 'dtparam=act_led_trigger=none dtparam=act_led_activelow=on' | sudo tee -a /boot/config.txt
Il suffit de se connecter au wifi généré, et d'aller sur n'importe quelle URL qui redirigera sur le site hébergé par le Raspberry Pi.
Aller sur la carte SD dans /boot/
#!/bin/bash # SSH activation BEFORE FIRST BOOT !!!!!!!!! touch ssh # SSH credentials USER=pi PASSWORD=raspberry SALT=lalabomedia NAME=$(eval openssl passwd -6 -salt $SALT -stdin <<< $PASSWORD) echo $USER':'$NAME | tee userconf.txt # Wifi connection WIFISSID='MonWifi' WIFIPASSWORD='MonMotDePasseWifi' echo 'country=FR # Your 2-digit country code ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev # Include this line for Stretch network={ ssid="'$WIFISSID'" psk="'$WIFIPASSWORD'" key_mgmt=WPA-PSK }' | tee wpa_supplicant.conf
#!/bin/bash WIFINAME='CourtCircuit' sudo apt install hostapd dnsmasq lighttpd echo 'interface=wlan0 driver=nl80211 hw_mode=g channel=6 ieee80211n=1 wmm_enabled=0 macaddr_acl=0 ignore_broadcast_ssid=0 auth_algs=1 ssid='$WIFINAME | sudo tee -a /etc/hostapd/hostapd.conf echo 'interface wlan0 static ip_address=192.168.0.254/24' | sudo tee -a /etc/dhcpcd.conf echo 'interface=wlan0 dhcp-range=192.168.0.1,192.168.0.253,255.255.255.0,24h # pas de cache cache-size=0 # on indique via dnsmasq que toutes les requêtes vont vers l'ip locale address=/#/192.168.0.254' | sudo tee -a /etc/dnsmasq.conf sudo mv /var/www/html/index.lighttpd.html /var/www/html/index.html sudo systemctl unmask hostapd dnsmasq sudo systemctl enable hostapd dnsmasq sudo systemctl restart hostapd dnsmasq sudo sed -i 's/vc4-kms-v3d/vc4-fkms-v3d driver/' /boot/config.txt echo '@reboot /usr/bin/tvservice -o' | sudo tee -a /etc/crontab echo 'dtparam=act_led_trigger=none dtparam=act_led_activelow=on' | sudo tee -a /boot/config.txt # Put content in /var/www/html/