텔넷

Telnet
Screenshot of a black screen with the output of the help command and a # prompt.
라우터의 Busybox에 액세스하는 Telnet 클라이언트.

Telnet은 인터넷 또는 로컬 영역 네트워크에서 사용되는 애플리케이션 프로토콜로, 가상 터미널 연결을 사용하여 양방향 대화형 텍스트 지향 통신 기능을 제공합니다.[1]사용자 데이터는 Transmission Control Protocol(TCP)을 통해 8비트 바이트 지향 데이터 연결에서 Telnet 제어 정보와 대역 내 배치됩니다.

Telnet은 1969년에 개발되었으며, RFC15, RFC855로 확장되어 최초의 인터넷 표준 중 하나인 Internet Engineering Task Force(IETF; 인터넷 기술 특별 조사위원회) Internet Standard STD 8로 표준화되었습니다.그 이름은 "teletypenetwork"[2][3]의 약자이다.

지금까지 Telnet은 리모트호스트의 명령줄 인터페이스에의 액세스를 제공했습니다.다만, 인터넷등의 오픈 네트워크상에서 Telnet 를 사용하는 경우는, 시큐러티의 문제가 심각하기 때문에,[4] SSH 에 대해서는, 이 목적을 위한 Telnet 의 사용은 큰폭으로 저하하고 있습니다.

telnet이라는 용어는 프로토콜의 클라이언트 부분을 구현하는 소프트웨어를 가리키는 데에도 사용됩니다.Telnet 클라이언트애플리케이션은 거의 모든 컴퓨터 플랫폼에서 사용할 수 있습니다.텔넷동사로도 사용됩니다.Telnet은 명령줄 클라이언트 또는 그래픽 인터페이스를 사용하여 Telnet 프로토콜을 사용하여 연결을 확립하는 것을 의미합니다.를 들어 "비밀번호를 변경하려면 서버에 telnet 접속하여 로그인하고 passwd 명령을 실행합니다."라는 일반적인 지시어가 있을 수 있습니다.대부분의 경우 사용자는 Unix와 유사한 서버 시스템 또는 네트워크 디바이스(라우터 등)에 Telnet 접속하고 있습니다.

이력 및 표준

Telnet은 안정적인 연결 지향 전송을 기반으로 하는 클라이언트-서버 프로토콜입니다.일반적으로 이 프로토콜은 Telnet 서버 애플리케이션(telnetd)이 수신하고 있는 Transmission Control Protocol(TCP) 포트 번호23 의 접속을 확립하기 위해서 사용됩니다.단, Telnet은 TCP/IP보다 이전이며 원래 Network Control Protocol(NCP)을 통해 실행되었습니다.

