Let's Encrypt et Nginx : config rapide sous Ubuntu

Rédigé par citizenz - - 2 commentaires
Voici un petit tuto simple, pratique et rapide pour configurer un certificat Let's Encrypt pour votre site web (avec Nginx). J'utilise un serveur Ubuntu 16.04.

PRÉREQUIS : Certbot a besoin d'un fichier vhost Nginx existant, même minimaliste, mais avec une partie "server {  }" déjà en place.

Pour tout changement effectué, vérifiez la syntaxe Nginx avec cette commande :  $ sudo nginx -t

1 - installation de Certbot (version stable) :
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt update
$ sudo apt install python-certbot-nginx

Si la commande add-apt-repository n'est pas disponible, installer les 2 paquets suivants :
$ sudo apt install software-properties-common python-software-properties


2 - Obtention d'un certificat SSL Let's Encrypt :
$ sudo certbot --nginx -d example.com -d www.example.com

  • Aucune autre option n'est à préciser. L'option --nginx s'occupe de tout, même de la config de votre fichier vhost !
  • Vous remarquerez que Certbot a ajouté un fichier /etc/letsencrypt/options-ssl-nginx.conf qui comporte toutes les bonnes options.
  • Si c'est votre première demande, vous devrez rentrer une adresse e-mail de contact et accepter les "termes du service". Vous devez ensuite choisir d'accepter les connexions HTTP et HTTPS ou seulement les connexions HTTPS pour votre site.

3 - Configuration supplémentaire avec Diffie-Hellman :
$ sudo mkdir -p /etc/nginx/ssl
$ sudo openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048

Puis dans votre fichier vhost nginx, ajoutez la ligne suivante :
ssl_dhparam /etc/nginx/ssl/dhparam.pem;

Ajoutez également les lignes suivantes :
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/www.mondomaine.com/fullchain.pem;


# Google DNS, Open DNS, Dyn DNS
resolver 8.8.8.8 8.8.4.4 208.67.222.222 208.67.220.220 216.146.35.35 216.146.36.36 valid=300s;
resolver_timeout 3s;

Et relancer Nginx :
$ sudo /etc/init.d/nginx restart

4 - Renouvellement automatique des certificats
$ sudo crontab -e
15 3 * * * /usr/bin/certbot renew --quiet

