Tag

linux

Browsing

Pas de clé publique disponible pour vérifier l’authenticité des dépôts

[no_toc]

Linux : résoudre l'erreur APT "there is no public key available for the following key IDs" photo

Au lancement de la mise à jour des paquets du serveur, je suis tombé sur le message d’erreur suivant :

W: There is no public key available for the following key IDs:
8B48AD6246925553
W: There is no public key available for the following key IDs:
8B48AD6246925553
W: There is no public key available for the following key IDs:
8B48AD6246925553

Visiblement, APT a perdu ses petits et ne retrouve plus la clé publique GPG d’un des mes dépôts (webmin en l’occurence).

Voici comment remédier au problème.

Solution : demander et ajouter la clé au trousseau GPG

Un peu de ménage dans APT

On commence par faire un peu de ménage dans les fichiers APT avec un petit coup de balai:

apt-get clean

… avant de récréer le dossier lists/partial pour véritablement recréer le cache APT :

cd /var/lib/apt
mv lists lists.old
mkdir -p lists/partial
apt-get clean && apt-get autoremove && apt update

Import de la clé publique

Maintenant, il nous reste à importer la clé publique manquante dans notre trousseau.

On se place dans le dossier root pour travailler:

cd /root

On demande la clé publique:

gpg --recv-keys 8B48AD6246925553

On l’exporte et on l’ajoute à notre trousseau :

gpg --export 8B48AD6246925553 | apt-key add -

On peut alors relancer la mise à jour des paquets :

apt-get clean && apt-get autoremove
apt update && apt upgrade

Script bash pour automatiser la mise à jour des clés APT

Soyons plus fous, nous allons automatiser les deux commandes avec un petit script BASH. On crée notre script :

nano /home/scripts/renew-apt-key

et on y ajoute:

#!/bin/bash
# Author : Matt Biscay
# Author URI : https://www.skyminds.net/?p=8735
gpg --keyserver keyserver.ubuntu.com --recv-keys $1
gpg --armor --export $1 | sudo apt-key add -

On enregistre le fichier et on le rend executable :

chmod +x renew-apt-key

Il ne vous reste plus qu’à renouveler votre clé APT avec:

sudo ./renew-apt-key NUMERO-DE-CLE

Et voilà, plus d’erreur lors des mises à jour APT.

Lorsque j’ai installé Ubuntu Mate sur mon nouvel Asus en lieu et place de Windows 10, j’ai vite fait de remarquer que le multi-touch du pavé tactile n’était absolument pas reconnu – seul un dispositif de pointage avec deux boutons est détecté.

Linux : activer le touchpad multi-touch sur un portable Asus photo 2

Nous allons donc voir comment pallier ce problème.

Ce tuto s’adresse aux ordinateurs portables Asus mais reste valable pour d’autres marques ou modèles.

Mise à jour du système

Commencez par mettre à jour les paquets du système :

sudo apt update && sudo apt upgrade

Puis nettoyez les paquets devenus inutiles:

sudo apt-get autoremove

Mise à jour du kernel

J’ai installé Ubuntu 16.04 deux mois avant la sortie officielle, quand le kernel linux était encore dans la branche 4.2.x et le pavé multitouch (Elan Pad) n’était absolument pas reconnu comme multi-touch mais comme simple souris.

Après de multiples installations de kernel, chacune ajoutant son lot de surprises comme perte de la carte vidéo après le démarrage, ronflement maximal du ventilateur du processeur, boot impossible après l’écran de démarrage GRUB… il faut se résoudre à l’évidence : mieux vaut attendre le kernel officiel, signé et testé.

Le premier kernel fonctionnel qui m’a permis de retrouver le multi-touch est le kernel 4.4.0-20, sans trop d’effets secondaires (changement du pilote graphique).

Les inodes perdues ! Cette semaine, j’ai eu droit à un problème particulier sur le serveur : alors que rien dans la configuration des services n’a été changé, je me suis rendu compte que WordPress ne réagissait pas comme d’habitude.

Les symptômes les plus visibles sont la lenteur de l’application, l’impossibilité de mettre à jour ou corriger un article ou encore ajouter des tags à un nouvel article.

