Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

FTP와 FTPS 파일 수집

FTP/FTPS 커넥터는 서버 폴더의 파일을 Foundry 데이터셋으로 수집합니다. 원천 탐색, 대량 가져오기와 증분 수집을 일반 제공(GA)합니다. 파일 형식을 보존하고 스키마는 자동 적용하지 않으므로 수집 후 스키마를 설정하거나 하위 변환에서 파일을 해석합니다.

파일 크기 자체의 한도는 없지만 대규모 전송은 네트워크 문제로 실패할 수 있습니다. Foundry 워커에서 이틀 넘게 실행되는 동기화는 중단됩니다. 작은 파일과 실행당 제한된 파일 수를 사용하고 더 자주 실행하는 구성을 검토합니다.

소스와 인증

Data Connection의 +New Source에서 FTP/FTPS를 선택합니다. 온프레미스 FTP 서버에는 Foundry 워커와 에이전트 프록시 정책을 사용하는 방식이 권장됩니다.

Username과 Password로 로그인합니다. 익명 로그인을 허용하는 서버에서는 Password를 비울 수 있으므로 서버 관리자에게 조건을 확인합니다. 인증 사용자가 연결의 루트 디렉터리에 접근할 권한이 없으면 연결이 실패할 수 있습니다.

제어 연결과 데이터 연결

FTP는 제어(CONTROL) 연결과 데이터(DATA) 연결을 따로 사용합니다. 제어 연결은 클라이언트에서 서버로 시작합니다. 데이터 연결의 방향은 모드에 따라 다릅니다.

모드데이터 연결 방향제약
PASSIVE클라이언트에서 서버로 시작합니다.권장 방식이며 제어 포트와 서버의 데이터 포트 범위를 허용해야 합니다.
ACTIVE서버에서 클라이언트로 시작합니다.양방향 연결이 필요하며 에이전트 연결에서만 가능합니다.

기본 포트는 FTP 21, 명시적 FTPS 21, 암시적 FTPS 990입니다. 데이터 포트 범위는 서버 관리자가 정하며 1024~1123은 예시 범위입니다.

Foundry 워커에서는 제어 포트용 단일 포트 정책과 데이터 전송용 포트 범위 정책을 각각 구성하는 것이 권장됩니다. 하나의 도메인이 여러 도메인이나 서버로 해석되면 관련 도메인과 IP를 모두 허용해야 합니다. 실제 호스트에 dig를 수행하고 응답 영역에서 해석 결과를 확인할 수 있습니다.

TLS, 인증서와 호스트 이름

SSL 연결은 서버 인증서와 인증서 체인을 검증합니다. 일반적인 공인 인증서 체인은 기본 신뢰하지만 자체 서명 인증서나 방화벽의 TLS 중간 검사가 있으면 해당 인증서를 신뢰 구성에 추가해야 합니다. 서버는 전체 인증서 체인을 제공해야 합니다.

명시적 FTPS 서버의 체인을 확인할 때 사용하는 명령 형식은 다음과 같습니다. hostname과 port는 실제 대상 값으로 바꾸는 형식 표기입니다.

openssl s_client -connect {hostname}:{port} -showcerts -starttls ftp

에이전트를 사용하는 FTPS 연결에서는 서버 인증서를 에이전트 truststore에도 추가해야 합니다. Foundry는 외부 통신 경로에서 호스트 이름 검증을 시도하지만 FTP 트래픽은 검사할 수 없어 연결이 멈추거나 시간 초과가 발생할 수 있습니다. 외부 통신 정책이 올바른데 문제가 계속되면 적용한 정책 목록과 함께 문제를 보고하고, 필요한 정책의 호스트 이름 검증 처리 방법을 지원 담당자와 확인합니다.

서버가 명시적 SSL과 암시적 SSL 중 어느 방식을 사용하는지도 확인합니다. 기본 설정은 명시적 방식이며 포트 990 서버는 보통 암시적 방식을 사용합니다.

연결 설정

항목필수 여부기본값의미와 조건
URL필수미지정서버 URL입니다. ftp://server.name/folder/name처럼 디렉터리를 포함하면 그 위치가 연결 루트가 됩니다.
Configure client certificates and private key선택미지정추가 클라이언트 인증서와 private key를 구성합니다.
Configure server certificates선택미지정신뢰할 서버 인증서를 구성합니다.
Connection timeout선택30초입력 단위는 밀리초입니다.
Re-login time선택15분재로그인 간격이며 입력 단위는 분입니다.
File change timeout선택2초업로드 전에 파일이 변경되지 않아야 하는 기간이며 입력 단위는 밀리초입니다.
HTTP proxy URL선택미지정http:// 또는 https:// 프록시 URL입니다. 서버별 지원 차이가 있고 ACTIVE 모드에서는 사용할 수 없습니다.
SSL method선택EXPLICIT명시적 또는 암시적 FTPS 방식을 선택합니다.
Mode선택PASSIVEPASSIVE 또는 ACTIVE입니다.
Time zone선택커넥터 시간대FTP 서버의 시간대입니다. FTP 수정 시각에는 시간대가 없으므로 서버가 기본 시간대와 다르면 명시해야 합니다.
Timestamp format string선택MM-dd-yy hh:mma서버의 시각 문자열을 해석하는 형식입니다. 마지막 동기화 이후 변경 파일을 판단하는 데 사용합니다.
Control encoding선택US-ASCIIFTP 제어 메시지 인코딩입니다. 파일 이름의 인코딩이 서버 기본 파일시스템 인코딩과 다를 때 필요할 수 있습니다.
Keep alive선택false큰 파일을 내려받는 동안 FTP NOOP를 보내 제어 연결을 유지합니다. 모든 서버가 지원하지는 않습니다.

Windows FTP 서버의 파일 이름에는 일본어 windows-31j, 한국어 x-windows-949 인코딩을 사용하는 경우가 있습니다. 데이터 내용 인코딩과 제어 메시지의 파일 이름 인코딩을 구분합니다.

HTTP 프록시는 클라이언트가 외부에서 접속 가능한 포트를 열도록 요청하는 기능을 제공하지 않습니다. 따라서 서버가 클라이언트로 다시 연결해야 하는 ACTIVE 전송에는 사용할 수 없습니다.

문제 확인

에이전트 연결이 실패하면 에이전트에서 같은 설정으로 FTP/FTPS 클라이언트를 사용해 접속 조건을 확인합니다. 일반 클라이언트도 실패하면 네트워크, 인증과 서버 설정을 먼저 조사합니다.

FTP는 상태를 유지하는 프로토콜입니다. 외부 통신 프록시 앞에 부하 분산기가 있고 연속 요청의 출발 IP가 달라지면 동기화가 간헐적으로 실패할 수 있습니다.

자체 서명 인증서는 소스 truststore에 추가했는지 확인합니다. 서버가 TLS 1.1 같은 이전 TLS만 지원하면 실행 환경이 서버가 제시한 암호 모음을 허용하지 않을 수 있습니다. 이 경우 Palantir 지원과 대체 연결 구성을 검토합니다.