Linux 서버의 텔넷

텔넷 연결을 위해 시스템 양쪽에서 텔넷을 활성화해야하는지 알고 싶습니다.

문제는 다음과 같습니다. Linux 웹 서버 (Red Hat)의 포트 80에서 일부 공용 IP를 텔넷으로 연결하려고합니다.

이 공용 IP에는 HTTP (80)가 활성화되어 있습니다. 텔넷이 활성화되어 있는지 확실하지 않지만 소유자가 말합니다.

내 Linux 서버에서 HTTP (80)는 활성화되지만 텔넷은 활성화되지 않습니다. 대신 SSH가 활성화되어 있습니다.

내 Linux 서버에서 Telnet으로 연결하면 : telnet PublicIP 80 다음과 같이 표시됩니다.

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

내 서버에서 텔넷을 활성화해야 작동합니까? 다른 소스에서 확인한 것처럼 다른 쪽 끝에 문제가 없기 때문입니다. 공용 IP : 220.226.190.180

어떻게 작동하는지 설명해주세요. Linux 서버에서 텔넷을 활성화해야하는 경우 그렇게하려면 명령과 방법을 공유하십시오.

설명

  • 텔넷 포트는 안전하지 않으므로 대부분의 fw가 차단합니다. ' 텔넷 포트를 차단하는 방화벽 (다른 시스템에)이 없습니다.
  • 원하는 작업을 이미 수행 한 것 같습니다 … You telnet '이 원격 HTTP 서비스에 연결되었고 ' 아무 것도 입력하지 않았으므로 연결을 끊었습니다. Telnet 서비스를 활성화 할 필요가 없습니다. (서버) 모든 컴퓨터에서. 텔넷 클라이언트를 사용하고 있습니다. curl / wget / nc / whatever를 사용하여 동일한 작업을 수행 할 수도 있습니다.
  • 있을 가능성이 높습니다.하지만 허용됩니다. 내 Windows PC의 홈 네트워크에서 텔넷으로 연결할 수도 있습니다.하지만 내 사무실에서는 m 직면. 이 서버에서 방화벽의 모든 것이 허용됩니다.
  • @Networker 보안 문제는 (이 맥락에서) 말도 안됩니다. 텔넷은 서비스의 도달 가능성을 테스트하기 위해 클라이언트로 사용되며 아니요, 텔넷 포트 는 관련되지 않습니다.

답변

telnet를 사용하여 원격 웹 서버에 대한 연결을 테스트하려고합니까? 그렇다면 아니오 : 텔넷 서버가 필요하지 않습니다. 원격 HTTP 서버는 이스케이프 문자로 표시된 명령을 기다리고 있습니다. 대기 시간이 초과되면 연결이 닫힙니다. 그래서 …

telnet <hostname or ip address> 80

그런 다음 몇 가지 HTTP 명령을 입력합니다.

GET / HTTP/1.1 host: <fqdn> 

원격 웹 서버가 서비스를 제공하도록 구성된 호스트의 FQDN을 사용합니다. 위의 HTTP 명령을 사용하여 기본 문서를 반환합니다. 0xAF에 의해 정확한 주석을 기록하십시오.

Comments

  • OP는 응답을 검색 할 수 있도록 입력 후 빈 줄 1 개를 입력해야합니다. 대부분의 HTTP 서버는 HTTP / 1.0 통신을 허용합니다. OP가 HTTP 서비스 만 테스트하려는 경우 " GET / HTTP / 1.0 "를 작성하고 Enter 키를 누를 수 있습니다. 두 번.

답변

첫 문장의 질문에 답하려면 : Telnet은 두 가지입니다. 서버 측 응용 프로그램 (데몬) 및 클라이언트 측 응용 프로그램

텔넷 서버가 실행 중일 때 컴퓨터는 텔넷 클라이언트의 연결을 위해 TCP 포트 23에서 수신 대기합니다.

텔넷 클라이언트는 어떤 포트에서도 수신하지 않고 컴퓨터의 TCP 포트 23 (기본값)에 연결을 시도합니다. 올바르게 연결되면 사용자에게 로그인하라는 메시지가 표시되고 대화 형 셸 세션이 생깁니다. 텔넷은 기본적으로 암호화되지 않은 일반 텍스트 (암호 포함!)를 사용하여 통신하므로 권장되지 않습니다.

그러나 Christopher가 훌륭한 답변에서 말했듯이 실제로 http 서버를 사용하여 테스트하려는 경우 telnet을 사용하면 telnet 프로그램을 사용할 수 있으며 telnet 서버가 필요하지 않습니다.

telnet 클라이언트 프로그램을 사용하여 기본 포트 23이 아닌 다른 TCP 포트에 연결할 수 있습니다.

telnet <hostname> <TCP port> 

http 서버는 일반적으로 포트 80에서 수신 대기하므로 telnet 프로그램을 사용하여 포트 80에 연결하고 http 서버가 연결될 때 브라우저에 보내는 내용을 확인할 수 있습니다.

telnet google.com 80 

연결되지만 간단한 http 요청 인 다음 텍스트를 입력해야합니다 (대소 문자가 중요 함).

GET / HTTP/1.1 host: test.com 

그런 다음 Enter 키를 두 번 누릅니다.

그러면 Google이 브라우저에 제공하는 모든 원시 html이 표시됩니다. 동일한 개념을 사용하여 http 서버를 소유하고 있습니다.

답변

telnet를 사용하여 HTTP 프로토콜을 테스트 할 수 있지만 작업에 더 적합한 도구가 있습니다. 개인적으로 curl를 추천합니다. 기본적으로 다양한 프로토콜 (HTTP, HTTPS, FTP …)과 상호 작용할 수있는 명령 줄 유틸리티입니다. telnet 대신 curl를 사용하여 HTTP 서버를 테스트하면 HTTP 요청을 수동으로 입력 할 필요가 없으며 다음을 제공합니다. 전체적으로 더 많은 정보.현재 상황에 유용 할 수있는 몇 가지 기능은 다음과 같습니다.

HTTP를 사용하여 호스트에 연결하고 기본 문서 요청 :

curl <public ip> 

HTTP를 사용하여 호스트에 연결하고 HTTP 헤더 만보기 :

curl -I <public ip> 

HTTP를 사용하여 호스트에 연결하고 HTTP 헤더 만보고 3xx 리디렉션을 따릅니다.

p>

curl -LI <public ip> 

curl에는 말 그대로 수십 가지 옵션이 있습니다. 빠른 요약에는 curl --help를 사용하고 자세한 정보는 man curl 또는 curl --manual를 사용하는 것이 좋습니다.

답변

telnet 또는 curl이없는 경우 cat 및 proc dir을 사용하여 포트를 연결할 수도 있습니다.

cat < /dev/tcp/HOST/PORT 

이 기사 (스페인어) 에서 발췌했습니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다