J’avais déjà connu cet état lors d’un crash de la base SQL il y a maintenant quelques années donc je me suis dit que j’allais commencer par redémarrer Apache puis réparer la base de données.

Serveur dédié : résoudre le problème "no space left on device" photo

Suppression des instances Apache et redémarrage du service

Dès le lancement de la session SSH, il est évident que quelque chose ne tourne pas rond. Après le message de bienvenue, un message d’erreur apparaît :

/usr/bin/xauth:  error in locking authority file /root/.Xauthority

Et en voulant arrêter Apache, on obtient:

Restarting web server: apache2. [error]
There are processes named 'apache2' running which do not match your pid

On commence donc par régler ce problème et on regarde quels sont les PID utilisés par Apache:

pidof apache2

La commande pidof nous retourne toute une liste de pid:

32691 31385 31154 30917 30663 29150 27368 24820 24563 17531 15227 14235 13559 13064 11028 10906 10256 9156 9144 9042 8855 8542

On met fin à toutes ces instances avec un simple kill -9:

kill -9 32691 31385 31154 30917 30663 29150 27368 24820 24563 17531 15227 14235 13559 13064 11028 10906 10256 9156 9144 9042 8855 8542

Une fois toutes les instances d’Apache supprimées, il nous est de nouveau possible de redémarrer le service normalement:

service apache2 restart

Ménage dans l’espace disque et le nombre d’inodes disponibles

Au moment de réparer les tables de la base de données, rebelote, erreur :

No space left on device (error 28)

On commence par un petit ménage dans les paquets obsolètes, qui ne résoudra pas grand-chose:

apt-get autoclean && apt-get autoremove

Je tente un simple df pour vérifier si les disques sont pleins :

df

mais visiblement, non, il reste bien de la place :

Filesystem      Size  Used Avail Use% Mounted on
/dev/root       9.8G  4.4G  5.0G  47% /
devtmpfs        2.0G     0  2.0G   0% /dev
tmpfs           390M  408K  390M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           780M     0  780M   0% /run/shm
/dev/sda2       683G  531G  118G  82% /home

Je tente alors un df -i pour vérifier le nombres d’inodes disponibles :

df -i

Un nœud d’index ou inode (contraction de l’anglais index et node) est une structure de données contenant des informations à propos d’un fichier stocké dans les systèmes de fichiers Linux/Unix. À chaque fichier correspond un numéro d’inode (i-number) dans le système de fichiers dans lequel il réside, unique au périphérique sur lequel il est situé.

Serveur dédié : résoudre le problème "no space left on device" photo 1
Descripteurs de fichiers, table des fichiers et table des inodes sous Linux

Les inodes contiennent notamment les métadonnées des systèmes de fichiers, et en particulier celles concernant les droits d’accès.

Les inodes sont créés lors de la création du système de fichiers. La quantité d’inodes (généralement déterminée lors du formatage et dépendant de la taille de la partition) indique le nombre maximum de fichiers que le système de fichiers peut contenir.

Dans notre cas, catastrophe, il ne reste quasiment plus d’inodes disponibles !

Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/root        640K  640K     6   100% /
devtmpfs         487K  1.5K  486K    1% /dev
tmpfs            488K   864  487K    1% /run
tmpfs            488K    10  488K    1% /run/lock
tmpfs            488K     2  488K    1% /run/shm
/dev/sda2         44M   37K   43M    1% /home