1973년 3월 5일까지 [5]Telnet은 공식 정의가 없는 애드혹 프로토콜이었지만 Telnet에서는 Teletype Over Network Protocol(RFC 206(NIC 7176)로 실제로 언급되는 이름으로 연결이 명확해집니다.[6]

TELNET 프로토콜은 7비트 ASCII 문자 세트를 사용하는 가상 텔레타입 개념을 기반으로 합니다.따라서 사용자 TELNET의 주요 기능은 사용자가 해당 가상 텔레타입의 [7]모든 키를 '히트'할 수 있는 수단을 제공하는 것입니다.

기본적으로 8비트 채널을 사용하여 7비트 ASCII 데이터를 교환했습니다.높은 비트가 설정된 바이트는 모두 특수 Telnet 문자입니다.1973년 3월 5일 UCLA에서[8] Telnet 프로토콜 표준이 정의되었으며 두 개의 NIC 문서가 발행되었습니다.Telnet Protocol Specification(NIC 15372) 및 Telnet 옵션 사양(NIC 15373)입니다.

협상 가능한 옵션 프로토콜 아키텍처 때문에 텔넷을 위해 많은 확장자가 만들어졌다.이러한 확장 기능 중 일부는 인터넷 표준으로 채택되었으며, IETF는 STD 27에서 STD 32를 문서화합니다.IETF 표준 트랙에서 제안된 표준이 구현된 확장도 있습니다(아래 참조).Telnet은 로컬 Telnet 프로그램(클라이언트 프로그램이라고도 함)을 사용하여 사용자의 통신 요구가 Telnet 서버 프로그램에서 처리되는 원격 컴퓨터에서 로그온 세션을 실행하는 단순한 단말기를 사용하는 사용자의 컨텍스트에서 가장 잘 이해할 수 있습니다.

보안.

1969년 Telnet이 처음 개발되었을 때 네트워크 컴퓨터 사용자의 대부분은 학술 기관의 컴퓨터 부서 또는 대규모 민간 및 정부 연구 시설에 있었습니다.이러한 환경에서 보안은 1990년대 대역폭 폭증 이후와 같은 문제가 되지 않았습니다.인터넷에 접속할 수 있는 사람의 증가와 더불어 다른 사람의 서버를 해킹하려는 사람의 수도 늘어나면서 암호화된 대안이 필요하게 되었다.

SANS Institute 컴퓨터 보안 전문가들은 다음과 같은 이유로 원격 로그인에 대한 Telnet 사용을 모든 정상 상황에서 중단할 것을 권장합니다.

  • 기본적으로는 Telnet은 접속을 통해 전송되는 데이터(패스워드 포함)를 암호화하지 않기 때문에 통신을 도청하고 나중에 악의적인 목적으로 비밀번호를 사용하는 경우가 많습니다.Telnet을 사용하는2 개의 호스트간의 네트워크상에 있는 라우터, 스위치, 허브, 게이트웨이에 액세스 할 수 있는 사람은, 누구라도 상호 접속할 수 있습니다.패킷 분석기를 사용하여 로그인,[9] 비밀번호 및 기타 입력된 모든 것을 얻을 수 있습니다.
  • 대부분의 Telnet 실장에서는, 2 개의 목적의 호스트간에 통신이 행해져 중간에서 대행 수신되지 않게 하는 인증은 없습니다.
  • 일반적으로 사용되는 Telnet 데몬에서는 수년간 몇 가지 취약성이 발견되었습니다.

이러한 보안 관련 단점으로 인해 1995년에 처음 출시된 Secure [10]Shell(SSH) 프로토콜을 선호하여 특히 공중 인터넷에서의 Telnet 프로토콜 사용이 급격히 감소했습니다.SSH는 실질적으로 Telnet을 대체했으며, 최근에는 더 현대적인 [11]프로토콜을 지원하지 않는 수십 년 된 레거시 기기에 액세스하는 데만 사용되는 드문 프로토콜이 사용되고 있습니다.SSH는 패스워드 등의 기밀 데이터가 감청되는 것을 방지하는 강력한 암호화 기능 및 리모트컴퓨터가 실제임을 보증하는 공개 키 인증을 추가하여 telnet의 많은 기능을 제공합니다.다른 초기 인터넷 프로토콜과 마찬가지로 Telnet 프로토콜에 대한 확장 기능은 위의 문제를 해결하는 Transport Layer Security(TLS; 트랜스포트 계층 보안) 및 Simple Authentication and Security Layer(SASL; 단순 인증 및 보안 계층) 인증을 제공합니다.다만, 대부분의 Telnet 실장에서는 이러한 확장 기능은 서포트되고 있지 않습니다.또, SSH는 대부분의 목적에 적합하기 때문에, 이러한 확장 기능의 실장에 대한 관심은 비교적 적습니다.

통신 옵션으로 Telnet만 사용할 수 있는 산업용 및 과학용 디바이스가 다수 존재합니다.표준 RS-232 포트만으로 구축되어 시리얼 서버 하드웨어 어플라이언스를 사용하여 TCP/Telnet 데이터와 RS-232 시리얼 데이터를 변환합니다.이러한 경우, 인터페이스 어플라이언스를 SSH용으로 설정할 수 없는 경우(또는 SSH를 지원하는 어플라이언스로 치환할 수 없는 경우)에는, SSH 를 사용할 수 없습니다.

텔넷은 여전히 취미 생활자들, 특히 아마추어 라디오 운영자들 사이에서 사용되고 있다.Winlink 프로토콜은 Telnet 연결을 통한 패킷 무선을 지원합니다.

Telnet 5250

IBM 5250 또는 3270 워크스테이션 에뮬레이션은 커스텀 Telnet 클라이언트, TN5250/TN3270IBM i 시스템을 통해 지원됩니다.Telnet을 통해 IBM 5250 데이터 스트림을 전달하도록 설계된 클라이언트 및 서버는 일반적으로 SSL 암호화를 지원합니다. SSH에는 5250 에뮬레이션이 포함되어 있지 않기 때문입니다.IBM i(OS/400이라고도 함)에서는 포트 992가 시큐어 [12]Telnet 기본 포트입니다.

Telnet 데이터

0xff 이외의 모든 데이터 옥텟은 그대로 Telnet을 통해 전송됩니다(0xff(10진수로는 255).다음 바이트가 telnet 명령임을 나타내는 IAC 바이트(Interprect As Command)입니다.스트림에 0xff를 삽입하는 명령어는 0xff이므로 telnet 프로토콜을 통해 데이터를 전송할 때는 0xff를 두 배로 하여 이스케이프해야 합니다).

Telnet 클라이언트응용 프로그램은 Telnet 서버 포트 이외의 포트에 대화형 TCP 세션을 확립할 수 있습니다.이러한 포토에의 접속에서는, IAC 가 사용되지 않고, 모든 옥텟이 해석 없이 서버로 송신됩니다.예를 들어 명령줄 Telnet 클라이언트는 다음과 같이 TCP 포트 80 상의 웹 서버에 HTTP 요구를 할 수 있습니다.

$ telnet www.example.com 80 GET / path / to / file . 138 HTTP / 1.1 호스트: www.example.com 연결: 닫기

UNIX 의 넷캣이나 socat, Windows 의 PuTTY 등, 이러한 요건을 처리하는 다른 TCP 터미널 클라이언트가 있습니다.단, Telnet은 SMTP, IRC, HTTP, FTP, POP3 의 네트워크 서비스를 디버깅할 때 서버에 명령어를 발행하고 응답을 검사하기 위해 사용할 수 있습니다.

Telnet과 다른 TCP 터미널 클라이언트의 또 다른 차이점은 Telnet은 디폴트로는8비트 클린 모드가 아니라는 것입니다.8비트 모드는 네고시에이트 할 수 있지만 7비트가 디폴트모드이기 때문에 이 모드가 요구될 때까지 높은 비트세트의 옥텟은 왜곡될 수 있습니다.8비트 모드(즉, 바이너리 옵션)는 ASCII 문자가 아닌 바이너리 데이터를 전송하기 위한 것입니다.이 표준에서는 코드 0000-0176을 ASCII로 해석할 것을 제안하고 있습니다만, 고비트 세트의 데이터 옥텟에는 아무런 의미가 없습니다.HTTP와 [13]같이 전환 가능한 문자 인코딩 지원을 도입하려고 했지만 실제 소프트웨어 지원에 대해서는 알려진 바가 없습니다.

관련 RFC

인터넷 표준

  • RFC 854, Telnet 프로토콜 사양
  • RFC 855, Telnet 옵션 사양
  • RFC 856, Telnet 바이너리 전송
  • RFC 857, Telnet 에코 옵션
  • RFC 858, Telnet Suppress Go Ahead 옵션
  • RFC 859, Telnet 상태 옵션
  • RFC 860, Telnet 타이밍 마크 옵션
  • RFC 861, Telnet 확장 옵션: 목록 옵션

제안된 표준

  • RFC 885, Telnet 레코드 종료 옵션
  • RFC 1073, Telnet 창 크기 옵션
  • RFC 1079, Telnet 단말기 속도 옵션
  • RFC 1091, Telnet 터미널 타입 옵션
  • RFC 1096, Telnet X 표시 위치 옵션
  • RFC 1123, 인터넷호스트 요건 - 응용 프로그램 및 지원
  • RFC 1184, Telnet 라인 모드옵션
  • RFC 1372, Telnet 리모트플로우 제어 옵션
  • RFC 1572, Telnet 환경 옵션
  • RFC 2941, Telnet 인증 옵션
  • RFC 2942, Telnet 인증: Kerberos 버전5
  • RFC 2943, DSA를 사용한 TELNET 인증
  • RFC 2944, Telnet 인증: SRP
  • RFC 2946, Telnet 데이터 암호화 옵션
  • RFC 4248, telnet URI 스킴

정보/실험적

  • RFC 1143, TELNET 옵션네고시에이션을 구현하는Q 방법
  • RFC 1571, Telnet 환경 옵션 상호 운용성 문제

기타 RFC

  • RFC 1041, Telnet 3270 체제옵션
  • RFC 1205, 5250 Telnet 인터페이스
  • RFC 2217, Telnet Com 포트 제어 옵션
  • RFC 4777, IBM의 iSeries Telnet 확장 기능

Telnet 클라이언트

대중문화에서

스타워즈: 에피소드 IV – 1977년의 새로운 희망이 [14]텔넷을 통해 제공되는 텍스트 아트 영화로 재탄생되었다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "What is Telnet? Definition from SearchNetworking". SearchNetworking. Retrieved 2022-04-26.
  2. ^ Wheen, Andrew (2011). Dot-dash to Dot.Com: How Modern Telecommunications Evolved from the Telegraph to the Internet. Springer. p. 132. ISBN 9781441967596.
  3. ^ Meinel, Christoph; Sack, Harald (2013). Internetworking: Technological Foundations and Applications. X.media.publishing. p. 57. ISBN 978-3642353918.
  4. ^ Todorov, Dobromir (2007). Mechanics of user identification and authentication : fundamentals of identity management. Boca Raton: Auerbach Publications. ISBN 978-1-4200-5220-6. OCLC 263353270.
  5. ^ RFC 318 - 오래된 애드혹 Telnet 프로토콜 문서
  6. ^ Bruen, Garth O. (2015). WHOIS Running the Internet: Protocol, Policy, and Privacy (1st ed.). Wiley. p. 25. ISBN 9781118679555.
  7. ^ RFC 206 (NIC 7176) Archived 2017-03-15 at the Wayback Machine, 1971년 8월 9일; Computer Research Lab, UCSB; J. White.
  8. ^ RFC 495 - Telnet 프로토콜 발표
  9. ^ "What Telnet is and how do you enable it?". IONOS Digitalguide. Retrieved 2022-04-30.
  10. ^ Poulsen, Kevin (2 April 2007). "Telnet, dead at 35...RIP". Wired. p. 24. Archived from the original on 21 December 2016. Retrieved 14 June 2017.
  11. ^ Ylonen, Tatu. "History of the SSH Protocol". SSH home page. SSH Communications Security, Inc. Archived from the original on 25 July 2018. Retrieved 14 June 2017.
  12. ^ "IBM TCP/IP Ports Required for Access for Windows and Related Functions - United States". www-01.ibm.com. IBM Technote. Archived from the original on 2016-09-18. Retrieved 2016-09-07.{{cite web}}: CS1 유지보수: 기타 (링크)
  13. ^ RFC 2066 - TELNET CHARSET 옵션
  14. ^ "The Lost Worlds of Telnet". The New Stack. 10 March 2019. Retrieved 5 June 2022.

외부 링크