Avec cette config (intégrant la config "par défaut" de certbot + l'ajout du Diffie Hellman), vous devriez obtenir un A sur SSL Labs (https://www.ssllabs.com/ssltest/ ).

SOURCES
: https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04

Mariadb (Mysql) : connexion root avec phpMyAdmin sous Ubuntu 16.04

Rédigé par citizenz - - 9 commentaires
Profitant de vacances bien méritées (si si !), je viens re-installer un ou deux serveurs. Un sous Debian 9 et un sous Ubuntu 16.04 server.
Pour ces 2 distributions, l'installation de MySQL (ou plutôt la version Mariadb) diffère un tant soit peu en raison de la méthode "connexion" désormais différente.
En effet, il faut désormais configurer "à la mano" un ou deux fichiers afin de ne pas devenir une fois sur la page de phpMyAdmin où, si on ne fait pas cette configuration, on peut pas se connecter en root avec le mot entré à l'installation.
Je pensais que cette manip était réservée à Debian 9 mais elle est indispensable sous Ubuntu 16.04 aussi.

Voici les différentes étapes pour retrouver une connexion normale en root pour MySQL :
 
nano /etc/mysql/mariadb.conf.d/50-server.cnf
[...]
bind-address           = 127.0.0.1
sql-mode="NO_ENGINE_SUBSTITUTION"
[...]

Il faut maintenant régler la méthode d'authentification par mot de passe à "native" pour mariadb afin de pouvoir se connecter en root à phpMyAdmin. On rentre la commande suivante en console :
 
echo "update mysql.user set plugin = 'mysql_native_password' where user='root';" | mysql -u root

Il faut aussi éditer le fichier suivant afin de rentrer le mot de passe root Mysql :
 
nano /etc/mysql/debian.cnf
[client]
host = localhost
user = root
password = MOTDEPASSE
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = root
password = MOTDEPASSE
socket = /var/run/mysqld/mysqld.sock
basedir = /usr

On sauvegarde et on redémarre mysql :
 
service mysql restart

Voila : vous pouvez désormais vous connecter normalement sur phpmyadmin avec root.

Manjaro Linux : l’alternative Gnu/Linux la plus cohérente ?

Rédigé par citizenz - - 44 commentaires

Au sujet de Gnu/Linux, il y a 2 écoles :
– les "user friendly" qui se basent sur un constat simple : pas le temps (compétences) de passer 3 plombes à configurer un système Gnu/Linux. Il faut du concret, du rapide, du simple et du fiable !
– les "barbus" qui au contraire, pronent le "fait main", la liberté. Disposer d’un système basique pour le construire, par étapes, et obtenir un environnement “aux p’tits oignons”, fiable et adapté… quitte à y passer quelques heures.

Aujourd’hui, ces 2 écoles semblent se retrouver dans 2 types de distributions Gnu/Linux :
– toute la sphère des Ubuntu, Mint, etc. adaptées au "commun des mortels". L’installation de ce type de distribution se fait en général en "2 clics de souris…" et permet d’obtenir rapidement un système complet (très complet …) qui peut avoir des ressemblances flagrantes avec Windows.
– et puis les distributions qualifiées de "non adpatées aux débutants" qui doivent être "domptées". Outre Debian qui pourrait être à cheval sur les 2 types, actuellement ArchLinux représente la distribution la plus répendue et la "moins adaptée" aux débutants. Oui, je mets beaucoup de guillemets car tout ceci, vous allez me dire, est très subjectif...
La phase d’installation représente un handicap, pour certains, à surmonter, pour pouvoir ensuite construire son système par touches successives (réseau, environnement graphique, applications diverses, ...).

Inconvenients ? Du temps à passer devant sa machine, des recherches préalables, un investissement personnel, des connaissances plus pointues (partitionnement, système de boot EFI, locales, configuration du serveur graphique, etc.)
Avantages ? Un système vraiment adapté à ses besoins, dépouvu de fioritures, maîtrisé et théoriquement fiable. En fait une liberté quasi totale, de l’environnement de bureau en passant par les applications les plus courantes, etc.

Et si une distribution pouvait allier les avantages de stabilité et de liberté qu’offre Arch Linux sans toutefois imposer à l’utilisateur d’être un expert et d’avoir à préparer à l'avance l’installation du système (comment installer ArchLinux sans le wiki ... ou un bon tuto ?)

Ce type de distributions existe : Manjaro, Antergos, etc. Les nombreux utilisateurs d’Arch Linux y trouveront-ils un intérêt ? (moins de temps passé à configurer ? Rapidité ? simplicité ?).
En effet, Manjaro par exemple, permet d’installer en quelques clics une base d’Arch Linux assaisonnée de diverses "améliorations" prêtes-à-l’emploi. Et d’ainsi pouvoir bénéficier d’un système fiable, puissant et communautaire comme l’est Arch Linux.

Ce qui signifierait qu’Ubuntu et autres dérivés ne sont pas fiables ou communautaires ? Communautaires OUI, très certainement. Fiable : tout est relatif ... et encore une fois subjectif lorsqu’on aborde de type de discussion technique. Surtout lorsque notre cher R. Stallman fait passer le message dès 2012 : “N’utilisez plus Ubuntu, c’est mal ! Dans Ubuntu, il y a des spyware !” (http://www.fsf.org/blogs/rms/ubuntu-spyware-what-to-do, http://www.framablog.org/index.php/post/2012/12/08/stallman-ubuntu-espion)

Toujours est-il que cette réflexion, je l’ai eu il y a maintenant quelques temps... Pour moi, il était évident que, après plus de 15 ans d’utilisation de Gnu/Linux, l’idée d’installer Arch Linux (ce que j’ai fait !) n’était pas handicapante. Un bon tuto plus tard et l’affaire était dans le sac !
Mais en voyant poindre des distributions plus "abordables", j’ai tout de suite pesé le pour et le contre. Avoir une bonne base Arch Linux, facilement installable et configurable, c’est pour moi, bien évidemment, une excellente idée.

J’ai choisi Manjaro. Je l’utilise depuis plus de 2 ans maintenant sur mon PC portable (arch linux sur mon PC principal de bureau et Xubuntu sur mon PC N°2 ...).
La base Arch Linux avec notamment AUR à portée de main, c'est à mon goût, sans égal !

Et vous : qu'en pensez-vous ?

UEFI m'a tuer

Rédigé par citizenz - - 23 commentaires

Je vous présente UEFI : le standard Unified Extensible Firmware Interface (UEFI, "Interface micrologicielle extensible unifiée") définit un logiciel intermédiaire entre le micrologiciel (firmware) et le système d'exploitation (OS) d'un ordinateur.
Interface logicielle désormais commune à tous les ordinateurs récents, particulièrement ceux vendus depuis 2010, elle vient se placer entre le micrologiciel (firmware) et le système d'exploitation pour permettre de contrôler les paramètres de l'ordinateur.
A ce titre, elle remplace la traditionnelle interface du BIOS. Puisqu'il s'agit d'un système différent du BIOS, il est important de comprendre ce qu'est l'UEFI avant d'entreprendre l'installation de Linux, ... nous dit le wiki d'Ubuntu, de Manjaro ou même Wikipedia.

Je vous avais dit que mon ordi avait "cramé", il y a déjà quelques jours et que j'avais reçu du nouveau matos.
Donc changement de config : ma carte mère, tout nouvelle et fraîche (MSI B150 PC MATE) affiche un menu permettant de sélectionner une option "Windows 8.1/10" qui active l'EFI, le fast startup et le "Secure boot". Le "Secure boot", cette merveille d'invention qui permet aux linuxiens entre autres de se faire des cheveux blanc avant l'âge.
Mais cela implique aussi un changement (gros !) : la table de partition est désormais en GPT (Guid Partition Table). Adieu la table msdos et le MBR !
Cela implique également un changement dans la manière de faire booter l'OS...
Il faut désormais créer une partition de boot dédiée avec un fichier .efi.
Windows 10 utilise ce type de partition : ESP (EFI System Partition, formatée en FAT32).
(PS pour les connaisseurs : ESP, c'est pas la marque de la guitare d'Adrian Smith).
Bref autant dire que quand on a passé les 6 dernières années sur un bon vieux AMD Phenom II X6 et une version famille de Windows 7, on arrive dans un monde étrange ! :)

Je sais : je ne suis pas doué :/ J'ai mis plus de 48h avant de piger la bonne config de ma carte mère (le coup du "Secure Boot", je l'ai pas vu venir !) et avant de piger que par défaut Manjaro Linux ... n'installe pas Grub au bon endroit (en tout cas, je ne sais pas faire !).
En effet, après avoir installé Windows 10 sur mon disque sdb (disque 1To) j'ai souhaité installer Manjaro Linux sur mon disque sda (SSD 128 Go).
Mais en utilisant l'installateur graphique plus l'option "Effacer tout le disque", même si l'installation se passe sans problème, c'est au reboot que ça ne va plus : pas de GRUB ! :/ Ca reboot sous Windows 10 comme si de rien n'était.
Ni une, ni deux, je vais dans le BIOS vérifier mon Boot Menu : pas de disque SSD avec Manjaro, rien ! Il n'apparait pas.
Pourtant, grâce au Live-CD de Manjaro, je peux aller dans "Detect EFI boot loaders" et ma partition EFI Manjaro apparait en (hd0, gpt1). En validant cette entrée, j'arrive sur Grub... qui m'ouvre Manjaro...

