Soutenir Vision du Web dans son partage de logiciels et de ressources libres

Ce mineur crée de la monnaie numérique Monero pour soutenir Vision du web.
Merci de désactiver votre bloqueur de publicité.
Aucune publicité ne sera affichée.
Le mineur utilise les ressources de votre machine pour créer gratuitement de la monnaie numérique.
Le montant des donations pour Vision du web est de 0.046176192993616 Monero.

Installer Apache2 sur Debian

De Wiki. Analyse, Communication, Développement, Hacking.
Aller à : navigation, rechercher
Naviguer sur le wiki : Accueil du wiki - Sommaire Administrateur - Sommaire des projets - Sommaire pour Webmaster - Sommaire We make Hack
Naviguer sur le site : Accueil du site - Les annuaires - Les éditoriaux - Le forum - Les outils - Les projets

Exemples

Le besoin premier est de pouvoir envoyer des mails avec un serveur fonctionnel.
Mon étude ne porte pas sur l'ensemble des impactes de sécurité : 391 directives de configuration pour Apache 2.2 .

Paramètres pour envoyer les mails dans php.ini avec le paramètre -f dans sendmail_path.

Mise en place des logs pour la remontée des erreurs.
Les logs de Apache pour PHP sont à configurer - à identifer.
Les logs des Mails sont à configurer - à identifier.

Redémarrer les services de Apache en ligne de commande

# /etc/init.d/httpd restart
Exemple de redémarrage
Arrêt de httpd :
OK
Démarrage de httpd : [Fri May 30 00:28:20 2014] [warn] NameVirtualHost *:443 has no VirtualHosts
[Fri May 30 00:28:20 2014] [warn] NameVirtualHost *:80 has no VirtualHosts [ OK ]

Savoir si Apache écoute Internet

netstat -ntlp | grep ":80"
tcp  0 0 :::80  :::*  LISTEN 3996/httpd

Trouver le service PHP

whereis php
php: /usr/bin/php /etc/php.d /etc/php.ini /usr/lib64/php /usr/share/php /usr/share/man/man1/php.1.gz

Vérifiez les fichiers logs régulièrement dans /var/log/ afin de détecter les erreurs

Le contenu du dossier var/log/ est lu et copié en local avant la mise en place du nouveau php.ini de développement.
Les logs de PHP sont configurés depuis le php.ini de Apache. Chemin : /var/log/phpini/error_log.log
Les logs des Mails sont configurés depuis le php.ini de Apache. Chemin : /var/log/phpini/mail.log.log
0- Créer le dossier phpini : mkdir phpini
1- Créer le fichier de log sur le serveur : touch /var/log/error_log.log et touch /var/log/mail.log.log
2- Mettre les droits en écriture sur le fichier si nécessaire.
3- Ouvrir le fichier php.ini en lecture/écriture, avec Nano : nano /etc/php.ini
4- Appliquer les changements listés dans l'étude du php.ini
5- Redémarrer apache : /etc/init.d/httpd restart
7- Tester les logs suite à l'envoi d'un mail : cat /var/log/phpini-log-mail.log
8- Passer le paramètre -f pour l'envoie des mails ?
Exemple de fichier php.ini qui m'a servit de référence sur une Centos en 2014 : Exemple Apache pour le fichier php ini

Informations complémentaires

user_ini.filename et user_ini.cache_ttl ont été ajoutées pour contrôler l'utilisation des fichiers INI utilisateurs.
exit_on_timeout a été ajouté pour forcer les fils Apache 1.x à se terminer si un délai d'exécution maximal PHP survient.
Ajout de mbstring.http_output_conv_mimetype. Cette directive définit une expression rationnelle qui identifie les types de contenus pour lesquels mb_output_handler()
est activé.
Ajout de request_order. Autorise le contrôle des options de requêtes disponibles dans $_REQUEST.
Le directives INI suivantes ont changé de valeur par défaut :
session.use_only_cookies vaut maintenant "1" (activé) par défaut.
oci8.default_prefetch a changé de valeur par défaut, passant de "10" à "100".
###############################
###############################
###############################

