.onion et yunohost - Différentes questions

Salut,

J’ai installé et configuré Tor pour que mon instance yunohost soit accessible via une adresse .oinion.
Actuellement, si je fais https://azerty.onion, je tombe sur Nginx, il faut que je saisisse https://azerty.onion/appli/ pour avoir le service que je voudrais par défaut sur l’adresse https://azerty.onion.

Autre soucis, https://azerty.onion/yunohost est acessible. Comment désactiver ça.
https://azerty.onion a un certificat autosigné et dans sa configuration, c’est le nom de domaine en .fr qui est visible et non le .onion

De plus le certificat TLS autosigné est généré automatiquement et contient le nom de domaine principal à savoir toto.org et donc ça leake l’adresse. Comment faire pour que le certificat soit associé au owner azerty.onion

Salut, veux-tu l’application Tor ou Tor installé en manuellement ? Si installation manuelle, je pense qu’il va falloir bidouiller :frowning: Peut-être avec une app spécifique.
Comme rustine tu peux éventuellement avoir des apps dédiées Tor en rajoutant manuellement le domaine azerty.onion et en y installant des apps ? Ca règlerait tous les problèmes mais l’inconvénient c’est que l’app ne serait accessible qu’en .onion

J’ai installé Tor via apt-get install Tor, j’ai eu un nom de domaine en .onion de générer que j’ai ajouté dans Yunohost comme n’importe quel nom de domaine.

Ce que je veux réussir à faire, c’est avoir la même app (ici Spip) dispo/accessible via un nom de domaine en .fr et un en .onion. Et uniquement cette app. Je vais voir si je ne dois pas faire autrement en bidouillant/ne passant par Yunohost mais en éditant les fichiers à la main de Nginx du coup… Je verrai pour donner ma solution ici.

Bonjour,

le problème est -il résolu ? Je suis en quête de retour d’expériences. :slight_smile:

J’ai installé sur mon instance Yunohost un hidden service tor en suivant
https://yunohost.org/#/torhiddenservice_fr. Sur cette même instance, j’ai un sous-domaine en blog.mondomaine.fr qui redirige vers /var/www/blog, pour lequel j’ai déjà un certificat généré avec Let’s Encrypt.

Pour pouvoir rediriger le nom de domaine random123456789.onion vers /var/www/blog et uniquement cet espace, pour ne pas que des chemins comme https://ladressse.onion/yunohost/admin/#/login soit accesible, voici ma configuration nginx

Pour le fichier /etc/nginx/conf.d/random123456789.onion.conf

server { listen 80; listen [::]:80; server_name random123456789.onion; #access_by_lua_file /usr/share/ssowat/access.lua; include conf.d/random123456789.onion.d/*.conf; #location /yunohost/admin { # rewrite ^ https://$http_host$request_uri? permanent; #} access_log /var/log/nginx/random123456789.onion-access.log; error_log /var/log/nginx/random123456789.onion-error.log; } server { listen 443 ssl; listen [::]:443 ssl; server_name random123456789.onion; # Les certificats sont des copies de ceux générés pour blog.mondomaine.fr ssl_certificate /etc/yunohost/certs/random123456789.onion/crt.pem; ssl_certificate_key /etc/yunohost/certs/random123456789.onion/key.pem; ssl_session_timeout 5m; ssl_session_cache shared:SSL:50m; ssl_prefer_server_ciphers on; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ALL:!aNULL:!eNULL:!LOW:!EXP:!RC4:!3DES:+HIGH:+MEDIUM; add_header Strict-Transport-Security "max-age=31536000;"; # Uncomment the following directive after DH generation # > openssl dhparam -out /etc/ssl/private/dh2048.pem -outform PEM -2 2048 # Uncomment the following directive after DH generation # > openssl dhparam -out /etc/ssl/private/dh2048.pem -outform PEM -2 2048 #ssl_dhparam /etc/ssl/private/dh2048.pem; #access_by_lua_file /usr/share/ssowat/access.lua; include conf.d/random123456789.onion.d/*.conf; #include conf.d/yunohost_admin.conf.inc; #include conf.d/yunohost_api.conf.inc; access_log /var/log/nginx/random123456789.onion-access.log; error_log /var/log/nginx/random123456789.onion-error.log; }

Pour le fichier /etc/nginx/conf.d/random123456789.onion.d/blog.conf

location / {
alias /var/www/blog/;

# Force HTTPS 
if ($scheme = http) { 
    rewrite ^ https://$server_name$request_uri? permanent; 
} 
# Et des règles nginx spécifique à l'application qui fait tourner le blog 

}

Comme le certificat est celui généré par let’s encrypt pour mondomaine.fr, le TorBrowser m’averti avec une erreur… dévoilant donc au passage le vrai nom du site. Let’s encrypt ne supporte pas encore les noms de domaine en .onion, la solution est de générer un certificat auto signé spécialement pour ce domaine. Le but ici n’est pas de protéger mon site (vu qu’il a aussi pignon sur rue) mais de pouvoir proposer un accès anonyme au blog aux personnes le souhaitant.