Sommaire de la série Monter un serveur dédié de A à Z

  1. Serveur dédié : installation d’Apache, PHP, MySQL et Webmin
  2. Serveur dédié : créer la base de données MySQL et importer WordPress
  3. Serveur dédié : créer et activer un Virtual Host sous Apache
  4. Serveur dédié : changer les DNS du nom de domaine et le faire pointer vers le serveur
  5. Serveur dédié : sécurisation des services avec iptables et fail2ban
  6. Serveur dédié : sécurisation de la couche TCP/IP
  7. Serveur dédié : création d’un serveur mail Postfix (sécurisé avec Saslauthd et certificat SSL) et Courier (accès POP et IMAP) utilisant une base MySQL d’utilisateurs/domaines virtuels
  8. Serveur dédié : sécuriser Apache 2 avec ModSecurity
  9. Serveur dédié : CHMOD récursif sur des fichiers ou répertoires en ligne de commande
  10. Serveur dédié : installer APC comme système de cache et configurer Varnish comme reverse-proxy pour Apache pour améliorer les performances
  11. Serveur dédié : afficher la véritable IP derrière un reverse-proxy comme Varnish
  12. Serveur dédié : intégrer SSH à WordPress pour mettre à jour le core, les plugins et les thèmes
  13. Serveur dédié : installer la dernière version d’APC par SVN
  14. Serveur dédié : analyse des performances du serveur
  15. Serveur dédié : mettre à jour le noyau Debian de la Kimsufi
  16. Serveur dédié : sauvegarde automatique des fichiers avec Backup Manager sur le serveur de sauvegarde OVH
  17. Serveur dédié : configurer la limite mémoire pour PHP et Suhosin
  18. Bash : supprimer tous les fichiers et sous-répertoires d’un répertoire
  19. Serveur dédié : impossible de se connecter à un port distant
  20. Rsync: rapatrier les fichiers du serveur à la maison
  21. Bash : réparer les tables MySQL en cas de crash
  22. Serveur dédié : création d’une seedbox avec Transmission
  23. Serveur dédié : des paquets LAMP à jour sous Debian
  24. Serveur dédié : mise à jour vers Debian 7 Wheezy
  25. Serveur dédié : activer X11 forwarding pour SSH
  26. Serveur dédié : optimiser toutes les images JPG et PNG avec OptiPNG et JpegOptim
  27. Postfix : résoudre l’erreur « fatal: www-data(33): message file too big »
  28. Serveur dédié : mise en place de l’IPv6
  29. WordPress : accorder les bonnes permissions aux fichiers et dossiers avec chown et chmod
  30. WordPress : héberger les images sur un sous-domaine
  31. Serveur dédié : ajouter l’authentification SPF, Sender-ID et DKIM à Postfix et Bind9 avec opendkim
  32. Apache : lorsque le domaine seul (sans WWW) renvoie une erreur 403
  33. Serveur dédié : sécuriser Apache avec HTTPS (HTTP avec la couche TLS/SSL) en Perfect Forward Secrecy
  34. Serveur dédié : passer WordPress en HTTPS (TLS/SSL)
  35. Serveur dédié : configurer Webmin en TLS avec un certificat SSL
  36. Serveur dédié : configurer Transmission pour accéder au WebUI via TLS-SSL
  37. Serveur dédié : installer et configurer Varnish 4
  38. Serveur dédié : passage au mod FastCGI et PHP-FPM avec Apache MPM Worker
  39. J’ai planté le serveur… ou comment récupérer un serveur Kimsufi après un plantage de kernel avec le mode rescue OVH
  40. Serveur dédié : configurer Postfix et Courier pour utiliser TLS-SSL en Perfect Forward Secrecy
  41. Serveur dédié : retirer Varnish, devenu inutile avec HTTPS
  42. Serveur dédié : ajout de mod_spdy pour accélérer la connexion TLS-SSL sous Apache
  43. Serveur dédié : installer la dernière version d’OpenSSL sous Debian
  44. Serveur dédié : activer l’IP canonique du serveur sous Apache
  45. Serveur dédié : mise à jour vers PHP 5.6
  46. MySQL : convertir les tables MyISAM au format InnoDB
  47. Serveur dédié : optimiser toutes les images GIF avec GIFsicle
  48. Serveur dédié : migration de MySQL vers MariaDB
  49. BASH : lister, bloquer et débloquer des adresses IP avec iptables
  50. Serveur dédié : produire une meilleure réserve d’entropie avec haveged
  51. Serveur dédié : mettre en place DNSSEC pour sécuriser les DNS du domaine
  52. Serveur dédié : mise en place du protocole DANE
  53. 8 règles d’or pour bien déployer DNSSEC et DANE
  54. Serveur dédié : installer PHP7 FPM avec FastCGI sous Debian
  55. Serveur dédié : réduire les connexions TIME_WAIT des sockets et optimiser TCP
  56. Fail2Ban: protéger Postfix contre les attaques DoS de types AUTH, UNKNOWN et EHLO
  57. Serveur dédié : mettre à jour Apache et configurer le mod_http2 pour HTTP/2
  58. Serveur dédié : ajouter le domaine à la liste HSTS preload
  59. Serveur dédié : ajouter l’authentification DMARC à Postfix et BIND
  60. Serveur dédié : à la recherche de l’inode perdue ou comment résoudre le problème « no space left on device »
  61. Serveur dédié : installer NginX avec support HTTP2 et certificat SSL, PHP, MariaDB sous Debian