Installer et démarrer Apache2 sur GNU/Linux Debian Jessie 8.5

sudo apt-get install Apache2

Lancer le service avec /etc/init.d/apache2 start ou service apache2 start.

Lancer la commande sudo apache2 -k start permet d'afficher les erreurs éventuellement rencontrées.

Attention, sudo apache2 -k start ne lance pas Apache2 mais n'affiche que les alertes.

L'option -k permet de vérifier la configuration en mode test.

Identifier un problème sur Apache2 : Etat, logs, journal

La commande sudo systemctl status apache2.service détail l'état de Apache2.

Le fichier error.log de Apache2 est localisé dans /var/log/apache2/error.log

Consulter le journal avec la commande journalctl -xn

Résoudre les éventuels incidents

Revenir à une configuration d'origine pour le paquet Apache2 de Debian Jessie

Exemple : Installation du mod complémentaire passenger qui a été désinstallé, mais, pas sa configuration.
Je n'ai pas apt-get autoremove --purge mod_passenger et de ce fait la configuration est restée installée.
apache2: Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/passenger.load: Cannot load /usr/lib/apache2/modules/mod_passenger.so into server: /usr/lib/apache2/modules/mod_passenger.so: cannot open shared object file: No such file or directory 

sudo dpkg --force-confmiss -i /var/cache/apt/archives/apache2_*.deb

Je ne suis pas certain que cette manipulation permette de corriger le problème résultant des restes de la configuration de passenger qui n'a pas été supprimé.

Plutôt que de revenir à une configuration initiale de Apache2, nous pouvons aussi supprimer la configuration de passenger, ce qui semble plus adéquate dans ce cas la.

La configuration empêche Apache2 de démarrer car le mod_passenger n'est pas installé

Lancer le service avec sudo service apache2 start.

Une erreur est affichée sur le terminal : job for apache2.service failed. see 'systemctl status apache2.service'

En utilisant la commande sudo apache2 -k start on observe qu'il manque le mod_passenger.

[Sat Jul 16 19:33:43.934286 2016] [core:warn] [pid 8653] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined
[Sat Jul 16 19:33:43.934362 2016] [core:warn] [pid 8653] AH00111: Config variable ${APACHE_PID_FILE} is not defined
[Sat Jul 16 19:33:43.934378 2016] [core:warn] [pid 8653] AH00111: Config variable ${APACHE_RUN_USER} is not defined
[Sat Jul 16 19:33:43.934384 2016] [core:warn] [pid 8653] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined
[Sat Jul 16 19:33:43.934400 2016] [core:warn] [pid 8653] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
apache2: Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/passenger.load: Cannot load /usr/lib/apache2/modules/mod_passenger.so into server: /usr/lib/apache2/modules/mod_passenger.so: cannot open shared object file: No such file or directory

Utiliser apache2ctl configtest en cas d'erreur de démarrage

Lancer la commande sudo apache2ctl configtest pour identifier ce qui empêche Apache2 de démarrer.

apache2: Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/passenger.load: Cannot load /usr/lib/apache2/modules/mod_passenger.so 
into server: /usr/lib/apache2/modules/mod_passenger.so: cannot open shared object file: No such file or directory
Action 'configtest' failed.
The Apache error log may have more information.

Erreur de mod manquant pour libapache2-mod-passenger.

Installer ou supprimer un mod et sa configuration. Cette erreur est résolue.


Je relance la commande sudo apache2ctl configtest

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Syntax OK

Cette erreur est un simple avertissement qui n'empêche pas le fonctionnement du serveur Apache.

Définir la directive 'ServerName' globalement pour supprimer ce message. Cette erreur est résolue.

Apache démarre! It works!

sudo service apache2 start

Saisir localhost dans la barre d'adresses url du navigateur.

It works!

Apache2-debian-default-page.png


