Domaine uniquement sur le port 80

Bonjour,

Je partage un serveur avec des amis où chacun héberge les services dont il a besoin. Mon ami a fait l’acquisition d’un nom de domaine pour son site web.
D’autres services sont accessibles sur d’autres ports. Mais je souhaite que le domaine puisse uniquement pointer sur le port 80.

Exemple : j’ai un autre virtual host apache sur le port 666, je ne souhaite pas qu’il soit accessible via IP:666.

Et je souhaite faire ceci pour tous les autres ports (donc tout interdire sauf le port 80). J’ai pensé au fichier /etc/hosts mais je ne vois pas comment faire ?

Merci d’avance !

Un nom de domaine, ça pointe vers une IP pas vers un couple IP/port. Ce que tu veux faire est impossible (sauf à mettre en place une deuxième adresse IP sur ton serveur).

En l’état actuel [1] la résolution de nom ne concerne que l’adresse, pas le port.
Par contre tu peux configurer le serveur apache pour que tel virtual host soit disponible uniquement sur tel port.

[1] Il existe bien l’enregistrement DNS de type SRV qui permet de lier un service (donc un numéro de port) à un nom de domaine, mais en pratique il est très peu utilisé, essentiellement par des protocoles comme SIP (VoIP) ou XMPP (Jabber).

Mais je ne peux pas mettre une condition genre SI port = 666 ET acces via domaine la connexion est refusée ? Ou il m’est impossible de savoir si on accède au serveur via l’ip ou le domaine ?

La résolution DNS se passe uniquement sur le client, la communication entre le client et le serveur est toujours effectuée via l’adresse IP.

Comme je l’ai déjà dit, cela se configure dans les virtualhosts d’apache.
La connexion ne sera pas vraiment refusée, mais tu peux faire en sorte que le site correspondant à un nom de domaine donné ne soit accessible que sur le port 80.