- SFTP란?
SFTP는 SSH 기반의 파일 전송 프로토콜로 네트워크 상에서 데이터를 암호화하여
안전하게 파일을 전송하거나 관리할 수 있도록 설계된 프로토콜이다.
전통적인 FTP(File Transfer Protocol)의 보안 문제를 해결하기 위해 등장했으며,
SSH 프로토콜을 통해 파일 전송을 수행한다.
- SFTP의 주요특징
1. 보안성
SSH를 사용해 모든 데이터 전송(파일, 명령, 인증 정보 등)을 암호화한다.
데이터가 암호화되므로 중간에서 도청이나 정보 탈취를 방지할 수 있다.
2. 포트
SFTP는 기본적으로 SSH와 동일한 포트(22번)를 사용한다.
따로 설정하지 않아도 SSH서버가 설치되어 있으면 SFTP 기능도 함께 제공된다.
3. 기능
파일 업로드 및 다운로드
디렉토리 생성, 삭제, 이동
파일 이름 변경
파일 및 디렉토리 권한 변경 등
4. 차이점 FTP vs SFTP
FTP
보안: 암호화 없음
포트: 기본 포트 21사용
속도: 상대적으로 빠름
설정: 별도 FTP 서버 필요
SFTP
보안: SSH를 통한 암호화
포트: 기본 포트 22사용
속도: 암호화로 인해 약간 느림
설정: SSH 서버만 있으면 설정 불필요
- SFTP 명령어 사용법
1. SFTP로 서버에 접속
SFTP 클라이언트에서 원격 서버로 연결
sftp username@server
2. 로컬에서 서버로 파일 업로드
put /local/path/file.txt/ remote/path/
/local/path/file.txt: 업로드할 파일의 경로
/remote/path/: 서버에서 저장할 위치
3. 서버에서 로컬로 파일 다운로드
get /remote/path/file.txt /local/path/
/remote/path/file.txt : 서버에서 다운받을 파일경로
/local/path/ : 로컬에서 저장할 위치
- 기본 명령어
접속 후 사용할수 있는 명령어
ls: 현재 디렉토리의 파일 목록보기
cd <directory> : 디렉토리 변경
pwd : 현재 경로 표시
get<file> : 서버에서 로컬로 파일 다운로드
put<file>: 로컬에서 서버로 파일 업로드
mkdir<dir>: 디렉토리 생성
rm<file> : 파일 삭제
exit: SFTP 세션 종료
- SFTP의 장점
1. 안전한 파일 전송
데이터와 인증 정보가 암호화되어 네트워크 상의 위험으로부터 보호된다.
2. 통합된 SSH기반
별도의 파일 전송 서버 설치가 필요 없으며 SSH 서버만 있으면 바로 사용할 수 있다.
3. 다양한 파일 관리 기능
단순 파일 전송뿐만 아니라 디렉토리 생성, 삭제, 권한 변경 등의 작업도 지원한다.
- SFTP를 사용할수있는 도구
1. CLI(Command Line Interface)
Linux 및 macOs에서 기본적으로 제공하는 SFTP 명령어 사용
Windows에서는 PowerShell 또는 WSL 에서 사용가능
2. GUI 기반도구
FileZila: SFTP와 FPT를 지원하는 파일 관리 프로그램
WinSCP: Windows에서 사용하기 쉬운 SFTP 클라이언트
- 정리
SFTP는 간단하면서도 강력한 보안 파일 전송 도구로, 서버 관리나 파일 전송 시
자주 사용되는 프로토콜이다. GUI 도구를 사용하면 더 직관적으로 관리할 수 있으니
필요에 따라 CLI와 GUI를 병행해서 사용하는것이 좋다.
'개발학습기' 카테고리의 다른 글
| FTP(File Transfer Protocol) (0) | 2024.12.29 |
|---|---|
| 포트(Port) (0) | 2024.12.29 |
| SCP(Secure Copy Protocol) (0) | 2024.12.28 |
| SSH Server (1) | 2024.12.28 |
| 프로토콜(Protocol) (0) | 2024.12.28 |