Windows Server 2016에서 SFTP 서버 설정하기

2025-10-19 · Uncategorized · 읽는데 12분

Windows Server 2016에서 SFTP 서버 설정하기
Windows Server 2016에서 SFTP 서버를 구축하는 과정은 여러 단계를 포함하며, 이를 통해 안전하고 효율적인 파일 전송 환경을 만들 수 있습니다. 본 글에서는 OpenSSH를 이용하여 SFTP 서버를 설정하는 방법을 자세히 설명하겠습니다.

각 단계별로 필요한 정보와 절차를 정리하여, 사용자 여러분이 쉽게 따라 할 수 있도록 돕겠습니다.

썸네일

OpenSSH 다운로드 및 설치

OpenSSH 다운로드

OpenSSH는 SFTP 서버를 구현하기 위한 핵심 소프트웨어로, Windows Server 2016에서도 사용할 수 있습니다. 아래의 절차를 통해 OpenSSH를 다운로드하고 설치하는 방법을 안내드립니다.

  1. OpenSSH 패키지 다운로드

OpenSSH의 최신 릴리스를 다운로드하기 위해 GitHub의 OpenSSH for Windows 릴리스 페이지에 접속합니다. 해당 페이지에서 최신 버전의 OpenSSH-Win64.zip 파일을 찾고 다운로드합니다.

  1. 압축 해제 및 설치

다운로드한 OpenSSH-Win64.zip 파일의 압축을 해제합니다. 예를 들어, C:\Program Files\OpenSSH 디렉토리에 압축을 해제합니다.

이후 관리자 권한으로 PowerShell을 열고, 다음과 같은 명령어를 입력하여 OpenSSH를 설치합니다.

powershell cd 'C:\Program Files\OpenSSH' .\install-sshd.ps1

  1. sshd 및 ssh-agent 서비스 시작 및 설정

OpenSSH 설치가 완료되면, sshd(SSH Daemon)와 ssh-agent 서비스를 시작하고 자동으로 실행되도록 설정해야 합니다. 아래의 명령어를 PowerShell에 입력합니다.

powershell Start-Service sshd Start-Service ssh-agent Set-Service -Name sshd -StartupType 'Automatic' Set-Service -Name ssh-agent -StartupType 'Automatic'

  1. 방화벽 규칙 추가

SFTP 서버에 접근할 수 있도록 방화벽 규칙을 추가해야 합니다. 아래의 명령어를 통해 TCP 포트 22에 대한 인바운드 규칙을 생성합니다.

powershell New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

이 과정을 통해 OpenSSH를 성공적으로 설치하고, SFTP 서버가 기본적으로 작동할 수 있는 환경을 마련하게 됩니다.

단계설명
1OpenSSH 패키지 다운로드
2압축 해제 및 설치
3sshd 및 ssh-agent 서비스 시작
4방화벽 규칙 추가

사용자 설정

압축 해제

SFTP 서버를 운영하기 위해서는 사용자 계정을 설정하고, 파일에 접근할 수 있는 권한을 부여해야 합니다. 아래에 그 과정을 상세히 설명하겠습니다.

  1. 홈 디렉토리 생성

각 사용자마다 파일을 저장할 홈 디렉토리를 생성해야 합니다. 예를 들어, 사용자의 이름이 username이라면 C:\SFTP\username 폴더를 생성합니다.

PowerShell에서 다음 명령어를 입력하여 디렉토리를 생성합니다.

powershell New-Item -ItemType Directory -Path "C:\SFTP\username"

  1. 권한 설정

생성한 홈 디렉토리에 대해 해당 사용자에게 읽기 및 쓰기 권한을 부여해야 합니다. 아래의 명령어를 통해 권한을 설정합니다.

powershell icacls "C:\SFTP\username" /grant username:F

이 단계에서 username은 실제 사용자 계정으로 바꾸어 입력해야 합니다.

  1. 사용자 계정 생성

SFTP를 이용할 사용자를 추가하기 위해 Windows 사용자 계정을 생성해야 합니다. PowerShell에서 다음 명령어를 입력하여 사용자 계정을 추가합니다.

powershell New-LocalUser "username" -Password (ConvertTo-SecureString "비밀번호" -AsPlainText -Force) -FullName "사용자 이름" -Description "SFTP 사용자"

비밀번호와 사용자 이름은 필요에 따라 변경하실 수 있습니다.

  1. 사용자 그룹 설정