Debian-apache2-configuration-overview.png

Identifier et corriger les erreurs de démarrage de Apache2 installé par défaut

Lancer la commande sudo apache2 -k start pour simuler le démarrage de Apache2

[Sun Jul 17 00:06:34.871360 2016] [core:warn] [pid 12027] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined
[Sun Jul 17 00:06:34.871428 2016] [core:warn] [pid 12027] AH00111: Config variable ${APACHE_PID_FILE} is not defined
[Sun Jul 17 00:06:34.871443 2016] [core:warn] [pid 12027] AH00111: Config variable ${APACHE_RUN_USER} is not defined
[Sun Jul 17 00:06:34.871450 2016] [core:warn] [pid 12027] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined
[Sun Jul 17 00:06:34.871465 2016] [core:warn] [pid 12027] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Sun Jul 17 00:06:34.876551 2016] [core:warn] [pid 12027:tid 139957733336960] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Sun Jul 17 00:06:34.876713 2016] [core:warn] [pid 12027:tid 139957733336960] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Sun Jul 17 00:06:34.876730 2016] [core:warn] [pid 12027:tid 139957733336960] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf:
Invalid Mutex directory in argument file:${APACHE_LOCK_DIR}


  • Vu sur un forum

faire export des 2 variables d'environnement

export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data

faire export de la variable

export APACHE_PID_FILE=/var/run/apache2.pid

Que donne

: sudo systemctl -l status apache2

Consulter les status du service Apache2

Apache2 démarre. Nous consultons les status du service systemctl status apache2.service

Dans cet exemple, on constate que Passenger est présent. Il ne s'agit donc pas d'une configuration de Apache2 minimaliste, nous avons déjà ajouté un mod.

systemctl status apache2.service
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2)
   Active: active (running) since dim. 2016-07-17 01:02:34 CEST; 12h ago
  Process: 11953 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 12930 ExecReload=/etc/init.d/apache2 reload (code=exited, status=0/SUCCESS)
  Process: 12127 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/apache2.service
           ├─12162 /usr/sbin/apache2 -k start
           ├─12948 PassengerWatchdog
           ├─12955 PassengerHelperAgent
           ├─12970 PassengerLoggingAgent
           ├─12987 /usr/sbin/apache2 -k start
           └─12988 /usr/sbin/apache2 -k start

Le besoin étant de faire tourner Apache2 en local, au plus simple, au plus propre, le mod Passenger est désinstallé ainsi que sa configuration, pour revenir à un état initial de Apache2. Je rappel que le mod Passenger avait été installé pour redmine, puis, le mod Passenger a été désinstallé en laissant sa conf ce qui a empêché la nouvelle installation de Apache de démarrer. La désinstallation du mod Passenger avec --purge a permis de lancer Apache2.

On observe bien que Passenger n'est plus présent.

systemctl status apache2.service
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2)
   Active: active (running) since dim. 2016-07-17 14:03:23 CEST; 5min ago
  Process: 14150 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 14176 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/apache2.service
           ├─14192 /usr/sbin/apache2 -k start
           ├─14195 /usr/sbin/apache2 -k start
           └─14196 /usr/sbin/apache2 -k start

Les lignes avec -k start ne sont pas nécessaires. On les tues rapidement avec sudo killall apache2

systemctl status apache2.service
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2)
   Active: inactive (dead) since dim. 2016-07-17 15:38:57 CEST; 56min ago
  Process: 14696 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 14585 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)

Installer PHP

PHP multi-versions sur le même Apache

Ko.png http://www.pulsar-informatique.com/actus-blog/entry/php-multi-versions-sur-le-meme-apache

PHP5 configurations

Modifier le fichier /etc/php5/apache2/php.ini.
Ne pas fournir la version de PHP :
expose_php = Off
Restreindre les emplacements du site :
open_basedir = /var/www
De ce fait, si je me place à la racine du site, il me sera impossible d'inclure
 le fichier ../../../../../../../etc/passwd par exemple.
