Sous-domaines ou sous-niveaux?

Bonjour,

Petit bout de traduction suite à un échange en anglais avec @genma qui pourrait intéresser des francophones : A ma question “Y a-t-il un quelconque (dés-)avantage à utiliser des sous-domaines (ex : cloud.mondomaine.com) plutôt que des sous-niveaux (ex : mondomaine.com/cloud) ?”, Genma a répondu ceci :

Dans le cas de Yunohost, si tu installes une application sur un sous-domaine, tu ne peux pas installer d’autre application dessus (mais c’est la classe d’avoir une url cloud.mondomaine).
En général, tu peux déplacer/modifier ton serveur et déplacer tes applications plus facilement si tu tutilises un sous-domaine. Il te suffit de déplacer tes applications et changet ton DNS. Avec un sous-niveau, ce n’est pas aussi simple.

Certaines applications ne peuvent pas être installées sur un sous-domaine dans Yunohost et ont besoin d’un sous-niveau (shaarli par exemple).
Personnellement, j’ai :
blog.genma.fr qui est sur un serveur à part
genma.fr est sur Yunohost à la maison
mondomaineprivé est le même Yunohost à la maison (même machine, domaine différent) et j’ai cloud.mondomaineprivé (nextcloud sur Yunohost), music.mondomaineprivé (sonerezh sur Yunohost), et mondomainepirvé/shaarli (par exemple) pour les applications qui ne peuvent être installées sur un sous-domaine.

Un sous-domaine a besoin d’un certificat par nom. (ou un cartificat wild card *) pour le HTTPS. Un sous-niveau n’a besoin que du certificat du nom de domaine (plus simple). Let’s encrypt arrive et te permet d’avoir un certificat pour chaque sous-niveau (plus simple que d’avoir un vertificat wild card qui est cher)

Des sous-domaines nécessitent la configuration de ton DNS (tu peux ajouter les lignes
music cname mondomaine.com
cloud cname mondomaine.com
ce n’est pas difficile)

Petit résumé avec quelques détails complémentaires :
sous-domaines (ex : cloud.mondomaine.com)

  • certaines applications ne peuvent pas être installées autrement (ex : Duniter)
  • plus facile de déplacer / découpler les services d’un serveur à un autre
  • plus facile de déplacer une application sur un même serveur Yunohost
  • possibilité d’avoir un seul nom de domaine qui pointe vers différents serveurs selon les sous-domaines
  • possibilité d’avoir plusieurs noms de domaine qui pointent vers un même serveur
  • certaines applications ne peuvent pas être installées de cette façon (ex : shaarli)
  • configuration DNS à faire “à la main”, mais ce n’est pas très compliqué
  • nécessité d’avoir un certificat (HTTPS) pour chaque sous-domaine (mais c’est plus simple avec let’s encrypt qui est en cours de mise en place sur Yunohost), ou un certificat wild card * qui coûte cher

sous-niveaux (ex : mondomaine.com/cloud)

  • certaines applications ne peuvent pas être installées autrement (ex : shaarli)
  • un seul certificat (HTTPS) pour gérer tous les sous-niveaux : celui du nom de domaine
  • certaines applications ne peuvent pas être installées de cette façon (ex : Duniter)
  • on ne peut pas déplacer une application d’un serveur à un autre (on peut mais l’url change puisqu’on change de serveur)

@genma ou toute autre personne passant par là, n’hésitez pas à corriger toute erreur dans ce que j’ai écrit, et / ou à ajouter des précisions. Merci !

4 Likes

Salut à tous !

Je suis en pleine réflexion sur comment procéder sur mon instance Yunohost. Mais avant de passer mon instance en production, je suis toujours en phase de test et je ne sais pas quel solution choisir ?

J’ai bien compris les différences entre les sous-domaines et les sous-niveaux, mais quels solutions est la meilleure, plus fiable, la plus sécurisée et la plus performante ?

Merci par avance de votre aide.

Bonjour,

Certaines applications recommandent d’utiliser plutôt un sous-domaine comme Nextcloud pour une question de sécurité. Je n’ai pas trop compris la raison mais je suis leur recommandation. Tu peux le voir dans leur outil de scan, ça concerne host_prefix.
D’autres ne s’installent que sur sous-domaine comme Jitsi.
Perso, avec un NDD yunohost .ynh.fr, j’installe selon la configuration par défaut, à savoir mondomaine.ynh.fr/Apps, c’est ce qui est renseigné par défaut à l’installation.
Pour Nextcloud, j’ai installé comme ceci: nextcloud.mondomaine.ynh.fr
Avec les adresses yunohost, il s’agit en fait déjà de sous-domaine, du coup on crée un sous-sous-domaine.

Bonjour, et merci de ta réponse.

Voici ma configuration: j’ai déjà mon propre nom de domaine avec mon propre serveur dédié.

Selon toi, il faudrait mieux conserver les paramètres par défaut ?

Les sous-domaines c’est mieux car:

  • Si tu veux bouger spécifiquement ce service sur un autre serveur c’est possible de le faire puisqu’il suffit de revoir l’entrée DNS correspondante à ce sous-domaine.
  • Au niveau sécurité il y a des risques à avoir plusieurs apps sur un même domaine avec des sous chemins distincts vis à vis des cookies et des injections de code javascript.

D’un autre côté, un sous domaine qui contient nextcloud.XXXX et qui utilise Let’s Encrypt a des chances d’être attaqué un jour spécifiquement vis à vis des failles nextcloud. Idem avec un sous chemin /nextcloud/ . Donc le mieux c’est de mettre un autre nom (file.XXXX , fichier.XXXX, share.XXXX ).

Non je n’ai pas dis ça, j’ai simplement dis que yunohost proposais comme ça, je voulais surtout signaler qu’un sous-domaine était conseillé pour nextcloud. Mais vu la réponse de ljf , il vaut mieux le faire pour toutes les applications.

Tu conseilles de mettre un autre nom, mais si celui-ci est trop générique genre cloud, le risque n’est-il pas toujours là d’être également ciblé en priorité pour des failles nextcloud?
Et pourquoi “qui utilise Let’s Encrypt”?

Nextcloud étant un logiciel connu, voir LE logiciel libre de cloud numéro 1, c’est sur que nommé ça cloud n’aide pas tant que ça même si ce n’est quand même pas pareil. Autant mettre nuage.XXXX.tld là au moins on restreint au français.

Parce que les autorités de certifications comme Let’s Encrypt sont obligées de publier à quels noms de domaines elles signent un certificat.

Bon après tout ça c’est des protections assez faible, c’est un peu comme changer son port 22 SSH, l’objectif est d’éviter des scans automatiques mais pas du tout de contrer des attaques ciblées ou des attaques automatiques bien huilées.

1 Like