Linux : régler le problème des accents circonflexes et la disposition du clavier photo

Problème d’accent circonflexe

Je me suis rendu compte en écrivant mes derniers articles que le clavier de mon ordinateur portable n’était pas bien configuré : il était en effet impossible d’écrire la lettre ê (e accent circonflexe).

Le problème est dû au choix de la configuration du clavier à l’installation du système d’exploitation. Dans ma précipitation, j’avais choisi le modèle 105 touches, sans lettres mortes.

Solution : changer la disposition du clavier

Sous Ubuntu, voici la marche à suivre pour ajouter un clavier utilisable avec les accents:

  1. Allez dans Système > Préférences > Matériel > Clavier > Agencement,
  2. Cliquez sur Ajouter,
  3. Sélectionnez Pays: France puis Variantes: Français,
  4. Enlevez la disposition du clavier précédente (« Français, sans touches mortes » pour moi),
  5. Testez l’accent circonflexe, normalement ce devrait être réglé.

Simple et efficace, sans prise de tête !

Du besoin de changer de fond d’écran

J’aime bien que mon fond d’écran change de temps en temps. Cela permet de ne pas avoir un bureau trop fixe, de ne pas avoir toujours la même image sous les yeux. Ce qui est drôle, c’est que ce n’était pas le cas avant – je pouvais garder le même fond d’écran pendant des mois, voire même des années pour certains.

Sous linux, j’ai utilisé plusieurs programmes pour varier les fonds d’écrans comme Drapes ou Wallch mais, au fur et à mesure des nouvelles moutures de mon système d’exploitation et/ou des mises à jours des paquets et dépendances, ces programmes ont cessé de fonctionner. D’abord Drapes puis, récemment Wallch.

Je suis donc parti en croisade pour chercher une nouvelle alternative et suis tombé sur Variety, qui tourne sous tous les linux dérivés de Debian, comme Ubuntu ou Linux Mint.

Variety

Variety est donc un changeur de fond d’écran (wallpaper changer, c’est plus chic et ça sonne mieux en anglais) léger, très exhaustif en fonctionnalités et ultra-simple à prendre en main. Il peut automatiquement télécharger de nouvelles images depuis des sources diverses, changer le fond d’écran à un intervalle donné ou à la demande et permet de trier les images pour garder les meilleures. On peut également ajouter de nouvelles sources d’images.

Voilà à quoi ressemble l’interface :
Linux : installer Variety pour changer votre fond d'écran automatiquement photo

Comme vous pouvez le voir, vous pouvez récupérer tous les fonds d’écran pour bâtir votre propre collection, tout en respectant certaines limites en espace disque. Très utile !

Ce qui est drôle, c’est qu’avant ce programme je n’utilisais que mes propres images, bien rangées dans un dossier sobrement appelé « wallpapers ». Et depuis que j’ai installé Variety, je n’utilise que de nouvelles images qui viennent du net. C’est bien, cela donne un petit vent de fraîcheur et d’entropie supplémentaire, étant donné que l’on ne sait vraiment ce qui sera affiché.

Pour mes 35 ans, j’ai eu le plaisir immense de recevoir un nouveau laptop pour remplacer mon ancien PC portable de 2005 dont l’écran avait lâché.

Linux : retrouver l'usage des touches F5 et F6 pour régler la luminosité depuis le clavier d'un ordinateur portable photoAprès avoir joué quelques minutes avec Windows 10, j’ai ensuite installé Ubuntu Mate, qui a l’air vraiment génial.

Après l’installation, au redémarrage de la machine, je constate que la luminosité de l’écran est au maximum et qu’il m’est impossible de régler la luminosté avec les touches Fn + F5/F6.

