[Docker] Liste de commandes utiles
J'ai découvert Docker en installant Jeedom (application domotique) sur mon NAS Synology. Pour la gestion du conteneur, j'utilise principalement l'outil intégré dans la version DSM 6.2 de mon NAS Synology : ceci a l'avantage pour un novice d'appréhender l'utilisation de Docker. Malheureusement, il y a peu de documentation sur cette utilisation particulière pour ne pas dire à la marge. Voici donc les commandes qu'on peut utiliser sur le serveur via ssh, soit une utilisation classique de Docker.
Site intéressant concernant Docker sur NAS Syno : https://www.nas-forum.com/forum/topic/65309-tuto-docker-introduction-au-fonctionnement/
Autre site : https://www.nas-forum.com/forum/topic/65309-tuto-docker-introduction/
[NAS Syno] Installation de l'application de FreshRSS
FreshRSS est un agrégateur de flux RSS permettant de centraliser les flux RSS sur son propre serveur (le NAS Syno 713+ dans mon cas) et d'y accéder de n'importe où.
Site officiel : https://freshrss.org/
Il existe bien l'extension Brief pour Firefox mais il faut toujours utiliser le même navigateur Internet pour les synchronisations (pas de synchronisation possible avec son ordiphone par exemple).
Tutoriel d'installation ici : https://mariushosting.com/how-to-install-freshrss-on-your-synology-nas/
Autre tuto sur Docker sur Synology : https://www.nas-forum.com/forum/topic/65309-tuto-docker-introduction/
I- Installer Docker sur son NAS Syno via le paquet dédié
II- Créer le dossier "freshrss" (tout en minuscules) dans le dossier "Docker" de File Station :
III- Récupérer les identifiants PUID et PGID de l'utilisateur
[Firefox] Extensions utiles
Je liste ici les extensions que j'utilise pour Firefox.
- Brief, un lecteur de flux RSS : http://brief.mozdev.org/
- ColorZilla, permet de récupérer les couleurs d'un site Web (existe aussi pour Chromium/Chrome) : https://www.colorzilla.com/firefox/
- Firefox Multi Accounts Container, permet de se connecter sur un même site avec des identifiants différents : https://addons.mozilla.org/fr/firefox/addon/multi-account-containers/
- Video DownloadHelper, permet de récupérer des vidéos en ligne : http://www.downloadhelper.net/
- uBlock Origin, pour se débarrasser des trackers, pubs et autres nuisances sur Internet : https://addons.mozilla.org/fr/firefox/addon/ublock-origin/
- Exemple de script pour ne plus avoir la fenêtre de consentement pour Youtube :
www.youtube.com###dialog ||www.gstatic.com/youtube/img/promos/growth/dmod_si_horizontal_ver1_240x400.png$image www.youtube.com##opened www.youtube.com##.opened
-
Exemple de script pour ne plus avoir la fenêtre de consentement pour Google :
www.google.com###lb www.google.com##:root:style(overflow-y: visible !important;) www.google.fr###cnsm www.google.fr###cnsw www.google.fr##.m114nf.aID8W
- Exemple de script pour ne plus avoir la fenêtre de consentement pour Youtube :
- Show/hide passwords, pour afficher ou masquer les mots de passe de connexion sur un site via un lien rajouté : https://addons.mozilla.org/fr/firefox/addon/showhide-passwords/
- Form History Control (II), permet de sauvegarder automatiquement le contenu saisi dans un formulaire (utile pour ne pas perdre le contenu en cas de problème) : https://addons.mozilla.org/fr/firefox/addon/form-history-control/
- TextArea Cache qui fait exactement la même chose que l'extension précédente (ça permet de gagner pas mal de temps en ne perdant pas une saisie à cause d'une déconnexion intempestive) : https://addons.mozilla.org/firefox/addon/textarea-cache/
- ClearURLs qui permet de nettoyer les liens contenant des mouchards : https://addons.mozilla.org/fr/firefox/addon/clearurls/
- Bypass Paywalls Clean qui permet d'accéder à des pages de journaux réservées aux abonné⋅e⋅s. Elle désactive par exemple les scripts javascript empêchant de voir les pages en entier. Extension utile lorsqu'on veut consulter à titre exceptionnel un seul article sans avoir à s'abonner. Si vous l'utilisez régulièrement, cela signifie qu'il faudra songer à s'abonner 😉 : https://addons.mozilla.org/fr/firefox/addon/bypass-paywalls-clean/
- Greasemonkey est une extension permettant d'exécuter des javascripts sur des pages selon des règles. Par exemple, faire une redirection de page de Youtube vers des instances Invidious : https://addons.mozilla.org/fr/firefox/addon/greasemonkey/
Exemple de scripts pour rediriger automatiquement une page Youtube (Source : https://openuserjs.org/scripts/jaidedctrl/Invidious_Redirect/source avec une correction sur le @match) :
// ==UserScript== // @name Invidious Redirect // @description Redirect YouTube to Invidious. // @author jaidedctrl // @license GPL-3.0-or-later; http://www.gnu.org/licenses/gpl-3.0.txt // @match *://www.youtube.com/* // @run-at document-start // ==/UserScript== var invInstance = "https://invidious.fdn.fr"; var url = window.location.href; if ( url.match("youtube.com") != null ) { url = url.replace( /.*youtube.com/, invInstance ); window.location.replace( url ); }
-
Extension Redirector pour rediriger vers un autre site (intéressant pour Youtube) : https://addons.mozilla.org/fr/firefox/addon/redirector/
Exemple d'utilisation :
Extensions intéressantes à garder sous le coude :
- SingleFile, pour sauvegarder dans un fichier .html une page Web (avec scripts, ...) : https://addons.mozilla.org/fr/firefox/addon/single-file/
Pourquoi on ne devrait pas coller directement dans son terminal du code copié sur un site Internet
Via SebSauvage, un article (en anglais) expliquant ce qu'il peut se passer lorsqu'on copie des lignes de codes récupérées sur un site Internet : https://www.bleepingcomputer.com/news/security/dont-copy-paste-commands-from-webpages-you-can-get-hacked/. Qui ne l'a pas déjà fait, confiant⋅e que nous sommes en la nature humaine 😉 ?
C'est très bien fait, subtil et assez simple à mettre en œuvre (avec un retour à la ligne inclus qui fait que lorsqu'on colle la ligne, elle s'exécute automatiquement et qu'il ne reste plus qu'à pleurer). Ça passe par du code JavaScript s'exécutant sur la page web qui détecte la ligne copiée et la remplace dans le presse papier par une ligne malicieuse.
Page sur laquelle on peut tester l'entourloupe expliquée par Gabriel Friedlander (on colle pas dans son terminal ! 😁) : https://www.wizer-training.com/blog/copy-paste.
Du coup, avant de copier/coller du code :
- on désactive le JS dans son navigateur avec une extension comme NoScript Security Suite,
- ou on copie d'abord dans un éditeur de texte au lieu de le faire directement dans son terminal,
- ou on ajoute dans le terminal, le signe de commentaire "#" avant de coller le code,
- ou on configure son terminal (si c'est possible) afin de ne pas exécuter automatiquement la ligne lorsqu'on colle "\n" (instruction de retour à la ligne).
À bon⋅ne entendeur⋅euse, ...
Rajout : le problème n'arrive pas uniquement avec JavaScript car on pourrait avoir le même type "d'attaque" en copiant/collant du texte rendu invisible par formatage Html / CSS (même si c'est plus grossier et plus facilement détectable)...
[Home Assistant] Installation sur Raspberry Pi 4
Jusqu'à présent j'utilisais Home Assistant à partir d'une installation sur mon NAS Synology DS 713+ mais suite aux dernières évolutions (disparition de Hassio et du "superviseur", utilisation uniquement possible via Docker et non pas avec une VMM car mon NAS ne le supporte pas) et de profiter d'une version la plus complète possible avec l'ajout facilité d'extensions, j'ai décidé de tenter le coup sur un Raspberry Pi 4 avec 4 Go avec un disque SSD de récupération dans un boîtier pour contourner les possibles problèmes avec une carte microSD.
La version utilisée sera donc Home Assistant Operating System (anciennement HassOS) : https://github.com/home-assistant/operating-system.
I- Préparation du Raspberry Pi 4
Tout d'abord, il faut veiller à mettre à jour le firmware du Raspberry Pi 4 car si on a un appareil de première génération, le boot en dehors de la carte SD n'était pas implémenté. J'ai donc décidé de réaliser une installation de Home Assistant sur une carte SD afin de pouvoir faire tous les réglages du firmware et du boot à partir du même système et ensuite de le dupliquer sur le disque SSD.
En fait, Home Assistant sur Raspberry Pi 4 n'est pas basé sur Raspberry Pi OS et il n'est donc pas possible de mettre à jour le firmware à partir de Home Assistant Operating System. Il faut donc utiliser une distribution Raspberry Pi OS (ex Raspbian) pour régler un boot sur USB.
Sources :
[Linux] Commandes utiles
Site source où j'ai repris ces infos afin d'avoir un accès direct depuis n'importe quelle machine sans avoir à chercher : https://www.citizenz.info/note-obtenir-les-details-systeme-et-materiel-linux-par-ligne-commande (merci à Citizenz pour son partage).
Affichage des informations système de base sur Linux Shell
$ uname
$ uname -s (kernel name)
$ uname -r (kernel release)
$ uname -v (kernel linux version)
$ uname -n (hostname - Network Node Hostname)
$ uname -m (Machine Hardware Architecture: i386, x86_64, etc.)
$ uname -p (processor type)
$ uname -i (hardware plateforme)
$ uname -o (operating system informations)
$ uname -a (display all info)
Affichage d'informations détaillées sur le matériel
$ sudo lshw (Hardware Information)
$ sudo lshw -short (Résumé des infos)
$ sudo lshw -html > hardwareinfo.html (créer une page HTML des résultats)
Affichage des informations sur le CPU
$ lscpu
Affichage des infos sur les périphériques type disques, lecteurs
$ lsblk
$ lsblk -a (informations encore plus détaillées - loop devices)
Affichage des informations sur les périphériques USB
$ lsusb
$ lsusb -v (informations encore plus détaillées : "verbose")
Affichage des informations sur les périphériques PCI
$ lspci (lspci --help pour voir toutes les options)
Affichage des informations sur les périphériques SCSI
$ lsscsi (vous devrez peut-être installer : sudo apt install lsscsi)
Affichage des informations sur les périphériques SATA
$ sudo hdparm [devicelocation] ==> exemple : $ sudo hdparm /dev/sda1
Résumé de la configuration matérielle
$ sudo inxi -Fxz
[Ubuntu] Applications utiles + astuces
Je liste ici un ensemble d'applications que j'utilise sous Ubuntu. Ça peut être utile en cas de réinstallation du système (et oui, ça m'est arrivé suite à une mise à jour foireuse... dont j'étais le principal responsable...).
Source : https://doc.ubuntu-fr.org/tutoriel/comment_sauver_et_restaurer_la_liste_des_paquets
Pour avoir une liste rapidement, taper cette commande :
ls /usr/share/applications | awk -F '.desktop' ' { print $1}'
I- Extensions sous Gnome
Le plus simple c'est de les installer via Mozilla et l'extension dédiée.
Alternate Tab, Applications Menu, Auto Move Windows, Better Volume Indicator, GPaste, GSConnect, Launch New Instance, Media Player Indicator, Minimize All, Minimized Windows List, Multi Monitors Add-On, Native Window Placement, Places Status Indicator, Proxy Switcher, Recent Items, Recent(item)s, Redshift, Removable Drive Menu, Screenshot Window Sizer, Shortcuts, Suspend Button, system-monitor, TaskBar, Ubuntu AppIndicators, Ubuntu Dock, User Themes, Window List, windowNavigator, Workspace Indicator.