Désactiver certaines commandes :
disable_functions = php_uname, getmyuid, getmypid, passthru, leak, listen, diskfreespace, tmpfile, link, ignore_user_abord, shell_exec, dl, set_time_limit, exec, system, highlight_file, source, show_source, fpaththru, virtual, posix_ctermid, posix_getcwd, posix_getegid, posix_geteuid, posix_getgid, posix_getgrgid, posix_getgrnam, posix_getgroups, posix_getlogin, posix_getpgid, posix_getpgrp, posix_getpid, posix, _getppid, posix_getpwnam, posix_getpwuid, posix_getrlimit, posix_getsid, posix_getuid, posix_isatty, posix_kill, posix_mkfifo, posix_setegid, posix_seteuid, posix_setgid, posix_setpgid, posix_setsid, posix_setuid, posix_times, posix_ttyname, posix_uname, proc_open, proc_close, proc_get_status, proc_nice, proc_terminate, phpinfo
Interdire l'ouverture et l'inclusion de fichiers distants :
allow_url_fopen = Off
allow_url_include = Off
Si vous n'utilisez pas de formulaires pour l'envoi de fichiers, il est bon de désactivé le système d'envoi :
file_uploads = Off
Par contre si vous avez ce genre de formulaire, il faut limiter un répertoire d'envoi et une taille maximale :
upload_tmp_dir = /var/php_tmp
upload_max_filezize = 2M
Enfin, une dernière chose des plus convoitée, les sessions.
Enregistrement des sessions : session.save_path = /var/lib/php
Il est déconseillé demanipuler vos sessions à l'aide de JavaScript.
À l'aide de cette directive, JavaScript ne pourra lire les sessions (afin d'éviter le XSS) :
session.cookie_httponly = 1
De ce fait, JavaScript ne pourra accéder qu'aux cookies.
Ne pas loguer une erreur récurrente :
ignore_repeated_errors = On
Fichier log :
error_log = /var/log/php_errors.log
Ou bien configurer-le tel qu'il redirige les messages vers syslog-NG (voir section Syslog-NG).

module MySQL pour PHP

php7.0-mysql : https://packages.debian.org/sid/php7.0-mysql

Variables d'environnement

Export des 2 variables d'environnement :
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
Export de la variable pid :
export APACHE_PID_FILE=/var/run/apache2.pid
La commande suivante test la configuration d'un serveur apache.
sudo apache2 -t
La commande à lancer pour tester la configuration d'Apache2 qui prend en compte les variables d'environnement.
apache2ctl -t

mod-security2

Installer mod-security2

On va installer mod-security2 un pare-feu web pour Apache.
Créer le fichier /etc/apt/sources.list.d/mod-security2.list et y inscrire :
### Dépôt pour mod-security2 ###
deb //etc.inittab.org/~agi/debian/libapache-mod-security2 ./
Récupérer la clef gpg :
[email protected] # gpg --keyserver pgpkeys.mit.edu --recv-keys C514AF8E4BA401C3
[email protected] # gpg --export -a C514AF8E4BA401C3 | apt-key add - 
Mettre à jour les dépôts :
[email protected]rveur # aptitude update 
Installer le module :
[email protected] # aptitude install libapache-mod-security mod-security-common 

Configurer mod-security2

