Welcome :っ)

Devlog/Network

ftp, ftps, sftp, ssh, scp 개념 정리

lazy.won 2022. 7. 21. 12:25
728x90
반응형

 

 

 

* 프로토콜 : 디바이스 간에 데이터를 교환하기 위한 통신 규약

 

 

 

 

FTP (21 포트)

FTP(File Transfer Protocol)는 파일을 전송하는 통신 규약이다. 

기본 포트는 21이지만 설정에서 변경해서 사용하는 경우도 있다. 

명령어를 전달하는 21 포트와 데이터를 전달하는 20(혹은 랜덤) 포트가 있다. 그래서 21번 포트로 접속되더라도 사용 모드에 따라 서버의 20번 포터 혹은 클라이언트 방화벽 정책에 따라서 접속만 되고 실제 파일은 받거나 올리지 못하는 일이 발생할 수 있다. 

 

FTP는 보안이 좋지 않아 실무에서 사용하지는 않는다. 

명령어 방식으로 커맨드 창으로 이용이 가능하며, 파일질라와 같은 gui 프로그램으로도 이용이 가능하다. 

 

 

 

FTPS

FTPS(File Transfer Protocol Secure)는 https와 동일한 개념이다. (FTPS는 SFTP가 아니다 !)

TLS/SSL을 거치는 프로토콜인데 그 말은 공개키 암호화 방식을 이용하여 통신 라인을 거쳐가는 21번, 20번 포트를 안전하게 암호화한다는 말이다. 

공개키 암호화 방식은 결국 서버 공개키로 암호화하면서 서버가 가진 비공개 개인키로만 풀 수 있기 때문에, 공개키가 노출되어도 문제가 없는 암호화 방식이다. 

 

 

 

SFTP (포트 22)

SFTP(Secure File Transfer Protocol)는 ssh의 파일 전송 버전이다. 

ssh(Secure SHell)는 텔넷(telnet)의 보안 버전이다. 실무에서는 sftp와 ssh 만 이용하고 있다. 

다시 말해 STFP는 ssh 방식을 이용하여 안전하게 암호화된 구간에서 ftp 기능을 이용할 수 있는 것이다. 

 

 

 

SSH 

SSH(Secure Shell)는 원격지 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜이다.

뜻 그대로 보안 셸이다. 기존의 유닉스 시스템 셸에 원격 접속하기 위해 사용하던 텔넷은 암호화가 이루어지지 않아 계정 정보가 탈취될 위험이 높으므로, 여기에 암호화 기능을 추가하여 1995년에 나온 프로토콜이다. (SSH는 암호화 기법을 사용하기 때문에, 통신이 노출된다고 하더라도 이해할 수 없는 암호화된 문자로 보인다.)

셸로 원격 접속을 하는 것이므로 기본적으로 CLI 상에서 작업을 하게 된다. 기본 포트는 22번이다.

 

 

 

SCP 

SCP(Secure Copy)는 SSH 프로토콜 기반의 파일 전송(복사) 수단이다. 

원격지에 파일 또는 디렉터리를 보내거나 가져올 때 사용하는 파일 전송 프로토콜이다. 

네트워크 연결 환경에서 ssh와 동일한 22번 포트와 identy file을 사용해서 파일 송수신하기 때문에 보안적으로 안정된 프로토콜이라고 보면 된다. 

 

 

 

 

 

 

 

 

320x100
반응형

'Devlog > Network' 카테고리의 다른 글

프록시 서버란?  (0) 2023.01.02
HTTP 버전 별 특징 파헤치기  (0) 2022.10.19
HTTP 통신과 Socket 통신 차이  (0) 2022.03.22