연결 문제를 테스트하고 문제를 해결하는 Telnet 명령 알아보기

텔넷은 원격 컴퓨터에 가상으로 연결할 수 있게 해주는 널리 사용되는 네트워크 프로토콜입니다. 1969년에 개발된 오래된 프로토콜입니다.

요즘에는 SSH(Secure Shell)가 Telnet을 대체하고 있습니다. SSH는 네트워크 및 시스템 관리자가 원격 컴퓨터에 안전하게 연결할 수 있게 해주는 네트워크 통신 프로토콜이기도 합니다.

Telnet의 경우 현재 주로 연결 문제를 해결하고 테스트하는 데 사용됩니다. 텔넷 명령을 학습하면 네트워크를 더 잘 관리하는 데 도움이 됩니다.

이 기사에서는 텔넷 명령의 작동 방식과 연결 문제 해결 방법을 포함하여 텔넷 명령에 대해 자세히 살펴보겠습니다. 시작하자.

텔넷이란 무엇입니까?

Telnet은 Teletype Network를 나타내는 네트워크 프로토콜입니다. 원격 서버와 통신하기 위한 명령줄 인터페이스/해석기를 제공합니다. 시스템 및 네트워크 관리자는 텔넷의 터미널 간 통신을 사용하여 원격 제어를 얻고 초기 장치 설정과 같은 다양한 작업을 수행합니다.

Telnet 프로토콜을 사용하려면 Telnet 클라이언트가 필요합니다. 클라이언트는 사용자가 TCP/IP를 통해 원격 시스템에서 로그인하고 응용 프로그램을 사용할 수 있도록 합니다. Telnet 클라이언트는 Telnet 서버 응용 프로그램을 사용하여 작업을 수행합니다. 또한 Telnet 클라이언트는 Windows, Linux 및 macOS와 같은 모든 최신 운영 체제에서 사용할 수 있습니다.

참고: 기사에서 “텔넷”이라고 언급할 때 다른 언급이 있는 경우 “텔넷 클라이언트”를 의미합니다.

텔넷은 안전한가요?

1969년 처음 도입된 동안 보안은 네트워크 작업을 수행할 때 주요 관심사가 아니었습니다. 이것이 Telnet이 암호화를 사용하지 않은 이유입니다. 안전하지 않기 때문에 TCP/IP 네트워크를 통해 원격 클라이언트에 연결하는 것도 권장되지 않습니다. 그렇게 하면 암호화되지 않은 데이터를 방해할 수 있는 해커에게 자신이 노출됩니다. SSH는 서버에 원격으로 연결하는 안전한 방법을 제공하는 훌륭한 대체 프로토콜입니다.

텔넷은 어떻게 작동합니까?

시각적으로 Telnet 프로토콜은 아래와 같이 작동합니다.

  Linux에서 루트 액세스 권한으로 프로그램을 여는 방법

텔넷 작동 방식

Telnet은 양방향(클라이언트-서버 프로토콜) 양방향 통신 시스템을 만드는 텍스트 지향 통신입니다. 8바이트 연결을 사용하여 전송합니다. 또한 텔넷을 사용하기 위해서는 단말기에 연결된 키보드와 화면이 필요합니다.

터미널에서 명령을 입력하여 원격 컴퓨터에 연결합니다. 일단 연결되면 Telnet은 파일 및 프로세스를 포함하여 서버에 대한 제어를 제공합니다.

원격 서버에 연결하려면 사용자는 명령 프롬프트에 “Telnet”을 입력해야 합니다. 구문은 다음과 같습니다.

telnet hostname port

성공적으로 연결되면 Telnet 프롬프트를 사용하여 더 많은 Telnet 명령을 입력할 수 있습니다.

텔넷을 사용할 수 있는 여러 가지 사항은 다음과 같습니다.

  • 열린 포트 확인
  • 파일 편집, 프로그램 실행
  • 스위치, 라우터 등과 같은 네트워크 장치를 구성합니다.

세션을 종료하려면 Telnet 프롬프트에 “Telnet”을 입력해야 합니다.

Windows/Linux 및 macOS에서 Telnet 클라이언트를 활성화하는 방법

Telnet 클라이언트는 모든 주요 플랫폼 및 운영 체제에서 사용할 수 있습니다. 그러나 사용하기 전에 설치하거나 활성화해야 합니다.

#1. 윈도우

Windows 7 이상(8, 10, 11) 또는 Windows Vista를 사용하는 경우 아래 단계에 따라 텔넷 클라이언트를 활성화할 수 있습니다.

  • 시작 메뉴로 이동하여 제어판을 검색합니다. Win + R을 누른 다음 “control”을 입력하여 제어판을 열 수도 있습니다. 제어판이 열립니다.
  • 이제 “프로그램” > “프로그램 및 기능”을 선택합니다.
  • “왼쪽 창에서 Windows 기능 켜기 또는 끄기”를 선택합니다.
  • 이제 “텔넷 클라이언트” 옆의 상자를 선택하고 “확인”을 누릅니다.
  • 이제 Windows가 활성화하고 “Windows가 요청한 변경을 완료했습니다.”라는 메시지가 표시되면 “닫기”를 누르십시오.

Windows에서 텔넷 활성화

참고: 컴퓨터를 다시 시작하지 않고 즉시 Telnet 클라이언트를 사용할 수 있습니다.

#2. 리눅스

Windows와 마찬가지로 Linux에도 Telnet이 미리 설치되어 있지 않습니다.

Ubuntu에 Telnet을 설치하려면 다음 명령을 사용해야 합니다.

# sudo apt-get install telnet

참고: 명령은 Linux 배포판에 따라 다릅니다.

#삼. 맥 OS

MacOS는 텔넷도 지원합니다. 설치하려면 Homebrew를 사용해야 합니다. Homebrew가 사전 설치되어 있지 않은 경우 다음 명령을 실행하여 설치할 수 있습니다.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

설치를 승인하기 위해 관리자 암호를 입력하라는 메시지가 표시됩니다.

Homebrew가 설치된 상태에서 다음 명령을 입력하여 MacOS에 Telnet을 설치합니다.

brew install telnet

Telnet을 사용하여 네트워크 연결 테스트 및 문제 해결

텔넷은 원격 연결에 이상적이지는 않지만 네트워크 연결을 테스트하고 문제를 해결하는 데 여전히 유용합니다.

  웹 사이트에서 사용 중인 WordPress 테마를 찾는 방법

계속 진행하기 전에 Telnet 구문을 간단히 살펴보겠습니다.

telnet <server/host IP address> <port>

여기서 서버/호스트 IP 주소는 연결하려는 서버입니다. 포트는 TCP 포트 번호입니다.

예를 들어 서버 IP 주소 example.com에 포트 80으로 연결하려면 다음 명령을 입력해야 합니다.

telnet example.com 80

즉, 사전에 문제를 해결하려면 원격 서버 IP 주소/이름 및 포트 번호를 알아야 합니다.

시작하자.

웹 서버 문제 해결

Telnet은 서버 연결을 테스트하는 쉬운 방법을 제공합니다. 서버/호스트 IP 주소와 연결을 허용하는 포트에 연결하기만 하면 됩니다.

예를 들어 포트 532에서 23.45.75.22에 연결하는 경우 다음 명령을 실행해야 합니다.

telnet 23.45.75.22 532

여기에서 두 가지 일이 발생할 수 있습니다.

  • 서버에 성공적으로 연결되었습니다. “서버에 연결됨” 또는 기타 확인 메시지가 표시되거나 추가 입력을 기다립니다.
  • 서버 연결에 실패했습니다. 이 경우 “연결 실패” 또는 “연결 거부”와 같은 메시지가 표시될 수 있습니다.
  • 텔넷이 메시지를 반환하지 않습니다.
  • Telnet에서 원격 서버에 연결하려는 시도가 실패한 데에는 여러 가지 이유가 있습니다. 또한 텔넷이 오류 메시지를 반환하지 않는 경우 방화벽이나 바이러스 백신이 사용자 끝이나 서버에서 연결을 차단할 수 있습니다.

    포트 80에서 geefklare.com에 연결하면 추가 명령을 기다리면서 즉시 연결되는 것을 볼 수 있습니다.

    telnet geefklare.com 80
    Connected to koreantech.org.com.
    Escape character is '^]'.

    이제 다음 명령을 입력하십시오.

    GET / HTTP/1.1
    Host: koreantech.org.com

    다음을 반환합니다.

    HTTP/1.1 200 OK
    Date: Fri, 18 Nov 2022 04:40:33 GMT
    Content-Type: text/plain; charset=UTF-8
    Content-Length: 16
    X-Frame-Options: SAMEORIGIN
    Referrer-Policy: same-origin
    Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    [Additional server output follows]

    이제 실패한 서버 연결 시도를 살펴보십시오.

    telnet 23.45.75.222 532
    Connecting To 23.45.75.222...Could not open a connection to the host on port 532: Connect failed

    포트가 열려 있는지 확인

    텔넷을 통해 서버에 원격으로 액세스할 수 있는 경우 이를 사용하여 포트가 열려 있는지 확인할 수도 있습니다.

    서버의 포트가 열려 있는지 확인하려면 다음 명령을 사용해야 합니다.

    telnet <server IP address> <port>

    예를 들어 서버 IP 주소는 23.45.47.53이고 확인하려는 포트는 532입니다.

    telnet 23.45.47.53 532

    명령이 성공하면 포트가 열려 있음을 나타내는 빈 화면이 나타납니다. “connecting..”이라고 읽은 다음 오류 메시지가 표시되면 포트가 열려 있지 않은 것입니다.

    Connection to 23.45.47.53:532 - fail
    Error #110 (Connection timed out)

    SMTP 메일 서버 문제 해결

    SMTP(Simple Mail Transfer Protocol)는 메일 서버 간의 통신을 관리합니다.

      Linux에서 Libre Office 6.0으로 업그레이드하는 방법

    텔넷으로 SMTP 서버의 문제를 해결하여 메시지를 수신하고 보내는지 확인할 수 있습니다. SMTP 서버에 수동 메시지 요청을 보냅니다. 모든 것이 정상이면 응답을 받게 됩니다.

    Telnet을 사용하면 두 가지 방법으로 STMP 연결을 테스트할 수 있습니다.

  • 인터넷에서 메일 서버로의 메일 흐름을 테스트합니다.
  • 메일 서버에서 다른 서버로의 메일 흐름을 테스트합니다.
  • 샘플 교환을 실행하려면 터미널에 다음 명령을 입력하십시오.

    telnet mail.koreantech.org.com 25
    Trying 192.168.0.68…
    Connected to mail.koreantech.org.com
    Escape character is '^]'.
    220-mail.koreantech.org.com ESMTP Exim 4.7
    220-We do not authorize the use of this system to
    220 transport unsolicited and/or bulk e-mail.
    EHLO mail.koreantech.org.com
    250-koreantech.org.com Hello koreantech.org.com [192.168.3.200]
    250-AUTH PLAIN LOGIN
    
    QUIT

    여기에서 사용자가 입력한 다른 두 명령은 다음과 같습니다.

  • EHLO mail.koreantech.org.com
  • 그만두다
  • ECLO 명령은 MAIL FROM 명령을 사용하기 전에 도메인 이름을 식별합니다. QUIT 명령은 텔넷 세션을 종료합니다.

    고급 명령이 필요한 경우 Telnet을 사용하여 Exchange 서버에서 SMTP 통신 테스트에 대한 이 문서를 확인하십시오.

    FTP 서버 문제 해결

    SMTP 및 웹 서버와 마찬가지로 FTP 서버 문제도 해결할 수 있습니다. FTP 서버 IP 주소를 입력하고 포트 21에 연결하기만 하면 됩니다.

    telnet ftp.koreantech.org.com 21

    시도가 성공하면 이제 서버에 연결된 것입니다. 그렇지 않으면 오류 메시지가 표시됩니다.

    Error #0 (php_network_getaddresses: getaddrinfo failed: No address associated with hostname)

    SSH 문제 해결

    SSH는 보안 연결에 대한 최신 기술로 Telnet을 대체합니다. Telnet을 사용하여 서버가 SSH를 실행 중인지 확인할 수 있습니다.

    이렇게 하려면 서버 IP 주소 및 포트 22와 함께 Telnet 명령을 사용하십시오.

    telnet koreantech.org.com 22
    Trying 192.168.0.62…
    Connected to koreantech.org.com.
    Escape character is '^]'.
    SSH-2.0-OpenSSH_5.3

    마지막 말

    텔넷은 현재 편리한 도구입니다. 더 복잡한 도구나 명령줄에 크게 의존하지 않고도 네트워크 연결 문제를 성공적으로 해결할 수 있습니다. Telnet을 사용하여 웹 서버에 액세스할 수 있는지 확인하고 포트가 열려 있는지 확인하고 SSH 및 FTP 문제를 해결할 수 있습니다.

    ‘텔넷 명령을 찾을 수 없음’ 오류를 해결하는 방법에 대한 이 문서를 확인할 수 있습니다.