Configuration du module, créer le fichier /etc/apache2/conf.d/mod-security.conf et ajouter ceci :
<IfModule mod_security2.c>
 Include /etc/modsecurity/*.conf
</IfModule>
Il va falloir créer le dossier /etc/modsecurity et copier les fichiers de configuration :
[email protected] # mkdir /etc/modsecurity
[email protected] # cd /usr/share/doc/mod-security-common/examples/rules
[email protected] # cp *.conf base_rules/* /etc/modsecurity/ 
De plus, il faut créer le dossier pour les logs :
[email protected] # mkdir /etc/apache2/logs 
Optionnel : commenter la ligne contenant Host header is a numeric IP address du fichier /etc/modsecurity/modsecurity_crs_21_protocol_anomalies.conf pour autoriser l'accès au site par l'intermédiaire d'une adresse IP.

Activer le module mod-security2

[email protected] # a2enmod mod-security 
Relancer Apache :
[email protected] # apache2ctl restart 
# Vérifier que le module est bien chargé :
[email protected] # cat /var/log/apache2/error.log | grep ModSecurity 
# Devrait renvoyer :
[notice] ModSecurity for Apache/2.5.12 (http://www.modsecurity.org/) configured.
Bien qu'il s'agisse là d'un excellent module et d'une protection fiable, il se peut qu'il soit un peu extrême lorsque vous développez en local.
Le comportement de PHPmyAdmin peut être altéré, certains scripts retournerons une erreur car jugés dangereux.
Afin de parer ce problème, et ce seulement en développement, vous pouvez ajouter une règle dans les options du vhost ou dans un .htaccess qui désactivera mod-security :
SecRuleEngine Off
Bien entendu, une fois le développement terminé, il est plus que fortement conseillé de rétablir la sécurité. 

Peaufiner Apache

Désactiver diverses divulgations d'informations comme la signature du serveur, la méthode TRACE, et caetera.
Éditer le fichier /etc/apache2/apache2.conf et ajouter ces lignes :
ServerSignature Off
ServerTokens Prod
TraceEnable Off
Optionnel : si le module rewrite est installé et activé, voici quelque protections supplémentaires, à placer dans un fichier .htaccess :
# Empêcher les attaques par include de fichier externe
RewriteEngine On
RewriteCond %{QUERY_STRING} =//
RewriteRule .* - [F,L]

# Bloquer l'accès au site pour libwww-perl
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} libwww [NC]
RewriteRule .* - [F,L]
Optionnel : autre protection, à placer aussi dans un fichier .htaccess :
# Protection contre les attaques se servant de register global on
SetEnv REGISTER_GLOBALS 0
Redémarrer apache :
[email protected] # service apache2 restart 
Dans les fichiers d'options des vhosts ou dans un fichier .htaccess il est possible de bloquer certaines actions.
Empêcher le listage des répertoires
Options -Indexes
Empêcher de pouvoir accéder à un page par sonNom.php ou sonNom
Options -MultiViews
Ne pas suivre les liens symboliques
Options -FollowSymLinks
Note : pour combiner plusieurs options, il faut les mettres à la suite tel que :
Options -Indexes -FollowSymLinks -MultiViews
Attention : il est déconseillé de sécuriser un répertoire par un accès à l'aide de la méthode d'authentification d'Apache.
Le pourquoi du comment est simple : les informations transitent en clair, de ce fait, à l'aide d'une attaque MITM, il est très facile d'obtenir celles-ci. 

Autres liens à survoler

http://www.commentcamarche.net/contents/796-installation-d-un-serveur-web-sous-linux-apache-php-et-mysql
http://olange.developpez.com/articles/debian/installation-serveur-dedie/
http://debian-facile.org/doc:reseau:apache2:multisite

Sécurité Serveur que faire de plus pour aller plus loin

Modifier le nom du script d'accès à APC (?)
port-knocking

Bibliographie

Ok-ko.png Utiliser la documentation officielle pour le serveur HTTP Apache Version 2.4 : https://httpd.apache.org/docs/2.4/
Ok-ko.png Debian 9 - Apoache MariaDB PHPMyAdmin : http://jc.etiemble.free.fr/abc/index.php/realisations/trucs-astuces/deb9php7
Ok-ko.png Installer Apache PHP MySQL et Webmin : https://www.skyminds.net/serveur-dedie-installation-dapache-php-mysql-et-webmin/
Ok-ko.png Installer un serveur web : http://www.linux-note.com/installer-un-serveur-web/

NAVIGATION

COMPRENDRE LA BLOCKCHAIN PAR LA PRATIQUE

Obtenir gratuitement de la cryptomonnaie sur internet : https://www.visionduweb.eu/forum/bitcoin/1597-gagner-des-bitcoins-miner-des-bitcoins

PARTICIPER ET PARTAGER

Vous êtes sur le HackerSpace de Vision du Web.
Les pages présentées sur le wiki évoluent tous les jours.
Certaines recherches sont peu abouties et incluent des erreurs.
Pour participer sur le wiki, créer un compte utilisateur en haut à droite.
Pourquoi utiliser GNU/Linux ? Y'a moins bien, mais, c'est beaucoup plus cher.
GNU/Linux, hackerspace, opensource, logiciels libres et transition écologique.
La recherche interne du wiki permet de trouver le contenu qui vous intéresse.
Les informations présentes sur cette page sont issues d'une recherche personnelle.
Identifiez-vous pour poser vos questions sur la page de discussion de VisionDuWeb.
Améliorer le contenu des pages en faisant des propositions depuis l'onglet discussion.
Pour écrire en Markdown : Éditeur - Générateur de tableau 1 - Générateur de tableau 2.
Vous pouvez partager les articles du wiki avec l'ensemble de la communauté des internautes.
Les recherches sur la sécurité servent à administrer et protéger votre système informatique.
Les informations du wiki ne doivent pas servir à nuire à autrui ou à un système informatique.
De nombreux outils gratuits sont listés et disponibles dans la boîte à outils de Vision du web.
D'autres pages du wiki peuvent correspondre à vos attentes. La liste de toutes les pages du wiki.

SOUTENIR VISIONDUWEB

Soutenir Vision du web avec des Bitcoins : 33ZsupGQr1rUmwj62HadcZ55hsGJajD9wN
Soutenir Vision du web avec des Bitcoins Cash : 15q5xAVFGpMbqgKsr8uhXymTv7kLfke7hq
Soutenir Vision du web avec des Bitcoins Gold : GNcVseSdiEGRzKYwZWeCbGGg1sZ6Nax172
Soutenir Vision du web avec des Bitcore (BTX) : 1Ks9FDF4FVauAHBCpBFKySiSmD8LaQhqDH
Soutenir Vision du web avec des Blackcoins : BKYBEhQGm9ExrYoWzbvmHA491sK2ArxFM6
Soutenir Vision du web avec des Bytecoins : 241LTEY5L3CSTN2afYf97obxGp4ahUYnq5jDwx5b15NQDothce8fpUeKA32X5SrJuDPBgXTsSmQRoAbCzcDvM2d2Pe9w6AY
Soutenir Vision du web avec des Clams : xMF9u1evuiN2zzEjg2KhgeYPcCLU84Ki5T
Soutenir Vision du web avec des Dash : Xd4vJFnWy27be8cLGSiXVYzP6nKFbdHATU
Soutenir Vision du web avec des Monero : 469EK3yr8JbNe3Gf1rXHD81zcHT7o1hTsDxqvWtxunnaTDLVNiXQ2NyWbwaVe4vUMveKAzAiA4j8xgUi29TpKXpm413rpYt
Soutenir Vision du web avec des Dogecoins : A64jhqCgsUyrUCPte6fV3BcG2Y7daH13Ym
Soutenir Vision du web avec des Ethereum : 0x0E4D6B7A1F88A56A1A66bf408c72FAE3d104D632
Soutenir Vision du web avec des Ethereum Classique : 0x633d83a4ab31e63d76d01edb660ecca4498ef8fa
Soutenir Vision du web avec des Litecoins : 3LKigW6TCS5MvXrZFGh8VMEtZf6MtE86iz
Soutenir Vision du web avec des Potcoins : PUYvjeJ3n2frypgD5yd95yNnwoztnZL5P3
Soutenir Vision du web avec des Solarcoins : 8aYbMcAL68U8f3c3o5pEKUKeWxx48gU1eq
Soutenir Vision du web avec des Zcash : t1Tkiv7nTt9Gwwui9ifsBdp37dTnRG7oYHp