Même soucis d'ailleurs, en passant par le menu de partitionnement "Autre" et en partitionnant tout à la main. Même punition.
En fait, j'ai peut-être mal vu, mais je n'ai pas trouvé de menu pour Grub qui permet généralement de choisir où Grub doit être installé. Et, d'après quelques renseignements et infos glânés ici et là, il faudrait que Grub soit installé sur la partition du Windows Boot Manager, c'est à dire pour moi en sdb2.

J'ai eu l'idée de faire un test avec Xubuntu. Installation sur le SSD. Et là il y avait un menu pour Grub. J'ai donc choisi d'installer Grub sur sdb2 et au reboot : BINGO ! Aucun problème, j'avais le Grub avec Ubuntu, Windows 10 (Windows Boot Loader).

Donc il y a certainement une manière de faire pour Manjaro et Arch Linux mais je ne l'ai pas encore trouvée.
Faut-il après l'installation reinstaller Grub avec quelques "commandes magiques" ? Quelles sont-elles ?
Je vous laisse, je découvre Xubuntu avec ses bons et ses mauvais côtés mais dès que possible, je retourne sous Arch !

Ben oui, on ne se refait pas !

Découverte de Libre OS USB

Rédigé par citizenz - - 3 commentaires

Libre Expert (entreprise du Numérique libre située à Clermont‐Ferrand) lançait il y a un peu plus de 2 ans le projet Libre OS USB.
L’idée était simple : proposer une clef USB amorçable GNU/Linux, francisée, avec persistance des données, qui pourrait démarrer sur tout PC d’architecture 64 bits, y compris les dernières générations ayant un BIOS UEFI avec Secure boot.
Un article était publié sur LinuxFr.org et une campagne de financement participatif (pour moi ça sera crowd-funding) était lancée sur le site Ulule.

