서버를 운영하다 보면 여러가지 방법으로 서버에 파일을 업로드를 해야 하는 경우가 생기는데, 그 중 한 가지 방법인 SFTP 에 대해 알아보겠습니다.
Ⅰ. SFTP 란?
SFTP는 Secure File Transfer Protocol의 약자로, 네트워크를 통해 파일을 안전하게 전송하기 위한 프로토콜입니다. SFTP는 데이터 전송을 암호화하고 인증하는 데 사용됩니다. 주로 원격 서버와 클라이언트 간의 파일 전송에 사용되며, FTP는 평문으로 전송하는데 비해 암호화 하여 전송을 합니다. SFTP를 사용하면 원격 시스템 간에 파일을 안전하게 전송하고 관리할 수 있습니다. SFTP는 FTP와 비교하여 보안성이 뛰어나며, 보통 포트 22번을 사용합니다.
Ⅱ. SFTP 의 특징
1) 보안성 : SFTP는 SSH 프로토콜 위에서 작동하므로 데이터 전송이 암호화됩니다. 이는 데이터의 기밀성과 무결성을 보장합니다.
2) 인증: SFTP 서버와 클라이언트 간의 안전한 인증이 가능합니다. 이는 믿을 수 있는 사용자만이 파일 전송을 수행할 수 있도록 보장합니다.
3) 안정성: SFTP는 안정적인 파일 전송을 지원합니다. 네트워크 연결이 불안정한 경우에도 중단된 전송을 재개할 수 있는 기능을 제공합니다.
4) 편의성: SFTP는 FTP와 유사한 사용자 경험을 제공하지만, 보안 및 안정성 측면에서 우수합니다. 따라서 FTP를 대체할 수 있는 안전한 파일 전송 솔루션으로 널리 사용됩니다.
5) 프로토콜 호환성: SFTP는 여러 플랫폼과 시스템 간에 호환성이 뛰어나며, 다양한 운영 체제 및 네트워크 환경에서 사용할 수 있습니다.
6) 확장성: SFTP는 대부분의 파일 전송 작업을 수행할 수 있는 강력한 기능을 제공하며, 필요한 경우 확장 가능한 설정을 통해 세부적으로 제어할 수 있습니다.
Ⅲ. SFTP 의 서비스 흐름
1) 연결 설정: 클라이언트를 실행한 후, SFTP 서버에 연결하기 위해 필요한 정보를 입력합니다. 이 정보에는 호스트 주소, 포트 번호, 사용자 이름 및 암호가 포함될 수 있습니다.
2) 인증 설정: 대부분의 경우, SFTP 서버에 연결할 때 인증 방법을 선택해야 합니다. 이는 사용자 이름과 암호를 사용하는 패스워드 인증 또는 SSH 키를 사용하는 키 기반 인증일 수 있습니다. SSH 키를 사용하는 경우에는 개인 키 파일을 클라이언트에 제공해야 합니다.
3) 서버 탐색: 연결이 설정되면 원격 서버의 파일 시스템을 탐색할 수 있습니다. 일반적으로 SFTP 클라이언트는 로컬 파일 시스템과 원격 파일 시스템 간에 파일 및 폴더를 드래그 앤 드롭하여 전송할 수 있는 사용자 친화적인 인터페이스를 제공합니다.
4) 파일 전송: 파일을 로컬 시스템에서 원격 서버로 끌어다 놓거나, 반대로 파일을 원격 서버에서 로컬 시스템으로 드래그하여 전송할 수 있습니다. 이렇게 함으로써 파일이 안전하게 전송됩니다.
5) 전송 상태 확인: 파일 전송이 완료되면 클라이언트는 전송된 파일의 상태를 표시합니다. 일반적으로 성공적으로 전송된 파일은 목록에서 확인할 수 있으며, 실패한 파일은 관련 오류 메시지와 함께 표시됩니다.
Ⅳ. SFTP 와 FTP 차이점
SFTP | FTP | |
보안성 | SFTP는 SSH 프로토콜을 기반으로 하며, 데이터 전송이 암호화되어 있습니다. 이는 데이터의 기밀성과 무결성을 보장합니다 | FTP는 보안 기능이 제한적이며, 데이터가 평문으로 전송되므로 보안에 취약합니다. |
인증 | SFTP는 SSH의 강력한 인증 메커니즘을 사용하여 클라이언트와 서버 간의 안전한 인증을 보장합니다. | FTP는 암호를 포함한 인증 정보가 평문으로 전송되므로 보안상 취약합니다. |
포트 | SFTP는 일반적으로 SSH 프로토콜을 사용하는 포트 22를 사용합니다 | FTP는 포트 21을 사용합니다 |
파일 전송 방식 | SFTP는 단일 연결을 사용하여 파일 전송과 관련된 모든 작업을 처리합니다 | FTP는 두 개의 연결을 사용하여 파일을 전송합니다. 제어 연결(control connection)은 명령 및 인증을 처리하고, 데이터 연결(data connection)은 파일 전송에 사용됩니다. |
서버 요구 사항 | SFTP를 사용하려면 SSH 서버가 설치되어 있어야 합니다. | FTP 서버는 별도로 설정할 필요가 있습니다. |
Ⅴ. SFTP, FTP 툴
대표적으로 WinSCP, FileZila, 알FTP 등이 있음
'어플리케이션' 카테고리의 다른 글
사이버 공격 현황과 사이버 킬 체인에 대해 알아보겠습니다. (0) | 2024.03.04 |
---|---|
FIN_WAIT_2, CLOSE_WAIT 에 발생 원인 및 조치 방법에 대해 알아보겠습니다. (1) | 2024.02.16 |
SSL 인증서의 필요 및 등록 방법에 대해 알아보겠습니다. (0) | 2023.12.27 |
HTTP Tomcat 커넥터 설정(workers.properties)에 대해 알아보도록 하겠습니다. (1) | 2023.12.04 |
파일리스(fileless) 형태의 악성코드에 대해 알아보도록 하겠습니다. (0) | 2023.10.10 |