파일 전송 · 1 min read · Nov 07, 2025
OpenSSH를 사용하여 파일 업로드를 위한 SFTP 설정하기
OpenSSH를 사용하여 파일 업로드를 위한 SFTP 설정하기
보안 파일 전송은 너무 쉽기 때문에 주목받지 못하는 경우가 많습니다. 특별한 프로그램이나 클라이언트 없이 안전한 파일 전송을 위해서는 OpenSSH 서버가 설치되고 실행되고 있는 것만 필요합니다. 로그인할 수 있는 모든 계정에서 사용할 수 있는 내장 SFTP 하위 시스템이 있습니다. 다시 말해, 기본 SFTP 접근을 위해서는 SSH를 통해 접근 가능한 계정만 있으면 됩니다.
다시 말해, 기본 SFTP 업로드 및 다운로드를 위해서는 기본 OpenSSH 설치에서 아무것도 변경할 필요가 없습니다. 이미 사용 준비가 되어 있습니다.
복잡성 추가 - 셸 접근 없이 SFTP 계정 만들기
셸 접근을 제거하면서도 SFTP 접근을 허용하는 것은 OpenSSH 서버가 이미 설치되어 있다면 세 단계로 간단하게 할 수 있습니다.
- 사용자 그룹 생성, 예: sftponly
- 해당 그룹에 사용자 추가
- /etc/ssh/sshd_config에서 sshd의 구성에 해당하는 Match 지시어 추가:
Subsystem sftp internal-sftp Match Group sftponly AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
더 많은 복잡성 - 셸 접근 없이 chroot된 SFTP 계정 만들기
SFTP 사용자의 홈 디렉토리의 chroot 감옥을 만드는 것도 OpenSSH에서 설정하기가 쉽습니다.
- 사용자 그룹 생성, 예: sftponly
- 해당 그룹에 사용자 추가
- /etc/ssh/sshd_config에서 sshd의 구성에 해당하는 Match 지시어 추가:
Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory %h AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
그렇게 간단합니다.
FTP 및 FTPS와 작별할 시간
“FTP”라는 이름은 종종 특별한 클라이언트를 사용한 파일 전송을 의미하는 잘못된 용도로 사용됩니다. 그러나 이는 특정 프로토콜입니다.
일반 FTP는 안전하지 않습니다. 세션 전체가 암호화 없이 진행되며, 시작 시 사용자 이름과 비밀번호에서 데이터 전송까지 포함됩니다. 이를 사용하는 모든 계정은 손상된 것으로 간주될 수 있습니다. 안전하지 않은 것은 프로토콜 자체입니다. FTP는 특별한 서버 소프트웨어를 추가하고 구성해야 하며, 대부분의 서버는 일반적으로 SSH를 실행하고 있으므로 SFTP를 사용할 수 있습니다.
SSL/TLS를 통해 터널링된 FTP는 FTPS입니다. 반면 SFTP는 안전한 파일 전송을 위해 처음부터 설계된 새로운 프로토콜입니다. FTPS는 FTP보다 더 많은 설정이 필요하지만, SFTP는 OpenSSH 서버가 있는 곳에서는 즉시 사용할 수 있습니다.
결론
추가적인 노력 없이도 SFTP는 OpenSSH 서버가 실행되고 있는 곳에서 이미 사용할 수 있습니다. 최소한의 변경으로 SFTP 사용자에 대한 셸 접근을 끌 수 있으며, 심지어 chroot도 가능합니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.