본문 바로가기
Network

[Network]Telnet & SSH

by BTC_Master 2022. 5. 27.

1. Telnet

- 원격 접속 서비스로서 특정 사용자가 네트워크를 통해 다른 컴퓨터에 연결하여 그 컴퓨터에서 제공하는 서비스를 받을 수 있도록 하는 인터넷 표준 프로토콜

- Telnet을 이용하면 네트워크에 있는 컴퓨터를 자신의 컴퓨터처럼 파일 전송, 파일 생성, 디렉토리 생성 등을 자유롭게 할 수 있음

 

1.1 Telnet 특징

- 일종의 터미널 에뮬레이션 프로토콜로 NVT(Network Vortual Terminal), 라고 불리는 가상 터미널 개념 사용

- 터미널과 호스트와의 일대일 대칭적인 관계

 

1.2 Telnet 보안

- Telnet 세션은 암호화 및 무결성 검사를 지원하지 않음

- 패스워드가 암호화되어 있지 않아 스니퍼를 이용하여 제3자에게 노출될 수 있음

- UNIX 시스템에서 해커가 in.telnetd를 수정하여 클라이언트의 특정 터미널 종류에 대해 인증과정 없이 쉘을 부여할 수 있음

 

2. SSH

- SSH란 Secure Shell Protocol, 즉 네트워크 프로토콜 중 하나로 컴퓨터와 컴퓨터가 인터넷과 같은 Public Network를 통해 서로 통신을 할 때 보안적으로 안전하게 통신을 하기 위해 사용하는 프로토콜

- 대표적인 예

  1. 데이터 전송
  2. 원격 제어

- 데이터 전송의 예로는 원격 저장소인 깃허브가 있을 수 있음, 소스 코드를 원격 저장소인 깃허브에 푸시할 때 SSH를 활용해 파일을 전송하게 됨

- 원격 제어의 예로 우리는 AWS의 인스턴스 서버에 접속하여 해당 머신에 명령을 내리기 위해서도 SSH를 통한 접속을 해야 함

 

2.1 SSH 특징

- 보안적으로 훨씬 안전한 채널을 구성한 뒤 정보를 교환하기 때문에 보다 보안적인 면에서 훨씬 뛰어남

 

2.2 SSH 보안

- SSH는 다른 컴퓨터와 통신을 하기 위해 접속을 할 때 우리가 일반적으로 사용하는 비밀번호의 입력을 통한 접속을 하지 않음

- SSH는 한 쌍의 Key를 통해 접속하려는 컴퓨터와 인증 과정을 거침

  • Private Key
  • Public Key

- Private Key와 Public Key를 통해 다른 컴퓨터와 통신을 하기 위해서는 먼저 Public Key를 통신하고자하는 컴퓨터에 복사하여 저장

- 요청을 보내는 클라이언트 사이드 컴퓨터에서 접속 요청을 할 때 응답을 하는 서버 사이드 컴퓨터에 복사되어 저장된 Public Key와 클라이언트 사이드에 해당 Public Key와 쌍을 이루는 Private Key와 비교를 하여 서로 한 쌍의 Key인지 아닌지를 검사

- 이렇게 서로 관계를 맺고 있는 Key라는 것이 증명이 되면 비로소 두 컴퓨터 사이에 암호화된 채널이 형성이 되어 Key를 활용해 메시지를 암호화하고 복호화하며 데이터를 주고받을 수 있게 됨

 

3. Telnet vs SSH

- 사용자가 쓰기에는 텔넷과 SSH는 차이점이 없음

- 단지 차이점은 로그인, 프로그램 실행, 하드디스크 체크, 로그아웃 등 작업들을 하기 위해 사용자와 서버간의 통신 방법의 차이

- 텔넷은 정보를 byte스트림형식으로 주고받고, ssh는 DES, RSA 등 고급 암호화를 통해 통신

- SSH는 암호화 뿐만 아니라 압축 기술도 사용하는데, 암호화 때문에 트래픽이 텔넷보다 크게 늘어나지 않음, 단지 약간의 부하가 더 생길 수도 있음

'Network' 카테고리의 다른 글

[Network] SMTP & POP3 & IMAP  (0) 2022.06.10
[Network] ICMP & IGMP  (0) 2022.06.03
[Network] FTP, FTPS, SFTP  (0) 2022.05.20
[Network] HTTP, HTTPS  (0) 2022.05.13
공공기관용 IPSEC VPN 소개  (0) 2022.05.12

댓글