Jeg prøver:
$ ssh eric@myserver
hvor myserver
er en maskine i intranettet. Jeg kan pinge myserver
eller svare på HTTP på port 8080 osv., men når jeg prøver ssh
, jeg får
ssh: connect to host myserver port 22: Connection refused
I “m ved hjælp af Ubuntu 10.
ps -ax
, som foreslået giver:
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
Svar
Du har ikke en SSH-dæmon, der kører. Hvis du ser på output fra kommandoen ps ax
, ser du, at de eneste to processer med “ssh” i beskrivelsen er ssh-agent
(som gør noget helt andet end sshd
) og grep ssh
-processen, som du bruger til at filtrere output fra ps
.
Afhængigt af hvilken installation der er installeret, skal du muligvis installere eller køre ssh
-serveren, normalt kaldet
eller sshd
afhængigt af din pakkehåndtering.
Svar
Trin til fejlfinding af ovenstående problem:
-
Brug
nmap
værktøj til at vide, hvilke porte der er åbne på den server .nmap
er en havnescanner. Da det kan være muligt, at ssh-server kører på en anden port.nmap
giver dig en liste over åbne porte.$ nmap myserver
2. Nu kan du kontrollere, hvilken server der kører på en given port. Antag, at i porten af nmap er port 2424 åben. Nu kan du se, hvilken server der kører på 2424 ved hjælp af værktøjet nc (netcat).
$ nc -v -nn myserver portno
Antag, at output fra 2424-port er:
myserver 2424 open SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu5
Dette betyder, at ssh kører på 2424.
Fortsæt med at ændre portno i ovenstående kommando og kontroller for alle de porte, der er anført åbne ved nmap.
Svar
Det betyder, at enten ssh-serveren ikke kører på denne maskine, eller firewallen ikke tillader ssh igennem. Du kan kontrollere, om ssh kører med “ps -ax | grep ssh”.
Kommentarer
Svar
de to foregående muligheder er gode. Du kan også bruge argumenterne -v
eller -vv
.
$ ssh -vv eric@myserver
Svar
Jeg stod også over for dette problem, men i et VirtualBox-miljø, så for at løse det er vi nødt til at indstille IP-adressen til at være i samme LAN segment; for eksempel:
På min værtsmaskine åbner jeg cmd
og skriver ipconfig
. Jeg får 100.2.2.1 (for eksempel).
Så i den virtuelle maskine skal vi indstille VM-adressen i /etc/hosts
til en værdi som 100.2.2.3 , kig ind i det endelige nummer, og hopp over den virtuelle maskine, men inden opstart konfigurerer den virtuelle maskine netværket i indstillingerne på den virtuelle maskine, så vi skal indstille netværksadapteren i broforbindelse. p> Alt dette er i et Solaris-miljø.
ps -ax
. Ikke sikker på, hvad det betyder.ssh
kører ikke.sshd
-proces, hvilket betyder atsshd
ikke kører. Løsningen er at startesshd
.