J'ai un petit réseau domestique et j'essaie d'équilibrer le besoin de sécurité et de commodité. Le moyen le plus sûr de sécuriser les serveurs Web internes est de se connecter uniquement à l'aide de VPN, mais cela semble exagéré pour protéger une interface Web distante de DVR (par exemple).
En tant que compromis, serait-il préférable d'utiliser de très grands numéros de ports? (par exemple, cinq chiffres jusqu'à 65531)
J'ai lu que les scanners de ports ne scannent généralement que les 10 000 premiers ports, donc l'utilisation de numéros de port très élevés est un peu plus sécurisée.
Est-ce vrai?
Existe-t-il de meilleures façons de protéger les serveurs Web? (ie. web guis pour les applications)
security
server-security
ports
SofaKng
la source
la source
Réponses:
Beaucoup de gens le croient. Je ne.
C'est peut-être un peu plus sûr, mais pas beaucoup. Les ports peu numérotés sont plus courants, donc certains scanners y regarderont en premier.
Si j'étais un pirate, je scannerais d'abord les ports hauts, juste pour attraper les gens qui comptent sur cette méthode pour la sécurité. Les personnes qui dépendent de la sécurité par l'obscurité ont probablement une mauvaise compréhension de la sécurité et sont plus susceptibles d'oublier d'utiliser d'autres méthodes de sécurité. Par conséquent, ces services pourraient être plus vulnérables et plus faciles à casser.
Certains scanners exploitent cette croyance et commencent en haut et progressent dans la liste. D'autres analyses choisiront des ports aléatoires sur toute la plage, de sorte que tous les ports ont une chance égale d'être analysés.
Allez-y et testez-le vous-même à l'aide de NMAP . Exécutez une analyse nmap sur les ports 1 à 10 000 et recherchez un serveur HTTP, et comparez cela à une analyse qui analyse tous les ports 1-65, xxx. Vous verrez que la différence est généralement de 3 à 10 minutes. Si je fais un scan détaillé en utilisant quelque chose comme Nessus, la différence est parfois de 20 à 60 minutes.
Un bon cracker est un cracker patient. Ils attendront.
la source
L'utilisation de numéros de port impairs n'est pas du tout une sécurité, sauf si vous êtes en train de vous permettre d'exécuter votre application en tant qu'utilisateur non root.
Ce genre de chose peut être considéré comme une sécurité par l'obscurité, mais ce n'est pas vraiment de la sécurité.
la source
Vous pouvez également utiliser un tunnel ssh si vous utilisez Linux aux deux extrémités:
ssh -f -N -L 9090:localhost:9090 user@remote-host
Par exemple, c'est ce que j'utilise pour transférer le port 9090 sur l'hôte distant vers mon port local 9090
cherokee-admin
, et j'utilise des configurations similaires pour d'autres interfaces graphiques Web. Vous pouvez protéger les applications de cette manière en spécifiant dans la configuration de l'application qu'elles ne s'exécutent que sur localhost, c'est-à-dire sur127.0.0.1
. De cette façon, ils ne sont pas accessibles de l'extérieur, mais vous pouvez les transmettre avecssh
. Recherchezman ssh
d'autres options à l'aide de la redirection de port (y compris X, ce qui pourrait résoudre votre problème d'une autre manière.)Cela peut être un moyen approprié pour atteindre votre objectif sans installer / configurer de logiciel supplémentaire, selon votre configuration.
la source
Si votre pare-feu le permet, vous pouvez d'abord effectuer l'authentification au niveau du pare-feu, si la complexité de vos mots de passe est suffisante, cela devrait assurer la sécurité des services exposés. vous pouvez également utiliser le tunneling SSL en utilisant par exemple stunnel et l'authentification mutuelle.
Compte tenu du fait que l'utilisation d'un nombre de ports plus élevé est plus sécurisée, d'une certaine manière, peut-être en référence aux bots analysant votre IP et essayant certains exploits, mais si quelqu'un veut vraiment breack, utiliser des numéros de ports plus élevés n'offrira pas une sécurité accrue.
la source