Si vous êtes vous aussi confronté à ce problème, voici comment le résoudre.

Baisser la luminosité de l’écran

On commence par baisser la luminosité de l’écran avant de perdre la vue ou attraper une sinusite oculaire.

Rendez-vous dans Système > Préférences > Matériel > Gestionnaire d’énergie et baissez la luminosité. Je l’ai mise à 60% dans mon cas.

Ajouter le support des touches F5 et F6 pour régler la luminosité

Il nous reste maintenant à ajouter le support des touches F5 et F6 pour régler la luminosité. Cela m’a pris un peu de temps pour trouver la solution : j’ai d’abord regardé sur le net, installé des paquets, testé, rebooté…

En fait, il n’y a pas de paquets à installer. Il suffit juste d’ajouter une directive dans la configuration de démarrage de GRUB.

1. On édite /etc/default/grub en tant que root :

sudo nano  /etc/default/grub

2. On recherche la ligne GRUB_CMDLINE_LINUX_DEFAULT

3. On rajoute l’instruction « acpi_osi= » à la fin de cette ligne. Chez moi, cela donne donc:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi="

4. On met à jour GRUB:

sudo update-grub

Pour mes 35 ans, j’ai reçu un super cadeau d’anniversaire : un nouvel ordinateur portable Asus N551VW-FW119T.

Asus N551VW

Voici la bête en images :

Mon nouveau laptop : Asus N551V photo

et le clavier :

Mon nouveau laptop : Asus N551V photo 1

Au programme : un écran 15,6″ mat et anti-reflets, un processeur i7-6700HQ (2,6 GHz), 8 Go de RAM en DDR4, une carte graphique GTX 960M, un disque SSD de 128 Go + 1 To en SATA, coque en aluminium brossé…

Premières impressions

On ne va pas se le cacher, il est très rapide! Démarrage éclair, aucun lag dans le lancement des applications, c’est vraiment du bonheur. Le clavier est vraiment bien, avec pavé numérique et rétro-éclairage.

Parmi les inconvénients, je noterai le poids/encombrement puisque avec ses 2.7 kg, on ne va pas le trimballer tous les jours et l’autonomie – qui tourne autour des 3h30-4h. Il est difficile d’allier performance et autonomie à l’heure actuelle.

Aujourd’hui, nous installons tous les outils nécessaires pour devélopper des applications Android sous Linux.

Ce tutoriel s’adresse aux utilisateurs Linux mais est très facilement transférable d’un système à l’autre.

Ma machine principale tourne sous Ubuntu mais le tuto fonctionne aussi pour Linux Mint ou Debian.

Linux : installer Android Studio pour développer des applications Android photo 1

Pour mener à bien l’installation, il nous faut donc : une version récente de Java et Android Studio pour coder nos applications pour mobiles, tablettes, télévision, Android wear… vous allez vraiment pouvoir vous amuser !

Installation de Java

On installe la version Oracle de Java pour maximiser les chances que tout tourne bien ensuite, avec un PPA :

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update 
sudo apt-get install oracle-java8-installer
sudo apt-get install oracle-java8-set-default

On vérifie notre version de Java:

java -version

ce qui nous retourne :

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

Java 8 est donc bien installé.

Installation d’Android Studio

On installe Android Studio avec un PPA également:

sudo add-apt-repository ppa:paolorotolo/android-studio
sudo apt-get update
sudo apt-get install android-studio

et on lance l’assistant de configuration qui va récupérer les packages et les mises à jour :

/opt/android-studio/bin/studio.sh

L’installation prend pas mal de temps, il y a environ 600 Mo à télécharger et à compiler ensuite.

La sauvegarde des données

Un des problèmes majeurs dans la gestion des données informatiques est la sauvegarde des données.

Idéalement, il faut pouvoir être en mesure de disposer de plusieurs copies de sauvegarde de nos données, intégres et utilisables, disponibles dans plusieurs lieux géographiquement éloignés afin de prévenir les risques.

Il est très utile d’avoir un script de sauvegarde comme backup-manager sur le serveur qui va automatiquement envoyer les fichiers de sauvegarde sur un espace de stockage distant.

