Hvordan finder jeg ud af, hvilken port jeg skal logge på med SSH?

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

  • Dette er sandsynligvis fjollet, og du har allerede gode svar, men hvis du tidligere har oprettet forbindelse, kan du kontrollere din terminalhistorik og / eller ~/.ssh/config.

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, fordi sshd konfigurationsfilen normalt ikke er verdenslæsbar. I det andet har du brug for sudo for at kunne løse Program 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 

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *