OpenSSH를 사용하여 Windows에 SFTP/SSH 서버 설치

Adobe Campaign 및 Adobe Campaign Classic에서 OpenSSH를 사용하여 Windows에 SFTP/SSH 서버를 설치하는 방법을 알아봅니다.

설명 description

환경
Adobe Campaign (AC)
Adobe Campaign Classic (ACC)

문제
이 문서의 목적은 로컬 컴퓨터에 sftp/ssh 서버를 설치하는 방법을 설명하는 것입니다.

해결 방법 resolution

SFTP/SSH 서버 설치:

Windows 10의 경우:

  • 설정 앱에서 > 앱 및 기능 > 선택적 기능 관리(으)로 이동합니다.
  • "OpenSSH 서버" 기능을 찾아 확장한 다음 설치 ​를 선택합니다.

바이너리가 %WINDIR%\System32\OpenSSH 에 설치되어 있습니다. 구성 파일(sshd_config) 및 호스트 키가 to %ProgramData%\ssh 에 설치되어 있습니다(서버를 처음 시작한 후에만).

다음 수동 설치를 사용하여 Windows 10에 내장된 버전보다 최신 버전의 OpenSSH를 설치할 수 있습니다.

이전 버전의 Windows:

  • 최신 Windows용 OpenSSH 바이너리 다운로드(패키지 OpenSSH-Win64.zip 또는 OpenSSH-Win32.zip)
  • 관리자는 C:\Program Files\OpenSSH에 패키지를 추출합니다.
  • 관리자로서 sshdssh-agent 서비스를 설치하십시오.

powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1

SSH 서버 구성

양식 상단

양식 하단

  • Windows 방화벽에서 SSH 서버에 대한 수신 연결 허용:

    • 다음 PowerShell 명령(Windows 8 및 2012 이상만 해당)을 관리자로 실행합니다.

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

    • 또는 Campaign 컨트롤 패널 > 시스템 및 보안 > Windows 방화벽​ 1>고급 설정 > 인바운드 규칙(으)로 이동하여 포트 22에 대한 새 규칙을 추가합니다.
  • 서비스를 시작하고 자동 시작을 구성합니다.

    • Campaign 컨트롤 패널 > 시스템 및 보안 > 관리 도구(으)로 이동하여 서비스 ​를 여십시오. OpenSSH SSH 서버 서비스를 찾습니다.
    • 컴퓨터가 시작될 때 서버가 자동으로 시작되도록 하려면 작업 > 속성(으)로 이동하십시오. 속성 대화 상자에서 시작 유형 ​을 자동(으)로 변경하고 확인합니다.
    • 서비스 시작 ​을 클릭하여 OpenSSH SSH Server 서비스를 시작합니다.

참고: OpenSSH 서버 https://www.youtube.com/watch?v=0G1Qh-_jBTQ를 사용 및 실행하는 방법에 대한 이 비디오 자습서를 참조할 수 있습니다.

SSH 공개 키 인증 설정

*nix OpenSSH 서버의 SSH 공개 키 인증 설정에 대한 일반 안내서를 따르십시오. 차이점은 다음과 같습니다.

  • Windows 계정 프로필 폴더(일반적으로 C:\Users\username\.ssh에 있음)에 authorized_keys 파일에 대한 .ssh 폴더를 만듭니다.
  • .ssh 폴더 및 authorized_keys 파일에 대한 사용 권한의 경우 Windows ACL 사용 권한이 문제가 되며 단순 *nix 사용 권한이 아닙니다. 각 Windows 계정만 폴더 및 파일에 대한 쓰기 액세스 권한을 갖도록 ACL을 설정합니다(각 계정을 사용하여 로그인하는 동안 폴더 및 파일을 만드는 경우 기본 액세스 수준은 무엇입니까?).

서버에 연결 중

호스트 키 찾기

첫 번째 연결 전에 각 파일에 대해 ssh-keygen.exe을(를) 사용하여 서버의 호스트 키의 지문을 확인합니다.

Windows 명령 프롬프트에서 을(를) 사용합니다.

for %f in (%ProgramData%\ssh\ssh_host_*_key) do @%WINDIR%\System32\OpenSSH\ssh-keygen.exe -l -f "%f"

필요한 경우 바꾸기​%WINDIR%\System32바꾸기​%ProgramFiles%.

PowerShell에서 을(를) 사용합니다.

Get-ChildItem $env:ProgramData\ssh\ssh_host_*_key | ForEach-Object { . $env:WINDIR\System32\OpenSSH\ssh-keygen.exe -l -f $_ }

필요한 경우 바꾸기​$env:WINDIR\System32바꾸기​$env:ProgramFiles.

다음과 같은 출력을 받습니다.

C:\Windows\System32\OpenSSH>for %f in (%ProgramData%\ssh\ssh_host_*_key) do @%WINDIR%\System32\OpenSSH\ssh-keygen.exe -l -f "%f"
1024 SHA256:K1kYcE7GHAqHLNPBaGVLOYBQif04VLOQN9kDbiLW/eE martin@example (DSA)
256 SHA256:7pFXY/Ad3itb6+fLlNwU3zc6X6o/ZmV3/mfyRnE46xg martin@example (ECDSA)
256 SHA256:KFi18tCRGsQmxMPioKvg0flaFI9aI/ebXfIDIOgIVGU martin@example (ED25519)
2048 SHA256:z6YYzqGiAb1FN55jOf/f4fqR1IJvpXlKxaZXRtP2mX8 martin@example (RSA)

연결 중

WinSCP를 시작합니다. 로그인 대화 상자가 나타납니다. 대화 상자에서:

  • 새 사이트 노드가 선택되었는지 확인하십시오.

  • 새 사이트 노드 ​에서 SFTP 프로토콜을 선택했는지 확인하십시오.

  • 호스트 이름 상자에 컴퓨터/서버 IP 주소(또는 호스트 이름)를 입력하십시오.

  • 사용자 이름 상자에 Windows 계정 이름을 입력하십시오. 도메인에서 실행 중인 경우 user@domain 형식으로 입력해야 할 수 있습니다.

  • 공개 키 인증의 경우

  • 암호 인증의 경우:

    • 암호 상자에 Windows 계정 암호를 입력하십시오.
    • Windows 계정에 암호가 없으면 암호 인증(빈 암호)으로 인증할 수 없습니다. 공개 키 인증을 사용해야 합니다.
  • 저장 단추를 사용하여 사이트 설정을 저장합니다.

  • 로그인 단추를 사용하여 로그인합니다.

  • 지문을 이전에 수집된 항목과 비교하여 호스트 키를 확인합니다(위 참조).

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f