SFTP 서버에 접속할 수 있는 사용자 그룹을 설정할 수 있습니다. 이를 통해 여러 사용자를 관리하고 효율적으로 권한을 부여할 수 있습니다.

필요에 따라 그룹을 생성하고 사용자를 추가해주시면 됩니다.

단계설명
1홈 디렉토리 생성
2권한 설정
3사용자 계정 생성
4사용자 그룹 설정

다른 내용도 보러가기 #1

SFTP 서버 설정 테스트

서비스 시작

SFTP 서버가 정상적으로 작동하는지 확인하기 위해 실제 클라이언트를 사용하여 테스트를 진행해야 합니다. 아래에 그 과정을 설명하겠습니다.

  1. SFTP 클라이언트 설치

WinSCP, FileZilla 등과 같은 SFTP 클라이언트를 설치합니다. 이러한 프로그램은 사용자 인터페이스가 직관적이어서 쉽게 사용할 수 있습니다.

  1. 서버 접속 설정

SFTP 클라이언트를 실행한 후, 아래의 정보로 서버에 접속할 수 있도록 설정합니다.

  • 서버 주소: 서버의 IP 주소 또는 도메인 이름
  • 포트: 22
  • 사용자 이름: Windows 사용자 계정 이름
  • 비밀번호: 해당 사용자 계정의 비밀번호

  • 연결 테스트

설정이 완료되면 "연결" 버튼을 클릭하여 SFTP 서버에 접속을 시도합니다. 만약 정상적으로 연결된다면, 서버가 올바르게 설정된 것입니다.

파일을 업로드하거나 다운로드하여 추가적으로 테스트를 진행할 수 있습니다.

  1. 문제 해결

연결이 실패하는 경우, 방화벽 설정이나 SSH 서비스가 정상적으로 작동하는지 확인해 보아야 합니다. sshd 서비스가 실행되고 있는지 PowerShell에서 다음 명령어로 확인할 수 있습니다.

powershell Get-Service -Name sshd

단계설명
1SFTP 클라이언트 설치
2서버 접속 설정
3연결 테스트
4문제 해결

추가 설정 (선택 사항)

SFTP 서버를 운영하면서 특정 사용자에게 더 강력한 보안 정책을 적용하고 싶다면, 추가적인 설정이 필요합니다. 이는 사용자의 접근 제한을 포함합니다.

  1. sshd_config 파일 편집

사용자별로 특정 디렉토리 외에는 접근하지 못하게 하려면 sshd_config 파일을 수정해야 합니다. 이 파일은 일반적으로 C:\ProgramData\ssh\sshd_config에 위치해 있습니다.

이 파일을 편집하기 위해 PowerShell 또는 텍스트 편집기를 사용합니다.

  1. 루트 디렉토리 제한 설정

파일의 끝에 아래와 같은 줄을 추가하여 특정 사용자의 루트 디렉토리를 제한합니다.

plaintext Match User username ChrootDirectory C:\SFTP\username ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no

여기서 username은 해당 사용자의 이름으로 바꾸어 입력해야 합니다.

  1. sshd 서비스 다시 시작

sshd_config 파일을 수정한 후에는 sshd 서비스를 다시 시작해야 변경 사항이 적용됩니다. PowerShell에서 다음 명령어를 입력합니다.

powershell Restart-Service sshd

  1. 보안 설정 강화

추가적으로, SFTP 서버의 보안을 강화하기 위해 비밀번호 정책을 설정하거나 공개 키 인증 방식을 사용하는 것도 좋은 방법입니다. 이를 통해 해킹 위험을 줄이고 사용자 신뢰성을 높일 수 있습니다.

단계설명
1sshd_config 파일 편집
2루트 디렉토리 제한 설정
3sshd 서비스 다시 시작
4보안 설정 강화

결론

Windows Server 2016에서 SFTP 서버를 설정하는 과정은 여러 단계를 통해 이루어지며, OpenSSH를 활용하여 안정적인 파일 전송 환경을 구축할 수 있습니다. 위의 절차를 따라 SFTP 서버를 설치하고 설정한 후, 필요한 경우 추가적인 보안 설정을 통해 시스템을 더욱 안전하게 운영할 수 있습니다.

SFTP 서버의 성공적인 구축은 효율적인 파일 관리와 보안 강화에 크게 기여할 것입니다.

같이 보면 좋은 글