Je gère un petit site Web en utilisant nginx. Puisqu'il n'y aura (probablement) pas beaucoup de trafic dans la durée de vie de mon serveur et pour éviter des attaques par déni de service aléatoires, j'envisage de configurer le serveur Web pour qu'il écoute sur un autre port au lieu du port 80.
L'écoute sur un port alternatif (81, 8080, etc.) réduit-elle réellement le risque d'attaques ou de violations? Ou le fardeau de le maintenir l'emporte-t-il sur les avantages? Dans ce cas, devrais-je utiliser ces ports alternatifs pour d'autres services Web au cas où je les configurerais à l'avenir?
Il y a deux choses à considérer ici:
http://superuser.com
fonctionne sur le port 80 et votre navigateur suppose que 80 est le port que vous voulez dire lorsque vous le saisissez. Ce n'est pas différent de saisir http://superuser.com:80
. Si vous exécutez votre recherche Web sur le port 8080, l'utilisateur doit saisir http://superuser.com:8080
. L'utilisateur moyen ne s'en souviendra probablement pas.Des méthodes telles que le changement de ports sont appelées " La sécurité par l'obscurité " et il est hautement douteux que le travail supplémentaire et les inconvénients apportent une sécurité précieuse.
Oui, la définition d'un autre port réduit en réalité les risques d'attaques, car les bots explorant le Web pour trouver une application Web défectueuse ne regardent généralement pas les autres ports.
Si un attaquant vise votre serveur, il sera très facile de découvrir le vrai port sur lequel nginx écoute (en scannant les ports ouverts).
L'utilisation de ces ports alternatifs est rare (à l'exception des serveurs proxy ou ... des serveurs Web alternatifs), je pense donc que vous pouvez l'utiliser sans crainte.
Cependant, rappelez-vous que l'utilisation d'un tel port alternatif empêchera les visiteurs "par défaut" de trouver votre site Web. Vous devrez donc indiquer au bon port (ou l'écrire sous forme de liens) le bon port en utilisant des URL telles que http: //votreserveur.com:81/ ...
Un autre élément à prendre en compte (par rapport aux deux fournis par Keltari) est que l’utilisation d’un port non standard peut entraîner l’ignorance de votre site Web par les robots d'exploration de moteurs de recherche tels que Google, sauf indication contraire de votre part.
Si votre intention est que votre site Web soit difficile à trouver pour tout le monde, à l'exception des personnes auxquelles vous fournissez un lien, utiliser un port non standard semblerait être favorable, mais sinon, j'utiliserais un port standard.
Ça dépend. Quelle est l'utilisation du "petit site"?
Si cela devait être utilisé par d'autres personnes, je recommanderais fortement d'utiliser des ports standard. Comme mentionné dans la plupart des réponses, l'utilisation d'un port non standard nécessite que le port soit spécifié par l'utilisateur (par exemple, pour le port 81 -> yoursite.com: 81). Si vous utilisez un port standard, le navigateur déduit le port du protocole (http, https). http: // est normalement le port 80 et https: // est le port 443, sauf substitution. Je recommande fortement d'utiliser des ports standard. Bien sûr, vous POUVEZ mettre la seule entrée d'une maison dans la cour, mais comment les visiteurs sauront-ils qu'elle est là?
Si vous utilisez uniquement un site de test, vous devez vous poser deux questions:
TL; DR:
Vous pouvez utiliser un serveur http sur n’importe quel port, mais il sera difficile pour vos internautes, les utilisateurs, de se souvenir du port.
Cela réduira le risque d'attaques ou de brèches, mais il y a aussi d'autres moyens, tels que la sécurisation de votre serveur et le maintien du serveur HTTP sur le port 80.