Après quelques ajustements dans les versions suivantes, le produit semble arriver à maturité. Aujourd'hui, c'est une Ubuntu 17.04 Zesty Zapus 64 bits qui sert de base au projet.
C'est une version d'essai que j'ai pu tester. En effet, la version finale n'est pas encore "publique" et l'auteur attend la fin du crowd-funding pour proposer un lien depuis le site même consacré à Libre OS USB qui est un des objectifs de la campagne...

Le test :
Pour créer la clé (de minimum de 16Go), on utilise (sous Linux) la commande "dd" avec ses paramètres, ou "Rufus" sous Windows en mode "dd".
Pour profiter de l'espace d'un périphérique d'une capacité supérieure à 16Go, il est recommandé d'agrandir la partition "HOME" de Libre OS USB à l'aide de l'utilitaire GParted en conservant la partition en "HIDDEN".
Attention à ne pas faire cette opération depuis le système Libre OS USB en fonctionnement, mais depuis un autre système.

Une des particularités de ce liveCD (euh non "live-USB" !) est l'utilisation d'une partition /home cryptée. C'est le gestionnaire Gnome ENCFS qui se charge de gérer les "cachettes".
Etonné, car je découvre comme un "bleu" ce type de système. Plutôt pas mal pour garder ses données "au chaud". Evidemment, la clé garde les infos sur la partition /home qui est d'ailleurs créée pour cela. Donc si vous utilisez la clé sur un portable "A" elle sera évidemment réutilisable avec toutes vos données sur un PC "B". Très pratique en cas de "nomadisme informatique".
La clef est capable de démarrer aussi bien en mode UEFI/Secure Boot (Nouvelle génération) qu'en mode Classique (Legacy/CSM) tout en conservant la persistance des données.

Le seul bémol pour moi a été de trouver une clé USB de 16 Go ou plus. Je sais : de nos jours c'est ultra commun d'avoir ce type de périphérique mais voila... J'ai du soudoyer mon fils à grand renfort de Kinder Bueno afin de disposer d'une clé USB de 16 Go pour le test.

Le reste du système est relativement "commun" : c'est du Ubuntu pour la base, c'est du Mate pour le bureau et ça fonctionne plutôt bien. La fluidité de tout le système dépend évidemment de la clé que vous utilisez et du PC support. Il faudra être patient sur certains matériels ...

Une difficulté aura aussi été de pouvoir démarrer le PC sur USB. Je sais : il ne faut pas être sorti de "Saint-Cyr". Mais bon : visiblement mon PC portable HP Pavilion G6 n'aime pas beaucoup les clés USB. Il aura aussi fallu l'amadouer à grand renfort de F2 et F11 pour arriver à lui indiquer le "bon chemin".

Au final, et pour faire court, avec Libre OS USB, on se retrouve avec un "bureau ambulant" de quelques grammes seulement. On branche la clé USB sur n'importe quelle machine et on dispose d'un environnement de bureau moderne et rapide, capable de se connecter à Internet avec tous les outils courants.
Grâce à la persistance des données vos paramétrages sont conservés et vos données aussi ! Utile également si vous avez un ordinateur "planté", grâce à cette clef, vous accédez à vos disques et pouvez récupérer vos données facilement.

Patrick, auteur du projet, informaticien indépendant, essaie de vivre du modèle économique de certains projets libres. Il développe Libre OS USB et cherche à promouvoir le projet pour financer ses développements par crowd-funding.
On voit bien évidemment les différentes possibilités et qualités de ce projet qui vaut bien un petit détour par le site web de l'auteur.

Rappel des liens de l'article :
- Vous pouvez contacter Patrick Fox à l'adresse suivante : patrick.fox AT libre-expert.com
- Page du financement participatif : https://www.kickstarter.com/projects/965919991/free-libre-os-usb
- Site web de l'auteur : http://www.libre-expert.com

Fil RSS des articles de ce mot clé