Sur ce serveur par exemple, les sauvegardes sont envoyées sur le FTP de backup mis à disposition par OVH.

Connexion à un serveur distant en SSH, sans mot de passe

Se connecter depuis un serveur vers un NAS Synology avec des clés SSH, sans mot de passe photo 1

Mais il est également possible d’en envoyer une copie chez vous, directement sur votre NAS. Pour plus de sécurité (le FTP n’est pas un protocole sécurisé) il peut être très intéressant de créer un set de clés SSH pour que le script de sauvegarde (ou alors rsync) se connecte directement à votre NAS/serveur de sauvegarde en SSH.

Voyons donc comment nous pouvons créer un jeu de clés SSH sur notre serveur linux – ou n’importe quelle autre machine Unix, comme votre PC – vers un NAS Synology.

Cela nous permettra de nous identifier sur le NAS depuis le serveur, sans avoir à rentrer de mot de passe ou à le mettre en clair dans un script. C’est aussi un grain de temps de se logguer en SSH au NAS sans mot de passe !

Se connecter depuis un serveur vers un NAS Synology avec des clés SSH, sans mot de passe photo

Installer IPKG sur un NAS Synology photo

De temps en temps, on a besoin d’intervenir sur le NAS et l’interface web d’administration du Synology n’est ni la plus intuitive, ni la plus rapide. En tout cas, sur un D212+, cela rame toujours un peu.

Aujourd’hui, je vous montre comment ouvrir une session SSH en tant que root sur votre Synology afin d’y installer des applications non-officielles mais toutes aussi valables comme nano ou screen. Ce tuto prend à peine 10 minutes à réaliser.

Cela nous permettra à terme de pouvoir lancer différentes commandes et d’exploiter à fond les possibilités du NAS.

Activer SSH sur le Synology

Première étape : on active le service SSH sur le Synology :

  1. connectez-vous au webadmin de votre Synology,
  2. rendez-vous dans Control Panel > Applications > Terminal & SNMP,
  3. dans l’onglet Terminal, cochez l’option Enable SSH service,
  4. changez le port par défaut pour quelque chose de plus exotique : 44222 par exemple,
  5. sauvegardez les options.

Retenez bien le numéro du port que vous avez défini. Il sera maintes fois utilisé par la suite.

Ouvrir une session SSH sur le NAS avec l’utilisateur root

Cette étape est cruciale et permet d’éviter de longues heures de recherche sur Internet pour comprendre pourquoi les commandes des étapes suivantes ne fonctionnent pas…

Vous devez *absolument* ouvrir une session SSH sur le NAS en tant qu’utilisateur root.

Le mot de passe de l’utilisateur root est le même que celui de l’utilisateur admin mais une session en tant qu’admin ne vous donnera pas les droits nécessaires pour installer quoi que ce soit.

On se connecte avec l’utilisateur admin en SSH :

ssh admin@DiskStation -p44222

et comme nous devons être root, on le devient :

sudo -i

Résultat:

