Telnet på Linux Server (Norsk)

Jeg vil vite om det er nødvendig å ha telnet aktivert på begge sider av maskiner for å få telnet-tilkobling.

Her er problemet: Jeg prøver å telnet noen offentlig IP på port 80 fra en Linux-webserver (Red Hat).

Denne offentlige IP-en har HTTP (80) aktivert på den. Jeg » Jeg er ikke sikker på om telnet er aktivert, men eieren sier at det er det.

På min Linux-server er HTTP (80) aktivert, men ikke telnet. I stedet er SSH aktivert.

Når jeg telnet fra min Linux-server: telnet PublicIP 80 står det:

Trying "PublicIP"... Connected to "PublicIP" ("PublicIP"). Escape character is "^]". Connection closed by foreign host

Må jeg aktivere telnet på serveren min for at den skal fungere? Fordi det ikke er noe problem i den andre enden som bekreftet av andre kilder. Offentlig IP: 220.226.190.180

Forklar hvordan jeg kan få det til å fungere. Hvis jeg må aktivere telnet på Linux-serveren min, vennligst del kommandoen og metoden for å gjøre det.

Kommentarer

  • som vi vet telnet-port er det ikke sikkert så de fleste fw blokkerer det, er du sikker at det ikke er ‘ t noen brannmur (på den andre maskinen) som blokkerer telnetport.
  • Det ser ut til at du allerede har gjort det du ville … Du telnet ‘ redigert til den eksterne HTTP-tjenesten, og siden du ikke ‘ ikke skrev inn noe, lukket det tilkoblingen. Du trenger ikke å aktivere Telnet Service (Server) på hvilken som helst maskin. Du bruker telnet-klienten. Du kan også bruke curl / wget / nc / hva som helst for å gjøre det samme.
  • Det er stor sjanse for at det er det. Men det er tillatt til hvem som helst. til og med jeg kan telnet det fra hjemmenettverket på Windows-PCen min, men det er fra kontoret mitt bl.a. m vender. alt er tillatt på vår side av brannmur fra denne serveren.
  • @Networker sikkerhetsproblemet er (i denne sammenheng) bare tull. telnet brukes som klient for å teste tilgjengeligheten til en tjeneste – og NEI, telnet-porten er ikke involvert.

Svar

Du prøver å teste tilkobling til en ekstern webserver med telnet? Da, nei: du trenger ikke telnet-servere. Den eksterne HTTP-serveren venter på kommandoer, som angitt av escape-tegnet. Når det går ut å vente, er forbindelsen stengt. Så …

telnet <hostname or ip address> 80

Skriv deretter inn noen HTTP-kommandoer:

GET / HTTP/1.1 host: <fqdn> 

Bruk FQDN til en vert som den eksterne webserveren er konfigurert til å betjene. Det returnerer standarddokumentet med HTTP-kommandoene ovenfor. Vær oppmerksom på den nøyaktige kommentaren fra 0xAF.

Kommentarer

  • OP-en må legge inn en tom linje etter innspillet for å kunne hente svar. De fleste HTTP-servere tillater HTTP / 1.0-kommunikasjon. Hvis OP bare prøver å teste HTTP-tjenesten, kan han bare skrive » GET / HTTP / 1.0 » og trykke enter-tasten To ganger.

Svar

For å svare på spørsmålet ditt i første setning: Telnet er to ting: a applikasjon på serversiden (daemon) og et applikasjon på klientsiden.

Når en telnet-server kjører, lytter datamaskinen på TCP-port 23 for tilkoblinger fra en telnet-klient.

En telnetklient hører ikke på noen porter, men prøver å koble til TCP-port 23 (som standard) på en datamaskin. Hvis den kobles riktig, kan brukeren bli bedt om å logge på og deretter ha en interaktiv skalløkt. Fordi telnet kommuniserer som standard ved hjelp av ren, ukryptert tekst (inkludert passordet ditt!), Anbefales dette IKKE.

Imidlertid, som Christopher sier i sitt utmerkede svar, hvis du virkelig prøver å teste en http-server ved hjelp av telnet, kan du bruke telnet-programmet til det, og du trenger ikke en telnet-server.

Telnet-klientprogrammet kan brukes til å koble til andre TCP-porter enn standardport 23.

telnet <hostname> <TCP port> 

Fordi http-servere vanligvis lytter på port 80, kan du bruke telnet-programmet til å koble til port 80, og se hva http-serveren sender til nettlesere når de kobler til:

telnet google.com 80 

Det vil koble til, men du må da skrive inn følgende tekst, som bare er en enkel http-forespørsel (saken er viktig):

GET / HTTP/1.1 host: test.com 

Trykk deretter på enter to ganger.

Du vil så se alt det rå HTML-koden som google serverer til nettlesere. Du kan bruke det samme konseptet til å teste egne http-servere.

Svar

telnet kan brukes til å teste HTTP-protokollen, men det finnes verktøy som er bedre egnet for oppgaven. Jeg anbefaler personlig curl. Det er egentlig et kommandolinjeprogram som er i stand til å samhandle med et bredt utvalg av protokoller (HTTP, HTTPS, FTP …). Hvis du bruker curl i stedet for telnet for å teste en HTTP-server, vil du spare deg for å måtte skrive inn HTTP-forespørsler manuelt, og det vil gi deg mer informasjon samlet.Noen funksjoner du kan finne nyttige for din nåværende situasjon er:

Koble til en vert ved hjelp av HTTP og be om standarddokumentet:

curl <public ip> 

Koble til en vert ved hjelp av HTTP og se bare HTTP-overskriftene:

curl -I <public ip> 

Koble til verten ved hjelp av HTTP, se bare HTTP-overskriftene og følg 3xx-viderekoblinger:

curl -LI <public ip> 

curl har bokstavelig talt dusinvis av alternativer. Jeg anbefaler å bruke curl --help for et raskt sammendrag og man curl eller curl --manual for mer detaljert informasjon.

Svar

Hvis du ikke har telnet eller krøll, kan du også bruke cat og proc dir til å koble til en port:

cat < /dev/tcp/HOST/PORT 

hentet fra denne artikkelen (på spansk) .

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *