원격 액세스를 위한 더 안전한 옵션 [2023]

원격 연결 시대에 사용자와 시스템 관리자는 도구를 사용하여 원격 활동을 안전하고 안전하며 빠르게 만들어야 합니다.

그리고 원격 연결 방법에 대해 말할 때 SSH와 Telnet이라는 두 가지 이름이 맨 위에 나옵니다.

SSH입니까 아니면 Telent입니까? 이 기사에서는 어느 것이 원격 액세스에 더 적합한지 살펴봅니다. SSH와 Telnet 비교에서 알아봅시다.

원격 액세스란 무엇입니까?

원격 액세스를 통해 사용자 또는 관리자는 인터넷을 사용하는 모든 위치에서 네트워크의 컴퓨터나 장치에 액세스할 수 있습니다. 이를 사용하여 파일 전송, 협업 및 애플리케이션 트래픽 보안을 비롯한 다양한 작업을 수행할 수 있습니다.

원격 액세스는 조직이 생존하고 번창하는 데 필수적입니다. 또한 관리자는 서버 위치를 실제로 방문하지 않고도 서버, 네트워크 및 응용 프로그램을 관리하기 위해 적절한 원격 액세스가 필요합니다.

SSH 란 무엇입니까?

Secure Shell 또는 SSH(Secure Socket Shell)는 보안되지 않은 네트워크의 컴퓨터가 서로 안전하게 통신할 수 있도록 하는 네트워크 프로토콜입니다.

보안 연결이 설정되면 사용자 또는 관리자는 원격 시스템에 로그인하여 응용 프로그램을 원격으로 실행하거나 보안 종단 간 암호화 연결을 사용하여 네트워크를 통해 파일을 이동할 수 있습니다.

SSH는 SSH 프로토콜을 구현하는 기술 및 유틸리티 제품군을 나타냅니다. SSH를 안전하게 만들기 위해 공개 키 인증, 암호화된 데이터 통신 및 강력한 암호 인증을 시작으로 여러 기술이 구현됩니다.

SSH 개발 뒤에 있는 회사는 Netscape Communications Corporation입니다. 그러나 핀란드의 컴퓨터 과학자인 Tatu Ylonen이 SSH의 첫 번째 디자인을 만들었습니다. 그는 새로 만든 네트워크에서 비밀 암호 스니퍼를 찾은 후 이를 개발했습니다.

SSH는 어떻게 작동합니까?

SSH는 Telnet, rlogin, rsh 등과 같은 오래된 원격 연결 프로토콜을 대체합니다. 이들 중 대부분은 널리 사용되는 프로토콜이지만 보안이 부족합니다. 실제로 SSH는 사용자가 원격 복사(rcp) 및 파일 전송 프로토콜(FTP)과 같은 파일 전송 프로토콜에 의존하는 대신 사용할 정도로 매우 좋습니다.

SSH는 SSH 클라이언트가 SSH 서버에 연결하는 클라이언트-서버 모델을 사용합니다.

  • SSH 클라이언트는 SSH 프로토콜을 시작하는 컴퓨터 또는 장치에 상주하는 프로그램입니다. 클라이언트는 SSH 서버에 요청을 보내고 요청을 수락할 때까지 기다립니다. SSH 클라이언트는 공개 키 암호화를 사용하여 올바른 서버와 연결되어 있는지 확인합니다. 이 접근 방식은 악의적인 행위자가 서버로 위장하여 클라이언트에서 중요한 정보를 훔칠 수 없도록 합니다.
  • SSH 서버는 SSH 연결을 처리하고 서비스를 실행합니다. 들어오는 요청을 수락하기 위해 SSH 서버는 지속적으로 TCP 포트 22(기본값)를 수신합니다. 그리고 요청을 받으면 응답합니다. SSH 서버는 또한 공개 키 인증을 사용하여 클라이언트를 확인하고 인증합니다. 인증에 성공한 후에만 클라이언트가 호스트 시스템에 액세스할 수 있습니다.
  MinIO 사용해 보기 – 자체 호스팅 S3 호환 고성능 개체 스토리지

클라이언트와 서버가 암호화를 선택합니다. 그들은 약한 암호화를 비활성화하는 데 관여할 수 있습니다. 또한 다중 연결을 지원하여 하나의 SSH 연결을 통해 여러 채널을 열어 다중 작업(프로그램 다운로드, 편집 또는 프로그램 실행)을 할 수 있습니다.

SSH 구문은 다음과 같습니다.

$ ssh [email protected]

user_name은 호스트에 연결하는 데 사용하는 사용자 이름입니다. 호스트는 IP 또는 도메인 이름일 수 있습니다.

보시다시피 단순화된 SSH 흐름은 다음으로 구성됩니다.

  • 특정 SSH 서버에 대한 연결을 시작하는 SSH 클라이언트
  • SSH 서버는 연결을 수신하고 공개 키를 클라이언트에 보냅니다.
  • 클라이언트는 서버의 공개 키를 호스트 파일에 저장합니다(향후 연결을 위해).
  • 이제 서버와 클라이언트는 연결 매개변수를 협상하고 설정합니다.
  • SSH는 탁월한 보안 및 데이터 무결성 보호 기능을 갖춘 강력한 연결 옵션을 제공합니다. 또한 더 나은 구현을 위해 IETF 표준화를 따르며 지난 15년 동안 그대로 유지되었습니다.

    기술적으로 SSH에 대해 알아보려면 SSH RFC 4253 표준화 문서를 확인하십시오. 또한 koreantech.org의 SSH 이해에 대한 설명도 확인하십시오.

    텔넷이란 무엇입니까?

    Telent는 Teletype Network의 약자입니다. 명령줄 인터페이스를 통해 원격 연결을 제공하는 또 다른 인기 있는 네트워크 프로토콜입니다. SSH와 유사하게 이를 사용하여 원격 제어를 얻고 작업을 수행할 수 있습니다. 그러나 SSH가 제공하는 보안 측면이 부족합니다.

    보안이 부족한 것은 1969년에 나왔을 때 대부분의 통신이 로컬 네트워크에서 이루어졌기 때문에 보안되지 않은 인터넷에 비해 안전합니다.

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

    Telenet은 클라이언트와 서버 간의 터미널 간 텍스트 기반 통신을 생성하여 작동합니다. 8바이트 연결을 사용하는 클라이언트-서버 모델을 사용합니다.

    연결이 설정되면 열린 포트 확인, 장치 구성, 파일 편집 및 프로그램 실행을 포함하여 원격 컴퓨터에서 다양한 작업을 수행할 수 있습니다.

    텔넷 구문은 다음과 같습니다.

    $ telnet hostname port

    텔넷에 대한 자세한 내용은 연결 문제 테스트 및 문제 해결을 위한 텔넷 명령을 확인하십시오.

    언제 어디서 SSH를 사용해야 합니까?

    SSH는 주로 다음 용도로 사용됩니다.

    • 원격 시스템 관리
    • 원격 명령 실행
    • 애플리케이션의 트래픽 보안
    • 파일 전송

    또한 관리자는 네트워크 백업 생성, 로그 파일 수집, 주기적 유지 관리 수행 등과 같은 반복적인 작업을 처리하는 자동화된 SSH 세션을 설정할 수 있습니다.

    SSH는 특히 보안되지 않은 네트워크, 특히 인터넷에서 원격 연결 작업에 사용해야 합니다. SSH는 또한 로컬 네트워크가 완전히 안전한지 확신할 수 없기 때문에 로컬 네트워크에서 사용하기 위한 훌륭한 옵션입니다.

    언제 어디서 텔레넷을 사용해야 합니까?

    텔넷은 안전하지 않으므로 보안되지 않은 네트워크에서 원격으로 연결하는 데 사용하지 마십시오. 그러나 이것이 Telnet이 쓸모없다는 의미는 아닙니다.

      윤리적 해킹 기술을 마스터하기 위한 최고의 책 7권

    TTelnetto를 사용하여 다음을 수행할 수 있습니다.

    • SSH 문제 해결(예, 올바르게 읽었습니다. 😃)
    • FTP, SMTP 및 웹 서버 문제를 해결합니다.
    • 포트가 열려 있는지 확인
    • 신뢰할 수 있는 인터넷 네트워크에 액세스합니다.

    SSH 대 텔넷

    이 섹션에서는 다양한 기준을 통해 SSH와 Telent를 비교합니다. 급한 경우 SSH와 Telnet 비교표를 확인하십시오.

    SSHTelnetSecurity클라이언트와 서버가 암호화 알고리즘을 설정하기 위해 협상할 수 있는 매우 안전합니다.안전하지 않음, 연결 또는 Telent 패킷을 보호하는 메커니즘이 없습니다.인증SSH는 인증 목적으로 공개 키 암호화를 사용합니다.Telnet에는 인증 메커니즘이 없습니다. 아무런 보호 없이 전송되는 사용자 이름/암호만 묻습니다.OperationSSH는 기본적으로 TCP 포트 22를 사용합니다. 해커가 무단 액세스를 시도하지 못하도록 다른 포트로 변경할 수 있습니다.Telent는 기본적으로 포트 23을 사용하여 들어오는 연결을 수신합니다. 무단 액세스로부터 보호하도록 구성할 수 있습니다.모델클라이언트 서버 모델클라이언트 서버 모델데이터 전송 속도텔넷보다 기술적으로 느리지만 실제 사용 중에는 거의 감지할 수 없습니다.보안 프로토콜이 없기 때문에 SSH보다 빠릅니다.표: SSH 대 텔넷

    보안

    SSH는 안전합니다. 적절한 암호화 프로토콜로 연결을 안전하게 유지합니다. 그러나 Telenet에는 보안 조치가 전혀 없습니다.

    SSH에서 클라이언트와 서버는 종단 간 암호화 알고리즘을 포함하여 연결 매개 변수를 협상할 수 있습니다. 이렇게 하면 취약한 암호화 알고리즘을 잠그고 SSH 연결을 최대한 안전하게 만드는 설정이 제공됩니다.

    클라이언트와 서버 간에 TCP/UDP 연결이 설정되면 보안 연결 생성 시도가 시작됩니다.

    SSH 보안이 작동하는 방식을 더 잘 이해하기 위해 SSH 패키지의 내용에 대해 알아봅시다. SSH 패킷은 다음을 포함하여 다섯 가지 구성 요소로 구성됩니다.

    • 패킷 길이: 4바이트; 패키지의 크기는 얼마나 될까요?
    • 패딩량: 1바이트; 패키지에 패딩이 얼마나 있습니까?
    • 페이로드: 전송되는 실제 데이터 크기가 다양하다
    • 패딩: 이전에 언급한 SIZE가 아닌 실제 패딩입니다. 더 암호화되도록 페이로드와 결합된 임의 바이트입니다.
    • 메시지 인증 코드: 패키지 데이터가 변경되지 않도록 패키지 인증을 확인하는 태그입니다.

    SSH가 암호화를 구현하면 패키지 길이와 메시지 인증 코드만 읽을 수 있습니다. 클라이언트와 서버는 메시지 인증 코드를 통해 연결 매개변수를 협상합니다. 또한 SSH 패킷은 다른 압축 알고리즘을 사용하여 압축할 수 있습니다.

    텔넷은 보안이 부족합니다. 클라이언트와 서버를 연결하기 위해 보안되지 않은 인증을 수행합니다. 따라서 악의적인 행위자는 Telent 패키지를 읽고 연결을 손상시킬 수 있습니다.

    입증

    SSH는 보안 프로토콜입니다. 공개 키 암호화를 사용하여 클라이언트와 서버를 인증합니다. 좀 더 기술적인 측면에서 SSH는 비대칭 또는 대칭 암호화 알고리즘을 사용하여 공개 키와 개인 키를 쌍으로 만들 수 있습니다.

    반면 Telent는 인증에 대한 보호 기능이 없습니다. 인증 프로세스는 연결하기 전에 계정 이름과 암호를 묻습니다. 또한 사용자 이름과 암호는 보안 없이 전송되므로 누구나 액세스할 수 있습니다.

      얼리 어답터의 고통은 현실이지만 발전을 위해 필요합니다

    작업

    작동의 경우 SSH는 기본적으로 TCP 포트 22에서 실행됩니다. 반면 Telnet은 TCP 포트 23번을 사용합니다. 따라서 포트 번호를 지정하지 않고 SSH 또는 Telnet 프로토콜을 사용하십시오. 이 명령은 각각 포트 22와 23에 자동으로 연결을 시도합니다.

    그러나 이러한 포트는 잘 알려져 있으며 해커가 무단 액세스를 수행하는 데 사용할 수 있습니다.

    이를 극복하기 위해 다른 포트에서 SSH 및 Telnet 프로토콜을 변경할 수 있습니다. 공통 포트를 닫고 1024와 65535 사이의 포트를 선택하는 것이 가장 좋습니다.

    Telent에서 명령은 NVT(Network Virtual Terminal) 형식으로 전송됩니다. Telent 서버는 형식을 수신하고 이해할 수 있습니다. 보시다시피 여기에는 암호화나 인증이 없습니다.

    SSH의 경우 클라이언트-서버 연결이 이루어지면 세션이 생성되고 세션 키로 식별됩니다. 이 키는 세션이 끝날 때까지 트래픽을 암호화합니다. 또한 서버는 클라이언트를 확인해야 합니다. SSH 키 쌍 생성과 함께 수행합니다. 확인이 완료되면 안전한 데이터 전송을 위해 종단 간 암호화 채널이 생성됩니다.

    모델

    SSH와 Telnet은 모두 클라이언트-서버 모델을 사용합니다. 클라이언트-서버 모델이 다음과 같은 여러 이점을 제공한다는 점을 고려하면 훌륭합니다.

    • 필요한 경우 서버에서 더 많은 리소스를 추가할 수 있는 수평 확장이 가능합니다.
    • 적절한 데이터 입력을 위해 클라이언트를 최적화할 수 있습니다.
    • 클라이언트와 서버 간에 애플리케이션 처리 분할

    속도 및 오버헤드

    SSH와 텔넷을 제대로 이해하려면 오버헤드에 미치는 영향을 알아야 합니다. 일반적으로 SSH는 Telent보다 더 많은 오버헤드가 있지만 실제 시나리오에서는 차이를 거의 느끼지 못할 것입니다.

    기술적으로 Telnet과 SSH는 1시간의 연결 또는 1GB의 연결 시간 후에 키를 다시 입력합니다.

    대역폭의 경우 SSH에 더 많은 오버헤드가 있지만 사용자에게 미치는 영향은 최소화됩니다. 클라이언트와 서버의 CPU는 AES 표준이 작동하고 SSH 연결에서 구현되는 방식 덕분에 오버헤드가 최소화됩니다.

    요컨대 SSH와 Telnet은 시각적 속도나 오버헤드 차이가 없습니다. 그러나 기술적으로 비교하면 SSH는 Telnet을 통해 약간의 오버헤드를 수행합니다.

    SSH 및 Telnet 사용 사례

    이 섹션에서는 몇 가지 SSH 및 Telnet 사용 사례를 살펴보겠습니다.

    SSH 사용 사례

    SSH의 사용 사례는 다음과 같습니다.

    • 원격 명령 실행
    • 원격 시스템 리소스에 안전하게 액세스
    • 원격으로 파일 전송
    • 원격으로 소프트웨어 업데이트 제공
    • 자동 파일 전송 설정 또는 수동 전송 수행

    텔넷 사용 사례

    Telnet 사용 사례는 다음과 같습니다.

    • SSH 문제 해결
    • FTP, SMTP 및 웹 서버 문제를 해결합니다.
    • 포트가 열려 있는지 확인
    • 신뢰할 수 있는 인터넷 네트워크에 액세스합니다.

    최종 생각: 어느 것이 더 낫습니까?

    SSH가 더 좋습니다. 원격 액세스를 안전하게 만드는 최신 업데이트 네트워크 프로토콜입니다. 지금까지 보안 허점이 발견되지 않았습니다. 또한 사용 및 설정이 쉽습니다.

    반면에 텔넷은 정상적으로 떨어졌습니다. 이제 거의 50년이 되었습니다. 그러나 현재 시나리오에서는 여전히 유용하며 이를 사용하여 SSH 문제를 해결하거나 포트가 열려 있는지 확인할 수 있습니다. 관리자는 텔넷을 사용하여 대부분의 네트워크 문제를 해결할 수 있습니다.