Ich versuche:
$ ssh eric@myserver
wobei myserver
ist ein Computer im Intranet. Ich kann myserver
pingen oder auf HTTP an Port 8080 usw. antworten, aber wenn ich ssh
, ich erhalte
ssh: connect to host myserver port 22: Connection refused
Ich verwende Ubuntu 10.
ps -ax
, wie vorgeschlagen, ergibt:
eric@Isaiah:~$ ps -ax | grep ssh Warning: bad ps syntax, perhaps a bogus "-"? See http://procps.sf.net/faq.html 1641 ? Ss 0:04 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session gnome-session 18376 pts/3 S+ 0:00 grep --color=auto ssh
Antwort
Sie haben keine Ein SSH-Daemon wird ausgeführt. Wenn Sie sich die Ausgabe des Befehls ps ax
ansehen, sehen Sie, dass die einzigen zwei Prozesse mit „ssh“ in der Beschreibung ssh-agent
(was etwas völlig anderes macht als sshd
) und den grep ssh
-Prozess, mit dem Sie die Ausgabe von ps
.
Je nachdem, welche Distribution installiert ist, müssen Sie möglicherweise den ssh
-Server installieren oder ausführen, der normalerweise als
oder sshd
abhängig von Ihrem Paketmanager.
Antwort
Schritte zum Debuggen des obigen Problems:
-
Verwenden Sie das Tool
nmap
, um festzustellen, welche Ports auf diesem Server geöffnet sind .nmap
ist ein Port-Scanner. Da es möglich ist, dass der SSH-Server auf einem anderen Port ausgeführt wird.nmap
gibt Ihnen eine Liste der geöffneten Ports.$ nmap myserver
2. Jetzt können Sie überprüfen, welcher Server an einem bestimmten Port ausgeführt wird. Angenommen, in der Ausgabe von nmap ist Port 2424 geöffnet. Jetzt können Sie mithilfe des Tools nc (netcat) feststellen, welcher Server auf 2424 ausgeführt wird.
$ nc -v -nn myserver portno
Angenommen, die Ausgabe des 2424-Ports lautet:
myserver 2424 open SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu5
Dies bedeutet, dass ssh auf 2424 ausgeführt wird.
Ändern Sie die Portnummer im obigen Befehl weiter und suchen Sie nach allen Ports, die von nmap geöffnet sind.
Antwort
Das bedeutet, dass entweder der SSH-Server auf diesem Computer nicht ausgeführt wird oder die Firewall SSH nicht durchlässt. Sie können überprüfen, ob ssh mit „ps -ax | grep ssh“ ausgeführt wird.
Kommentare
- Bearbeitete Frage, um die Ergebnisse von
ps -ax
. Ich bin mir nicht sicher, was es bedeutet. - Es bedeutet, dass
ssh
nicht ausgeführt wird. - Seltsam. Ich ' bin mir nicht sicher, warum Sie jetzt zweimal Hilfe angeboten haben, die nicht wirklich hilfreich ist. Zuerst schlagen Sie einen Befehl vor, mit dem Sie überprüfen können, ob ssh ausgeführt wird, ohne mir zu sagen, wie die Ergebnisse zu interpretieren sind. Anschließend geben Sie die minimale Interpretation dieser Ergebnisse an, ohne einen Hinweis darauf zu geben, wie Sie zu dieser Interpretation gekommen sind oder welche Maßnahmen angemessen sein könnten. Ich ' bin mir nicht sicher, ob Sie versuchen, mir zu helfen, meine Erfahrung falsch einschätzen oder ob Sie versuchen, meine Unwissenheit hervorzuheben.
- The Die Liste der Prozesse enthält keinen
sshd
-Prozess, was bedeutet, dasssshd
nicht ausgeführt wird. Die Lösung besteht darin,sshd
zu starten.
Antwort
Die Die beiden vorherigen Optionen sind gut. Sie können auch die Argumente -v
oder -vv
verwenden.
$ ssh -vv eric@myserver
Antwort
Ich war auch mit diesem Problem konfrontiert, aber in einer VirtualBox-Umgebung müssen wir die IP-Adresse so einstellen, dass sie sich im selben LAN befindet Segment; Beispiel:
Auf meinem Hostcomputer öffne ich cmd
und gebe ipconfig
ein. Ich erhalte 100.2.2.1 (zum Beispiel).
In der virtuellen Maschine müssen wir also die Adresse der VM in /etc/hosts
auf einen Wert wie 100.2.2.3 setzen Schauen Sie sich die endgültige Nummer an und bouncen Sie die virtuelle Maschine. Konfigurieren Sie das Netzwerk jedoch vor dem Start der virtuellen Maschine in den Einstellungen der virtuellen Maschine. Daher müssen Sie den Netzwerkadapter auf Bridge-Verbindung einstellen.
All dies befindet sich in einer Solaris-Umgebung.