소개
이 문서에서는 WSA(Web Security Appliance)에서 지원하는 세 가지 유형의 FTP 프록시에 대해 설명하고 액세스 로그의 예를 제공합니다.
WSA는 어떤 유형의 FTP 프록시를 지원합니까?
현재 Cisco WSA는 FTP 프록시의 세 가지 방법을 지원합니다.
- FTP over HTTP
- FTP over HTTP 터널링
- 네이티브 FTP
이러한 방법들은 서로 다른 방법으로 통신한다.
FTP over HTTP
이 방법은 Internet Explorer, Firefox 및 Opera와 같은 웹 브라우저에서 일반적으로 사용됩니다. "Client -> WSA" 통신은 HTTP에서 수행되고 "WSA -> Internet"은 통신하기 위해 FTP를 사용하는 독특한 기술입니다. WSA가 FTP 서버로부터 응답을 수신하면 WSA는 요청된 객체가 디렉토리인지 파일인지 결정합니다. 액세스되는 객체가 디렉토리인 경우 WSA는 HTML로 작성된 디렉토리 목록을 작성하여 클라이언트로 전달합니다. 요청된 객체가 파일인 경우 WSA는 파일을 다운로드하여 클라이언트에 스트리밍합니다.
다음은 FTP over HTTP의 액세스 로그에 표시되는 내용의 예입니다.
1219138948.126 192.168.10.100 TCP_MISS/200 1993 GET ftp://ftp.example.com/ - DIRECT/ftp.example.com text/html DEFAULT_CASE-FTPACCESS <nc,ns,0,,,-,-,,-,,-,,,-,-,,-,-,-,->
FTP over HTTP 터널링
이 방법을 사용하려면 Web Security Manager > Access Policies > Protocols and User Agents > HTTP CONNECT Ports 아래에 있는 대부분의 포트를 허용해야 합니다.일반적으로 FTP 서버는 49152~65535 사이의 포트를 열어야 하지만 대부분의 경우 포트 1024~65535를 사용합니다. 이러한 포트는 FTP 클라이언트가 데이터 채널을 설정할 때 PASV 명령을 실행할 때 사용됩니다.
모든 것이 제대로 작동하면 액세스 로그에 다음 두 개의 항목이 표시됩니다.
1219137634.898 192.168.10.100 TCP_MISS/0 160 CONNECT ftp.example.com:21/ - DIRECT/ftp.example.com - DEFAULT_CASE-FTPACCESS <nc,ns,0,,-,,-,,-,,-,,,-,,-,,-,,-> -> -
1219137698.512 287 192.168.10.100 TCP_MISS/0 240 CONNECT 192.168.10.10:57918/ - DIRECT/192.168.10.10 text/plain DEFAULT_CASE-FTPACCESS <nc,ns,0,,,,,,,-,-,,-,,-,-,-,-,-> - -> -
이러한 로그는 제어 채널(첫 번째 로그 라인)과 데이터 채널(두 번째 로그 라인)이 모두 성공적으로 설정되었음을 보여줍니다.
Filezilla는 이러한 종류의 트랜잭션을 지원하는 애플리케이션의 한 예입니다.Filezilla에서 이 기능을 활성화하려면 [편집] > [설정] > [프록시 설정]을 선택하고 프록시 유형을 HTTP 1.1로 설정합니다. 필요한 경우 다른 필요한 세부 정보를 입력합니다.
이 두 가지 방법 중 하나에서 클라이언트 - WSA는 프록시 포트만 열고 WSA만 있으면 됩니다. 인터넷에 모든 아웃바운드 포트를 열어야 합니다.
네이티브 FTP
이 방법으로 FTP 클라이언트는 프록시가 투명 모드 또는 명시적 모드에서 구현되었는지 여부에 따라 각각 포트 21 또는 포트 8021의 WSA에 연결됩니다.FTP 클라이언트와 WSA 간의 통신은 전적으로 FTP를 기반으로 합니다.네이티브 FTP의 경우 FTP 프록시 로그에서 연결 세부 정보를 볼 수 있습니다.그러나 실제 파일 전송 및 디렉터리 목록은 액세스 로그에서 계속 볼 수 있습니다.
다음은 Native FTP용 액세스 로그에 표시되는 몇 가지 예입니다.
1340084525.556 2808 192.168.10.100 TCP_MISS/226 2790 RETR ftp://ftp.example.com/examplefile.txt - DIRECT/ftp.example.com text/plain DEFAULT_CASE-FTPACCESS <nc,ns,0,,,,,,-,-,,-,,-,-,-,-,-,-,->,-> -> - -> -
1340084512.590 1013 192.168.10.100 TCP_MISS/230 27 FTP_CONNECT tunnel://ftp.example.com/ - DIRECT/ftp.example.com - DEFAULT_CASE-FTPACCESS <nc,ns,0,,,-,,,-,,,-,,,-,-,,-> -
1340084514.016 192.168.10.100 TCP_MISS/226 413 MLSD ftp://ftp.example.com/ - DIRECT/ftp.example.com text/plain DEFAULT_CASE-FTPACCESS <nc,ns,0,,,-,,-,,-,,,,-,,-,,-,,-,,,,-> -> - -> -