CitizenZ

Blog Libre, Geek & Crypto

Upgrader son système sans mettre à jour le noyau

Rédigé par citizenz Aucun commentaire
Il peut être très utile de vouloir upgrader sons système (pour des raisons de sécurité) sans pour autant mettre à jour le noyau Linux (surtout sit out fonctionne bien). C'est très simple sous Debian/Ubuntu.

On marque les fichiers linux-image-generic et linux-header-generic en "hold"
sudo apt-mark hold linux-image-generic linux-headers-generic

On met à jour
sudo apt update

On upgrade
sudo apt upgrade

Si jamais on veut enlever le "hold" et mettre à jour le noyaux :
sudo apt-mark unhold linux-image-generic linux-headers-generic

Améliorer le minage de cryptomonnaies avec son CPU

Rédigé par citizenz Aucun commentaire

Si on veut miner des cryptomonnaies avec son CPU, c'est possible (mais c'est long !). Autant avoir un bon processeur (I5, I7, XEON, etc.).
Pour obtenir un meilleur taux de hash (hashrate), il est important d'activer l'option "Huge Pages" (si vous avez un processeur "compatible").
Par exemple sur un Intel I5-2400, avec le mineur Xmrig-CPU (cryptonight), je faisais à peine du 120 H/s avec un processeur à 75 % (3 threads).
Avec le "Huge Pages" activé, je suis passé à 200 H/s.

Su un PC traditiopnnel, sous Ubuntu 16.04 par exemple, on peut activer facilement cette option :

# echo 'vm.nr_hugepages=128' >> /etc/sysctl.conf
# sysctl -p

... et on reboot

Mais sur un serveur OVH Kimsufi (par exemple), il va falloir installer un autre noyau (kernel) que l'original fourni par OVH car sinon vous allez vous retrouvez avec cette erreur :
sysctl: cannot stat /proc/sys/vm/nr_hugepages: No such file or directory
A moins qu'à l'installation vous ayez choisi d'installer le noyau de la distribution et pas celui d'OVH auquel cas, tout devrait fonctionner sans changement.

Installation d'un nouveau noyau sur le serveur d'OVH Kimsufi (exemple sous Ubuntu 16.04)
On met à jour :

# apt update
On installe le kernel de la distrib :
# apt install linux-image-generic
On déplace le kernel d'OVH :
# mkdir ~/ovh.d
# mv /etc/grub.d/06_OVHkernel ~/ovh.d
On met à jour Grub :
# update-grub
... et on redémarre... sur le nouveau noyau
# reboot

Basé sur l'article de Thomas (Virtubox) : jesuisadmin.fr/miner-du-monero-xmr-stack...

[TUTO] Auto-héberger un noeud DUNITER sous Debian/Ubuntu

Rédigé par citizenz 13 commentaires
Article mis à jour le 21/11/17.
Reprenons ce que nous dit https://yeuxdelibad.net/Blog/?d=2017/11/08/16/00/51-debuter-avec-duniter-1-puis-heberger-un-noeud :
Pour rappel : Duniter est un logiciel. Son but est de permettre la production d'une nouvelle valeur numérique (ou électronique) ayant toutes les caractéristiques d'une « monnaie libre ». Nom de code de cette nouvelle valeur : la Ğ1 (prononcez « June », \ʒɥn\). La Ğ1 est désormais bien réelle : les toutes premières unités ont été créées le 8 mars 2017, et de nouvelles sont produites chaque jour par ses membres.

Le petit tuto ci-dessous reste non exhaustif voir même "simpliste" et n'aborde pas l'idée, le projet ou la philosophie de Duniter, de la Ğ1, etc. Il rappelle simplement les différentes étapes d'installation d'un "nœud" Duniter sous Debian/Ubuntu qui permettra de participer aux calculs nécessaires aux échanges de Ğ1.

J'utilise un PC sous Ubuntu 16.04 64 bits à la maison (auto-hébergé).
Connexion ADSL2 : Freebox V6 (+/- 7 MB/s)
PC : Intel i5, RAM 8 GB, SSD 120 GB

C'est parti :

a - On télécharge le paquet Debian (Debian/Ubuntu, ...) (version à vérifier sur le github Duniter ) :
$ wget https://github.com/duniter/duniter/releases/download/1.6.13/duniter-server-v1.6.13-linux-x64.deb

b - On installe le serveur Duniter :
$ sudo dpkg -i duniter-server-v1.6.13-linux-x64.deb

c - On génère la clé :
$ duniter wizard key

Réponse aux questions :
------Modify you keypair? (y/N) y
------Key's salt : mettez ici un mot de passe, une phrase, ce que vous voulez...
------Key's password : mettez ici un mot de passe

d - On configure le réseau :
$ duniter wizard network

