Jai une configuration de serveur Ubuntu 10.04 à distance que jai configurée il y a quelque temps. Pendant que jenregistrais le nom dutilisateur et le mot de passe, il me semble avoir été intelligent et avoir changé le port ssh habituel de 22 à … autre chose.
Comment puis-je savoir ce que ce port pourrait être?
Jai accès au serveur via la porte dérobée de la société dhébergement, donc je peux exécuter toutes les commandes Unix nécessaires – mais je ne peux pas me connecter en utilisant un putty shell normal sur ma machine.
Commentaires
Réponse
Vérifiez dabord sur le fichier de configuration quel port est configuré:
$ sudo grep Port /etc/ssh/sshd_config Port 22
Ensuite, redémarrez ssh
pour vous assurer quil charge la configuration que vous venez de voir ou découvrez sur quel port ssh
est en cours dexécution:
$ sudo netstat -tpln | egrep "(Proto|ssh)" Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12586/sshd
Cest « normal ssh
fonctionnant sur le port 22.
Commentaires
- Juste une remarque: je ne ' que vous avez besoin de sudo
- Dans la première commande, vous avez besoin de
sudo
car généralement le fichier de configurationsshd
nest pas lisible par tout le monde. Dans la seconde, vous avez besoin desudo
pour pouvoir résoudre leProgram name
, sinon vous ne pouvez voir que le nom des processus sexécutant sous le vôtre utilisateur. - Je suis daccord avec @piertoni, vous navez ' pas besoin dexécuter cette commande avec " SUDO ".
Réponse
Si vous avez accès au serveur par dautres moyens, exécutez simplement:
$ sudo grep Port /etc/ssh/sshd_config Port NNN
Cela renverra une ligne comme celle illustrée ci-dessus où NNN
être le port que vous avez choisi.
Réponse
Le moyen le plus simple consiste simplement à consulter les fichiers de configuration du serveur SSH:
➜ ~ sudo grep Port /etc/ssh/sshd_config Port 22
Il y a également une vérification des ports découte par processus avec lsof
:
sudo lsof -Pi | grep ssh
ou toute autre commande de liste de ports comme netstat -lntu
.
Answer
Si vous navez pas accès au serveur, vous pouvez trouver le port SSH en utilisant la fonction nmap
« s » version scan « :
nmap -sV -p- <insert target"s IP here>
Loption -sV
signifie « scan de version » et -p-
signifie « scanner tous les ports ». Si vous » Si vous avez une bonne connexion et êtes sûr que vous « ne perturberez pas le pare-feu ou lIDS de quelquun », vous pouvez ajouter -T5
pour « scanner aussi vite que possible ». Les résultats ressembleront à ceci:
PORT STATE SERVICE VERSION 1422/tcp open ssh (protocol 2.0)
Réponse
Si vous ne « Vous navez pas accès à la console du serveur, vous » devrez sonder tous les ports dun hôte distant. Ces utilitaires sont comme nmap
, mais la couche réseau doit relayer le trafic vers la combinaison spécifique dhôte (adresse IP) ET de port.
Réponse
$ sudo netstat -lntp [sudo] password for XXX: Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2799/sshd tcp6 0 0 :::22 :::* LISTEN 2799/sshd
~/.ssh/config
.