Jeg har en Ubuntu 10.04-serveropsætning eksternt, som jeg konfigurerer et stykke tid tilbage. Mens jeg registrerede brugernavnet og adgangskoden, ser det ud til at jeg har været klog og ændret den sædvanlige ssh-port fra 22 til … noget andet.
Hvordan finder jeg ud af, hvad den port kan være?
Jeg har adgang til serveren via hostingfirmaets bagdør, så jeg kan udføre, hvad der er behov for Unix-kommandoer – men jeg kan ikke logge på ved hjælp af en normal kitteskal på min maskine.
Kommentarer
Svar
Kontroller først konfigurationsfilen, hvilken port der er konfigureret:
$ sudo grep Port /etc/ssh/sshd_config Port 22
Genstart derefter ssh
for at sikre, at den indlæser den konfiguration, du lige har set eller finder ud af på hvilken port ssh
kører:
$ 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
Det “er normalt ssh
kører på port 22.
Kommentarer
- Bare en note: Jeg tror ikke ' jeg tror ikke du har brug for sudo
- I den første kommando har du brug for
sudo
, fordisshd
konfigurationsfilen normalt ikke er verdenslæsbar. I det andet har du brug forsudo
for at kunne løseProgram name
, ellers kan du kun se navnet på de processer, der kører under dine egne bruger. - Jeg er enig med @piertoni, du behøver ikke ' at køre denne kommando med " SUDO ".
Svar
Hvis du har adgang til serveren på andre måder, skal du bare køre:
$ sudo grep Port /etc/ssh/sshd_config Port NNN
Det vil returnere en linje som vist ovenfor, hvor NNN
være den havn, du valgte.
Svar
Den nemmere måde er bare at se på SSH-serverens konfigurationsfiler:
➜ ~ sudo grep Port /etc/ssh/sshd_config Port 22
Der kontrolleres også for lytteporte pr. proces med lsof
:
sudo lsof -Pi | grep ssh
eller andre kommandoer med havnefortegnelse som netstat -lntu
.
Svar
Hvis du har ikke loginadgang til serveren, du kan finde SSH-porten ved hjælp af nmap
“s” version scan “-funktionen:
nmap -sV -p- <insert target"s IP here>
Indstillingen -sV
betyder “version scan”, og -p-
betyder “scan alle porte”. Hvis du ” har en god forbindelse og er sikker på, at du ikke forstyrrer en persons firewall eller IDS, kan du tilføje -T5
til “scan så hurtigt som muligt”. Resultaterne vil se sådan ud:
PORT STATE SERVICE VERSION 1422/tcp open ssh (protocol 2.0)
Svar
Hvis du ikke “t har adgang til serverens konsol, skal du undersøge alle porte fra en fjern vært. Disse hjælpeprogrammer er som nmap
, men netværkslaget skal videresende trafik til den specifikke kombination af vært (IP-adresse) OG port.
Svar
$ 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
.