Réponse aux questions :
---IPv4 interface : déplacez-vous, le cas échéant avec les flèche du clavier pour choisir la bonne adresse Interne (Privée) et validez. Sur mon réseau local (MAISON), je suis connecté sur ma Freebox V6 en DHCP fixe. En l'occurrence, mon adresse IP internet est : 192.168.0.75
---IPv6 interface : déplacez-vous dans la liste avec les flèches du clavier pour choisir l'adresse et validez. Choisissez "none" si vous n'avez pas d'IPv6.
---Port : 10901
---Remote IPv4 : ici, on vous demande votre adresse IP publique (avec ma Freebox, c'est du type 82.xxx.xxx.xxx)
---Remote port : 10901
---Does this server has a DNS name? y ou n (répondez "y" si vous voulez héberger le nœud sur un serveur possédant un nom de domaine. Exemple : g1.spacejerk.fr)

e - On lance la synchronisation :
$ duniter sync g1.duniter.org 443
Prenez votre mal en patience, ça peut être assez long (20 minutes ou +..., selon votre connexion et votre matériel)

f - On lance le serveur :
Moi, je lance le serveur avec l'interface web, plus pratique :
$ duniter webstart --webmhost 192.168.0.75
Remarquez ici que je rajoute un argument à la commande duniter webstart : "--webmhost" me permet de spécifier l'adresse IP privée de mon réseau interne Freebox
Vous aurez alors accès à votre "interface web" à cette adresse : http://MON-DOMAINE:9220 ou bien http://MON-IP:9220

g - N'oubliez pas d'ouvrir le port suivant dans votre firewall (si vous en avez un) :
10901/tcp = serveur

g bis - Si comme moi votre Freebox est confgurée en mode "routeur", il faut faire une redirection de ports vers votre IP privée (10901)

Attention : l'ouverture du port 9220 sur la box ou le firewall rend l'administration Duniter disponible à *tout utilisateur extérieur* et il devient extrêmement facile de dérober la clé privée si vous n'avez pas de protection supplémentaire (YunoHost, restriction d'accès par IP, ...)

Maintenant se pose la question : comment se connecter "proprement" à l'interface web du nœud, sans ouvrir le port 9220 ? elois sur le forum Duniter nous donne une très bonne astuce à base de SSH :
ssh -L PORT_LOCAL:localhost:9220 user@ip -p SSH_PORT

Ce qui donnerait chez moi, depuis mon PC maison :
ssh -L 8999:localhost:9220 citizenz@MON_IP -p 5001

Puis on tape l'adresse suivante dans son navigateur préféré :
http://localhost:8999

Et zou ! On arrive directement sur l'espace web d'admin du nœud ! C'est magique ! :D

h - S'inscrire sur CESIUM
Cesium est une application vous permettant de gérer votre compte en monnaie libre Ğ1.
URL : https://g1.duniter.fr 
Il va falloir créer un compte. C'est nécessaire pour être inscrit dans le registre public du Ğ1. Vous créerez en même temps un "porte-feuille".
Remplissez complètement les infos demandées dans votre compte.
/!\ Retenez bien votre identifiant secret et votre mot de passe, essentiels pour vous connecter.
Vous devez créez un compte "membre" pour pouvoir plus tard participer au dividende universel....

N.B. : En rentrant ses propres identifiant et mot de passe de membre, on relie le nœud à sa clé publique.

Pour toute info et complément, je vous renvoie vers plusieurs liens :

WebDAV, Nginx et XFCE : accéder à ses médias en ligne facilement

Rédigé par citizenz 1 commentaire

WebDAV c'est quoi ? Laissons faire les présentations par le Wiki Ubuntu :

