A voir également:
- Ssh port 22
- Port 22 - Meilleures réponses
- 22/tcp closed ssh - Meilleures réponses
- [ssh] pb de connexion serveur ssh, port 22 ✓ - Forum - Linux / Unix
- Sécuriser son accès SSH - Conseils pratiques - SSH
- SSH: port 22 :connection refused ✓ - Forum - Linux / Unix
- Connection ssh port 22 ✓ - Forum - Linux / Unix
- Ouvrir port 22 - Forum - Windows
11 réponses
kmf31
- Messages postés
- 1564
- Date d'inscription
- mercredi 30 mars 2005
- Statut
- Contributeur
- Dernière intervention
- 22 juin 2007
Si on lance sshd manuellement il faut le faire avec un chemin absolu:
Soit:
ou soit:
(ca depend de ton system lequel des deux cas est bon)
ou si on veut faire avec l'option "-d", alors:
soit:
(apres verifier avec: "ps aux | grep sshd" si ca tourne effectivement!).
Bien sur il faut etre root pour le faire (alors ne pas oublier de se connecter en root avec "su -" suivi du mot pass). De plus il faut bien sur aussi que le le sshd soit bien installe sur ton systeme. Si ni "/usr/sbin/sshd" ni "/sbin/ssdh" ne marche ce n'est pas installe et tu dois te debrouiller pour l'installer, probablement le machin apt-get ... en Debian (la je ne connais pas les details).
Une fois le sshd marche on peut le tester simplement avec:
(ici en tant qu'utilisateur simple et pas root !!!) et ca doit te demdander ton mot de passe et apres tu auras un login vers ta propre machin et comme tu ne sors pas te ta machine (c'est seulement une session ssh de ta machine vers la meme machine) ca doit meme marcher si le pare feu n'est pas encore bon (le machin avec iptables).
Une fois ca marche tu dois te debrouiller pour ouvir le pare feu, par exemple avec la commande donne dans <2> de lami20j ou par ton logiciel pare feu que tu utilises (shorewall, firestarte, ce que tu as installe). Ton affiche de <3> n'est pas bien lisible. Je crois ton pare feu semble ouvert mais je ne suis pas sur.
Sinon avec la commande:
tu peux completement ouvrir le sshd pour le par feu mais en effet, il est peut-etre mieux de ne le faire que pour une IP, par exemple:
ca ouvre pour ton sous-reseau 192.168.0.x avec x=1, 2, etc.
(PS: il faut faire "-I" et pas "-A" pour mettre la regle au debut et pas a la fin sinon elle ne sert a rien car ce serait derrier la derniere regle DROP).
excuse moi mais je suis un novice
Avec tout respect pour Debian, si tu es debutant qui a de problemes pour la maitrise elementaires des lignes de commandes ce n'est pas forcement le bon choix compare a Mandriva, Ubunto etc. Notamment en Mandriva l'activation de ssh peut se faire en menu comme l'ouverture du pare feu.
Sinon pour les lignes de commandes je te conseille tres vivement de bien etudier ca:
http://doc.mandrivalinux.com/MandrakeLinux/101/fr/Command-Line.html
C'est une doc qui est universelle pour toute distribution de Linux. Il faut vraiement que tu comprenne bien comment ca foncitonne avec les commandes, PATH, chemin absolu, les choses qu'il faut faire en root, etc. Sinon tu vas te battre pour de choses qui ne sont pas pertinentes pour ton probleme. Normalement de faire fonctionner sshd c'est tres facile (simplement lancer avec "/usr/sbin/sshd" et c'est ca!).
Soit:
/usr/sbin/sshd
ou soit:
/sbin/sshd
(ca depend de ton system lequel des deux cas est bon)
ou si on veut faire avec l'option "-d", alors:
/usr/sbin/sshd -d
soit:
/sbin/sshd -d
(apres verifier avec: "ps aux | grep sshd" si ca tourne effectivement!).
Bien sur il faut etre root pour le faire (alors ne pas oublier de se connecter en root avec "su -" suivi du mot pass). De plus il faut bien sur aussi que le le sshd soit bien installe sur ton systeme. Si ni "/usr/sbin/sshd" ni "/sbin/ssdh" ne marche ce n'est pas installe et tu dois te debrouiller pour l'installer, probablement le machin apt-get ... en Debian (la je ne connais pas les details).
Une fois le sshd marche on peut le tester simplement avec:
ssh localhost
(ici en tant qu'utilisateur simple et pas root !!!) et ca doit te demdander ton mot de passe et apres tu auras un login vers ta propre machin et comme tu ne sors pas te ta machine (c'est seulement une session ssh de ta machine vers la meme machine) ca doit meme marcher si le pare feu n'est pas encore bon (le machin avec iptables).
Une fois ca marche tu dois te debrouiller pour ouvir le pare feu, par exemple avec la commande donne dans <2> de lami20j ou par ton logiciel pare feu que tu utilises (shorewall, firestarte, ce que tu as installe). Ton affiche de <3> n'est pas bien lisible. Je crois ton pare feu semble ouvert mais je ne suis pas sur.
Sinon avec la commande:
iptables -I INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
tu peux completement ouvrir le sshd pour le par feu mais en effet, il est peut-etre mieux de ne le faire que pour une IP, par exemple:
iptables -I INPUT -i eth0 -p tcp --dport 22 -s 192.168.0.0/24 -j ACCEPT
ca ouvre pour ton sous-reseau 192.168.0.x avec x=1, 2, etc.
(PS: il faut faire "-I" et pas "-A" pour mettre la regle au debut et pas a la fin sinon elle ne sert a rien car ce serait derrier la derniere regle DROP).
excuse moi mais je suis un novice
Avec tout respect pour Debian, si tu es debutant qui a de problemes pour la maitrise elementaires des lignes de commandes ce n'est pas forcement le bon choix compare a Mandriva, Ubunto etc. Notamment en Mandriva l'activation de ssh peut se faire en menu comme l'ouverture du pare feu.
Sinon pour les lignes de commandes je te conseille tres vivement de bien etudier ca:
http://doc.mandrivalinux.com/MandrakeLinux/101/fr/Command-Line.html
C'est une doc qui est universelle pour toute distribution de Linux. Il faut vraiement que tu comprenne bien comment ca foncitonne avec les commandes, PATH, chemin absolu, les choses qu'il faut faire en root, etc. Sinon tu vas te battre pour de choses qui ne sont pas pertinentes pour ton probleme. Normalement de faire fonctionner sshd c'est tres facile (simplement lancer avec "/usr/sbin/sshd" et c'est ca!).
crabs
- Messages postés
- 908
- Date d'inscription
- lundi 18 avril 2005
- Statut
- Membre
- Dernière intervention
- 3 août 2008
Salut,
Fournit ici ton 'iptables -L -vn' et 'lsmod | grep ip'.
iptable -L ne me donne rien au niveau ssh ni du port 22!!
Il faut surement que "iptables" autorise une connexion sur le port 22 en tcp.
Fournit ici ton 'iptables -L -vn' et 'lsmod | grep ip'.
iptable -L ne me donne rien au niveau ssh ni du port 22!!
Il faut surement que "iptables" autorise une connexion sur le port 22 en tcp.
jujuone
- Messages postés
- 24
- Date d'inscription
- samedi 17 décembre 2005
- Statut
- Membre
- Dernière intervention
- 9 septembre 2009
merci beaucoup j'ai deja tester le mode debug (juste apres que j'ai poster me rep ,suffisai de regarder le manuel de open ssh)
sinon
tout a l'air de bien fonctionner sauf peut etre une ligne :
sinon "ps aux | grep sshd" me donne maintenant :
ms qd je tape ssh localhost avec un autre usr rien en ce passe: le prompt va la ligne et je dosi faire "ctrl-d" pour revenir au shell
ps: j'aime bien me prendre la tete sur des probleme comme ca, car cela me premet de parfaire ma connaisance en linux (d'ailleur il y a un mois je ne connaisais rien en linux et j'ai un dns des serveurs mail et apache qui fonctionnent, manque plus que ssh pour que je sois comblé )
merci encore
sinon
tout a l'air de bien fonctionner sauf peut etre une ligne :
socket: Address family not supported by protocol
sinon "ps aux | grep sshd" me donne maintenant :
root tty3 T 11:03 0:00 /usr/sbin/sshd -ddd root tty3 R+ 12:08 0:00 grep sshd
ms qd je tape ssh localhost avec un autre usr rien en ce passe: le prompt va la ligne et je dosi faire "ctrl-d" pour revenir au shell
ps: j'aime bien me prendre la tete sur des probleme comme ca, car cela me premet de parfaire ma connaisance en linux (d'ailleur il y a un mois je ne connaisais rien en linux et j'ai un dns des serveurs mail et apache qui fonctionnent, manque plus que ssh pour que je sois comblé )
merci encore
kmf31
- Messages postés
- 1564
- Date d'inscription
- mercredi 30 mars 2005
- Statut
- Contributeur
- Dernière intervention
- 22 juin 2007
Pour se connecter en changeant l'utilisateur, disons vers "toto", tu peux aussi essayer:
ou
ou xx.xx.xx.xx est ton numero IP internet (a voir avec "/sbin/ifconifg").
Ca permet te connecter sous "toto" (bien sur ce n'est qu'un exemple, si tu as un autre nom utilisateur qui existe dans ton systeme tu prendras ca!). Si on ne met pas "toto@" devant ca prend par default l'utilisateur actuel.
Tu peux aussi regarder les messages du noyau apropos de ssh dans le fichier /var/log/messages. Par exemple pour regarder les dernieres 50 lignes:
ou pour regarder les dernieres 20 lignes contenant le mot "ssh":
Que donne la commande
? Ca donne une affiche mieux lisible pour ton pare feu. Fais ici une copie-coller de ca.
Est-ce que tu as un 2eme pcs pour tester la connexion ssh ? Par exemple tu peux suivre dans une fenetre sur le pc debian les messages noyau en directe par:
ca affiche la fin de ce fichier en permanence meme avec les nouvelles lignes qui s'ajoutent apres (il faut faire ^C pour sortir de ce mode).
Apres tu essaies soit sur une autre fenetre "ssh localhost" ou sur un autre pc "ssh <numero_IP_pc_debian>" (ou avec "putty" si c'est un pc windows, "putty" est un client ssh pour Windows, facilement a trouver avec google) tout en bien observant la 1ere fenetre ou tu as tape: "tail -f ...".
Un complement: Peut-etre il te faut ajouter dans le fichier /etc/hosts.allow une ligne de genre:
ou:
ou:
ou xx.xx.xx.xx est l'IP a ouvrir. Ce truc est comme une deuxieme couche pare feu. Ce n'est pas sur si sshd utilise ce fichier mais si c'est compile avec le machin "libwrapper" et si c'est un paquet debian tout pret c'est bien possible. Normalement, par defaut si on compile sshd soi meme (en installant un tar) ca n'utilise pas ce fichier /etc/hosts.allow. Il faut essayer.
ssh toto@localhost
ou
ssh toto@xx.xx.xx.xx
ou xx.xx.xx.xx est ton numero IP internet (a voir avec "/sbin/ifconifg").
Ca permet te connecter sous "toto" (bien sur ce n'est qu'un exemple, si tu as un autre nom utilisateur qui existe dans ton systeme tu prendras ca!). Si on ne met pas "toto@" devant ca prend par default l'utilisateur actuel.
Tu peux aussi regarder les messages du noyau apropos de ssh dans le fichier /var/log/messages. Par exemple pour regarder les dernieres 50 lignes:
tail -50 /var/log/messages
ou pour regarder les dernieres 20 lignes contenant le mot "ssh":
grep ssh /var/log/messages | tail -20
Que donne la commande
/sbin/iptables-save
? Ca donne une affiche mieux lisible pour ton pare feu. Fais ici une copie-coller de ca.
Est-ce que tu as un 2eme pcs pour tester la connexion ssh ? Par exemple tu peux suivre dans une fenetre sur le pc debian les messages noyau en directe par:
tail -f /var/log/messages
ca affiche la fin de ce fichier en permanence meme avec les nouvelles lignes qui s'ajoutent apres (il faut faire ^C pour sortir de ce mode).
Apres tu essaies soit sur une autre fenetre "ssh localhost" ou sur un autre pc "ssh <numero_IP_pc_debian>" (ou avec "putty" si c'est un pc windows, "putty" est un client ssh pour Windows, facilement a trouver avec google) tout en bien observant la 1ere fenetre ou tu as tape: "tail -f ...".
Un complement: Peut-etre il te faut ajouter dans le fichier /etc/hosts.allow une ligne de genre:
sshd:127.0.0.1,192.168.0.0/24
ou:
ALL:127.0.0.1,192.168.0.0/24
ou:
sshd:xx.xx.xx.xx
ou xx.xx.xx.xx est l'IP a ouvrir. Ce truc est comme une deuxieme couche pare feu. Ce n'est pas sur si sshd utilise ce fichier mais si c'est compile avec le machin "libwrapper" et si c'est un paquet debian tout pret c'est bien possible. Normalement, par defaut si on compile sshd soi meme (en installant un tar) ca n'utilise pas ce fichier /etc/hosts.allow. Il faut essayer.
kmf31
- Messages postés
- 1564
- Date d'inscription
- mercredi 30 mars 2005
- Statut
- Contributeur
- Dernière intervention
- 22 juin 2007
Sur fedora j'ai désactiver mon firewall mais est-ce qu'il y a une facon de voir si fedora bloque le port 22?
Tu peux faire (en root) la commande: "iptables-save" pour afficher tes regles pare feu. La dedans on peut voir si le port 22 est fermee ou pas. Si tu ne sais pas lire ca fait un copier coller ici.
Et pourtant sur mon router il me semblais qu'il ny avais pas de port de bloquer mais je vais revérifier.
Si tu es derrier un routeur et si tu as un serveur ssh su ton pc Fedora sur lequel tu veux te connecter depuis l'exterieure il faut aussi rediriger le port 22 sur le routeur vers le PC Fedora (dans la config du routeur, typiquement une interface web). Notamment si tu as plusieurs PCs le routeur doit savoir a quel PC transmettre les requetes ssh qui arrivent depuis l'exterieur. Si tu ne rediriges pas le port 22 ca fait aussi pare feu effecti mais sur le routeur et ca ne suffit pas de seulement ouvrir le pare feu Fedora.
Tu peux faire (en root) la commande: "iptables-save" pour afficher tes regles pare feu. La dedans on peut voir si le port 22 est fermee ou pas. Si tu ne sais pas lire ca fait un copier coller ici.
Et pourtant sur mon router il me semblais qu'il ny avais pas de port de bloquer mais je vais revérifier.
Si tu es derrier un routeur et si tu as un serveur ssh su ton pc Fedora sur lequel tu veux te connecter depuis l'exterieure il faut aussi rediriger le port 22 sur le routeur vers le PC Fedora (dans la config du routeur, typiquement une interface web). Notamment si tu as plusieurs PCs le routeur doit savoir a quel PC transmettre les requetes ssh qui arrivent depuis l'exterieur. Si tu ne rediriges pas le port 22 ca fait aussi pare feu effecti mais sur le routeur et ca ne suffit pas de seulement ouvrir le pare feu Fedora.
ssh ???
Bonjour j'ai un petit souci sous ubuntu :
J'ai telecharger le packet ssh, installer et configurer mon sshd_config avec pour numero de port 2222 (disons).
Je suis en sudo.
Je restart mon ssh, -->[OK]
Je demare mon demon sshd, un petit "ps aux" ... tout est en ordre ( usr/sbin/sshd )
Je test :
ssh localhost --> erreur "port 22 : connection refused"
ssh localhost -p 2222 ---> + mot de passe ---->permission denied, please try again.
Mes question : pourquoi en test "localhost" tout simplement, il va chercher sur le port 22 par defaut, on ne peut pas modifier cela ?
Pourquoi sur mon port 2222 en local j'ai une erreur de permission et je ne peut pas me connecter a ma machine ??
Merci
J'ai telecharger le packet ssh, installer et configurer mon sshd_config avec pour numero de port 2222 (disons).
Je suis en sudo.
Je restart mon ssh, -->[OK]
Je demare mon demon sshd, un petit "ps aux" ... tout est en ordre ( usr/sbin/sshd )
Je test :
ssh localhost --> erreur "port 22 : connection refused"
ssh localhost -p 2222 ---> + mot de passe ---->permission denied, please try again.
Mes question : pourquoi en test "localhost" tout simplement, il va chercher sur le port 22 par defaut, on ne peut pas modifier cela ?
Pourquoi sur mon port 2222 en local j'ai une erreur de permission et je ne peut pas me connecter a ma machine ??
Merci
lami20j
- Messages postés
- 21331
- Date d'inscription
- jeudi 4 novembre 2004
- Statut
- Modérateur, Contributeur sécurité
- Dernière intervention
- 30 octobre 2019
Salut,
Ce n'est pas plutôt
Moi j'ai dans iptables une régle de genre
3847 tty1 S+ 0:00 grep ssh qui veut dire que ton daemon sshd n'est pas démarré
/etc/init.d/ssh start
Ce n'est pas plutôt
/etc/init.d/sshd start
Moi j'ai dans iptables une régle de genre
iptables -A INPUT -i eth0 -p tcp -s xxx.xxx.xxx.xxx -d 10.0.0.2 --dport 22 -j ACCEPTPour ps aux | grep ssh
3847 tty1 S+ 0:00 grep ssh qui veut dire que ton daemon sshd n'est pas démarré
[lamitest@localhost ~]$ ps aux | grep ssh root 1853 0.0 0.4 3368 1260 ? Ss 18:09 0:00 /usr/local/sbin/sshd lamitest 2648 0.0 0.2 3776 744 pts/0 R+ 18:36 0:00 grep ssh [lamitest@localhost ~]$
jujuone
- Messages postés
- 24
- Date d'inscription
- samedi 17 décembre 2005
- Statut
- Membre
- Dernière intervention
- 9 septembre 2009
alors voila ce que me donne "iptables -L -vn"
Pour "lsmod | grep ip"
et voila ce que donne le fichier : /var/log/auth.log :
merci encors en at de vos rep!
ps: "apt-get install --reinstall ssh-server " na rien changé
Chain INPUT (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 7538 422K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 0 0 LOG all -- !lo * 127.0.0.0/8 0.0.0.0/0 LOG flags 0 level 4 0 0 DROP all -- !lo * 127.0.0.0/8 0.0.0.0/0 63 25176 ACCEPT all -- eth0 * 0.0.0.0/0 255.255.255.255 28335 16M ACCEPT all -- eth0 * 0.0.0.0/0 192.168.0.4 1280 272K ACCEPT all -- eth0 * 0.0.0.0/0 0.0.0.0/0 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 chain FORWARD (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 chain OUTPUT (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 7538 422K ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT all -- * eth0 0.0.0.0/0 255.255.255.255 23306 2545K ACCEPT all -- * eth0 192.168.0.4 0.0.0.0/0 0 0 ACCEPT all -- * eth0 192.168.0.255 0.0.0.0/0 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flagd 0 level 4 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Pour "lsmod | grep ip"
ipt_LOG 6656 4 iptable_filter 2912 1 iptable_nat 7748 0 ip_nat 18612 1 iptable_nat ip_tables 20352 3 ipt_LOG, iptable_filter, iptable_nat ip_conntrack 48720 2 iptable_nat, ip_nat
et voila ce que donne le fichier : /var/log/auth.log :
Dec 19 11:29:00 localhost sshd[5781]: fatal: daemon() failed: Success
merci encors en at de vos rep!
ps: "apt-get install --reinstall ssh-server " na rien changé
crabs
- Messages postés
- 908
- Date d'inscription
- lundi 18 avril 2005
- Statut
- Membre
- Dernière intervention
- 3 août 2008
Salut,
Ca ne semble pas être un problème de firewall, ta configuration laisse
tout passer (si eth0 est ton interface réseau externe).
En revanche, ton démon ssh ne démare pas.
Lançes-le avec "sshd -d", (ça le lance en mode debug) et vérifies alors si
les messages d'erreur sont parlant.
A+, crabs
Ca ne semble pas être un problème de firewall, ta configuration laisse
tout passer (si eth0 est ton interface réseau externe).
En revanche, ton démon ssh ne démare pas.
Lançes-le avec "sshd -d", (ça le lance en mode debug) et vérifies alors si
les messages d'erreur sont parlant.
A+, crabs
krisdefou
- Messages postés
- 2
- Date d'inscription
- dimanche 19 février 2006
- Statut
- Membre
- Dernière intervention
- 19 février 2006
Salut, j'ai un probleme avec le port 22.
Mon serveur est sur fedora core 4 et j'ai un router.
Sur fedora j'ai désactiver mon firewall mais est-ce qu'il y a une facon de voir si fedora bloque le port 22?
Et pourtant sur mon router il me semblais qu'il ny avais pas de port de bloquer mais je vais revérifier.
Merci
Mon serveur est sur fedora core 4 et j'ai un router.
Sur fedora j'ai désactiver mon firewall mais est-ce qu'il y a une facon de voir si fedora bloque le port 22?
Et pourtant sur mon router il me semblais qu'il ny avais pas de port de bloquer mais je vais revérifier.
Merci