BusyBox v1.16.1 (2015-10-28 13:19:22 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

DiskStation>

Installer IPKG sur le Synology

La deuxième étape est d’installer un gestionnaire de paquet sur le NAS, pour ajouter des paquets supplémentaires qui ne sont pas présents sur les dépôts officiels de Synology. C’est un peu comme un apt-get ou aptitude.

Vous devez connaître le modèle du processeur exact de votre Synology : pour cela, rendez-vous sur la page What kind of CPU does my NAs have ?

Cette page n’existe plus au moment où j’écris ces lignes (Synology semble avoir retiré son wiki) donc voici une capture d’écran récapitulative:

Configurer une sauvegarde du serveur vers un NAS Synology avec des clés SSH photo

Sur mon Synology 212+, le processeur est donc un Marvell Kirkwood mv6282 2.0Ghz ARM (Marvell ARMADA 300).

Un autre moyen de connaître le modèle du processeur est de lancer un simple:

cat /proc/cpuinfo | more

ce qui nous retourne:

Processor        : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 1985.74
Features        : swp half thumb fastmult edsp 
CPU implementer        : 0x56
CPU architecture: 5TE
CPU variant        : 0x2
CPU part        : 0x131
CPU revision        : 1

Apache : résoudre l'erreur "421 Misdirected Request" photo

Après la mise à jour d’Apache et HTTP/2, il est apparu un nouveau type d’erreur : l’erreur 421 Misdirected Request.

Erreur 421 : erreur de configuration mod_ssl entre Virtual Hosts

Ce type d’erreur arrive lorsque:

  1. HTTP/2 est activé,
  2. les paramètres SSL de plusieurs Virtual Hosts diffèrent du serveur responsable du handshake SSL/TLS.

En analysant le changelog d’Apache 2.4.18, je me suis rendu compte que si les paramètres SSL et notamment la liste des ciphers utilisables ne sont pas équivalentes entre les différents Virtual Hosts, alors l’erreur 421 est déclenchée.

Solution : harmoniser la configuration mod_ssl

La solution est donc toute simple, il suffit de comparer la configuration mod_ssl des Virtual Hosts et l’harmoniser de manière à lisser les différences. Je vous recommande un outil comme Meld pour comparer les différences entre vos fichiers.

Meld est disponible dans les dépôts de base, vous pouvez l’installer sur votre machine de dév avec un simple:

apt-get install meld

Le domain sharding ou servir les ressources statiques sur un sous-domaine

Sur le site, cela est dû à la mise en place du domain sharding que j’avais mis en place il y a quelques années pour charger plusieurs fichiers ressources en parallèle et accélérer les temps de chargement.

HTTP/2 promet beaucoup de choses et apparemment le domain sharding serait maintenant devenu inutile. J’attends un peu de voir comment vont évoluer les choses avant de changer toute ma configuration et éditer tous mes liens.

Bash : réparer les tables MySQL en cas de crash photoLorsque l’on jongle avec différents serveurs et plusieurs fenêtres de terminal, il n’est pas toujours évident d’identifier immédiatement sur quelle machine on se trouve.

Pour remédier à ce problème, je vous propose de changer les couleurs de l’invite de commande (prompt) de votre terminal sous linux.

Editer le fichier .bashrc

Nous allons éditer le fichier .bashrc, qui permet d’éditer les préférences utilisateurs pour tout ce qui concerne bash:

nano .bashrc

Ajout de styles

Et voici quelques styles sympas à ajouter pour tuner votre prompt.

Style Lemon Lime

Ajoutez ceci à votre fichier .bashrc:

export PS1="\[$(tput bold)\]\[$(tput setaf 6)\]\t \[$(tput setaf 2)\][\[$(tput setaf 3)\]\u\[$(tput setaf 1)\]@\[$(tput setaf 3)\]\H \[$(tput setaf 6)\]\w\[$(tput setaf 2)\]]\[$(tput setaf 4)\]\\$ \[$(tput sgr0)\]"

C’est mon style préféré, très cocktail d’été. Voilà ce que cela donne:
Bash : personnaliser les couleurs de l'invite de commande (prompt) du terminal photo

Style Matrix

Vous pouvez aussi opter pour le style Matrix, tout vert:

export PS1="\[$(tput bold)\]\[$(tput setaf 2)\][\u@\h \W]\\$ \[$(tput sgr0)\]"

Style Rainbow

Ou encore pour un arc-en-ciel de couleurs :

export PS1="\[$(tput bold)\]\[$(tput setaf 1)\][\[$(tput setaf 3)\]\u\[$(tput setaf 2)\]@\[$(tput setaf 4)\]\h \[$(tput setaf 5)\]\W\[$(tput setaf 1)\]]\[$(tput setaf 7)\]\\$ \[$(tput sgr0)\]"

Personnalisation du prompt

Si vous souhaitez ajoutez des composants à votre prompt, voici quelques mots-clé utiles:

  • \u le nom de session utilisateur
  • \h le nom d’hôte jusqu’au premier ‘.’
  • \H le nom d’hôte complet
  • \n saut de ligne
  • \$ affiche le signe $ pour un simple utilisateur ou # pour l’utilisateur root
  • \\ un backslash « \ »

Et voilà, un peu de couleur dans notre terminal !

Rapport de faute d’orthographe

Le texte suivant sera envoyé à nos rédacteurs :