Le serveur que j'utilise est Ubuntu 10.10. Pour assurer la sécurité, je souhaite modifier la bannière que le serveur envoie au client.
Si je telnet à mon hôte sur le port 22, il me dit la version exacte de SSH que j'utilise (SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu4). La situation est la même avec MySQL et Cyrus.
Aucune suggestion? Au moins pour SSH?
Merci
Réponses:
Presque universellement, les bannières d'identification font partie du code compilé et n'ont pas d'options de configuration pour les modifier ou les supprimer. Vous devrez recompiler ces logiciels.
la source
Bien qu'il soit extrêmement difficile de masquer le numéro de version de votre démon SSH, vous pouvez facilement masquer la version linux (Debian-3ubuntu4)
Ajoutez la ligne suivante à
/etc/ssh/sshd_config
Et redémarrez votre démon SSH:
/etc/init.d/ssh restart
ouservice ssh restart
la source
Les cacher ne sécurisera pas votre serveur. Il existe de nombreuses autres façons de détecter ce que votre système exécute. Pour SSH en particulier, l'annonce de version fait partie du protocole et est obligatoire.
http://www.snailbook.com/faq/version-string.auto.html
la source
Je suis sûr que vous ne pouvez pas réellement changer l'annonce de version.
Les meilleurs moyens de sécuriser sshd sont:
Les trois premiers peuvent être effectués en modifiant / etc / sshd_config
Le quatrième dépend du logiciel de pare-feu que vous utilisez.
la source
Comme indiqué ci-dessus, la modification d'un numéro de version est
Ce que je suggère, c'est l'implémentation de Port Knocking. C'est une technique assez simple pour masquer tout ce qui s'exécute sur votre serveur.
Voici une bonne implémentation: http://www.zeroflux.org/projects/knock
Voici comment je l'ai implémenté sur mes serveurs (autres numéros) pour ouvrir SSH uniquement aux personnes qui connaissent «le coup secret»:
Cela donnera une fenêtre de 5 secondes dans laquelle les 3 paquets SYN doivent être reçus dans le bon ordre. Choisissez des ports éloignés les uns des autres et non séquentiels. De cette façon, un analyseur de port ne peut pas ouvrir le port par accident. Ces ports n'ont pas besoin d'être ouverts par iptables.
Le script que j'appelle est celui-ci. Il ouvre un port particulier pendant 5 secondes pour l'IP envoyant les paquets SYN.
L'envoi des paquets SYN peut être très pénible donc j'utilise le script pour me connecter au SSH de mes serveurs:
(C'est assez évident ce qui se passe ici ...)
Une fois la connexion établie, le port peut être fermé. Astuce: utilisez l'authentification par clé. Sinon, vous devez être très rapide pour taper votre mot de passe.
la source