WebDAV, en entier : Web-based Distributed Authoring and Versioning, est un protocole déjà ancien (1996) et curieusement peu connu. Il permet pourtant une chose essentielle : écrire sur le Web, au lieu de seulement surfer (c'est-à-dire seulement lire).
C'est un protocole ouvert, le W3C (organisme qui "normalise le web") en a confié le développement à l'IETF qui avait déjà normalisé HTTP.
Pour résumer, WebDAV est une extension du HTTP. Au delà des GET et POST bien connus, WebDAV rajoute les verbes PUT, DELETE, COPY, PROPFIND, etc. Pour les curieux, la norme est là : http://tools.ietf.org/html/rfc2518. Étant une simple extension au protocole HTTP, WebDAV fonctionne dans à peu près toutes les situations où la navigation n'est pas bloquée.

Ceci étant dit, j'avais besoin de configurer un accès web pour les fichiers vidéos situés sur mon serveur. Il existe pléthore de solutions de streaming etc. mais ça n'est pas ce que je souhaitais. L'idéal ? Ouvrir tous mes médias directement depuis mon "Explorateur de fichiers", Thunar en l’occurrence puisque je suis sous XFCE.

Je n'ai pas été chercher bien loin et je me suis souvenu de WebDAV, que j'avais déjà utilisé "rapidement" il y a quelques temps.

Objectifs ? Configurer Nginx avec WebDAV et pouvoir accéder tranquillement à mes fichiers depuis mon bureau. C'est parti.

NGINX

Pour configurer Nginx rien de bien compliqué. Il vous faut néanmoins et avant tout installer un nouveau paquet sur votre serveur afin d'utiliser WebDAV:

$ sudo apt install nginx-extras

Puis il faut créer l'hôte virtuel Nginx. J'ai choisi d'utiliser un domaine du type media.mondomaine.fr pour l'exemple. On va donc créer un fichier comme suit :

$ sudo vim /etc/nginx/conf.d/media.mondomaine.fr.conf

Dans ce fichier, nous allons placer les éléments suivants :

server {
        listen 80;
        server_name media.mondomaine.fr;
        root /CHEMIN/MONREPERTOIRE/FICHIERS; # ----> A CHANGER avec le bon chemin de votre répertoire
        index index.php index.html index.htm;
        access_log /var/log/media-access.log combined;
        error_log /var/log/media-error.log error;

        location / {
                try_files $uri $uri/ /index.html;
                client_body_temp_path   /temp;
                dav_methods             PUT DELETE MKCOL COPY MOVE;
                dav_ext_methods         PROPFIND OPTIONS;
                create_full_put_path    on;
                dav_access              user:rw group:rw all:rw;
                autoindex               on;
                auth_basic "Mot de passe :";
                auth_basic_user_file "/etc/nginx/passwd/media_pass";
}

        # PARTIE HTTPS
        listen 443 ssl http2; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/media.mondomaine.fr/fullchain.pem; # managed by Certbot ---> MONDOMAINE.FR A CHANGER
        ssl_certificate_key /etc/letsencrypt/live/media.mondomaine.fr/privkey.pem; # managed by Certbot ---> MONDOMAINE.FR A CHANGER
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

        if ($scheme != "https") {
                return 301 https://$host$request_uri;
        } # managed by Certbot

}

La première partie du fichier est "traditionnelle...

La deuxième partie Location / est plus spécifique. On peut y voir la configuration propre à WebDAV : dav_methods, dav_ext_methods, dav_access , ...

J'ai de plus protégé l'accès à mon répertoire avec un accès restreint, tout simple et très traditionnel, en créant premièrement un nouveau répertoire /et/nginx/passwd :

$ sudo mkdir -p /etc/nginx/passwd

... puis :

$ sudo htpasswd -c /etc/nginx/passwd/media_pass mumbly

Il n'y a plus qu'à rentrer le mot de passe associé à l'utilisateur mumbly. Si httpasswd ne fonctionne pas, installer le paquet suivant :

$ sudo apt install apache2-utils

Puis j'ai configuré une partie HTTPS avec certbot et le plugin --nginx. Je vous renvoie à mon post à ce sujet .

Une fois fait, on teste d'abord la config de Nginx avec :

$ nginx -t
Si tout est ok, on redémarre Nginx :
$ sudo /etc/init.d/nginx restart

Reste la partie "Bureau" sous XFCE et Thunar et ici rien de difficile. J'ai configuré cet accès sur un PC équipé de Xubuntu. Peut-être y aura t-il une "autre config" sous un autre système, je n'ai pas testé ailleurs.

Avec Thunar, on peut rentrer directement - dans la barre d'adresse - l'adresse de notre répertoire WebDAV de la manière suivante :

davs://mumbly@media.mondomaine.fr/FICHIERS # à adapter avec votre VRAI chemin ...

Voila ce que ça donne en "réel" sur mon PC :

[NOTE] Locale française sur Ubuntu Server

Rédigé par citizenz Aucun commentaire
Si vous démarrez sur un serveur VPS fraîchement pourvu d'un serveur Ubuntu (par exemple sur Pulseheberg), il se peut que vous n'ayez pas, par défaut, la locale FR de configurée (vous serez en EN).
Pour forcer Ubuntu Server à prendre en compte la langue française avec un encodage de caractères en UTF-8, il faut installer le package language-pack-fr, indiquer dans le fichier /etc/default/locale la valeur fr_FR.UTF-8 à la variable LANG puis lancer une reconfiguration des locales, comme suit : 

$ sudo apt install language-pack-fr
$ sudo if [ -f /etc/default/locale ]; then cp /etc/default/locale /etc/default/locale_default; fi
$ sudo echo "LANG=fr_FR.UTF-8" > /etc/default/locale
$ sudo dpkg-reconfigure locales

Les modifications seront effectives à la prochaine connexion.

Cette note est largement inspirée de l'article suivant :
Fil RSS des articles de ce mot clé