보안 강화 검사 목록

다음 목록은 Tableau Server 설치의 보안("강화"개선을 위한 추천 항목을 제공합니다.

보안 업데이트 설치

보안 업데이트는 Tableau Server의 최신 버전과 유지 관리 릴리스(MR)에 포함되어 있습니다. 보안 업데이트를 패치로 설치할 수 없습니다. 대신 최신 보안 수정 사항으로 Tableau Server를 업데이트하려면 최신 버전 또는 MR로 업그레이드해야 합니다.

업그레이드 후에는 항상 이 항목의 최신 버전을 참조하십시오. 현재 버전은 항목 URL에 /current/가 포함되어 있습니다.

예를 들어 미국 버전 URL은 https://help.tableau.com/current/server/ko-kr/security_harden.htm입니다.

1. 현재 버전으로 업데이트

항상 최신 버전의 Tableau Server를 실행하는 것이 좋습니다. 또한 Tableau에서는 알려진 보안 취약성에 대한 픽스가 포함된 Tableau Server 유지 관리 릴리스를 주기적으로 게시합니다. (알려진 보안 취약성에 관한 정보는 Security Bulletins(보안 게시판) 페이지에서 찾을 수 있습니다.) 유지 관리 릴리스 알림을 검토하여 설치 여부를 결정하는 것이 좋습니다.

Tableau Server의 최신 버전 또는 유지 관리 릴리스를 받으려면 고객 포털(링크가 새 창에서 열림) 페이지를 방문하십시오.

2. 신뢰할 수 있는 올바른 인증서로 SSL/TLS 구성

Secure Sockets Layer(SSL/TLS)는 Tableau Server와의 통신 보안을 보호하는 필수적인 역할을 합니다. 신뢰할 수 있는 올바른 인증서(자체 서명된 인증서 아님)로 Tableau Server를 구성하여 Tableau Desktop, 휴대기기 및 웹 클라이언트에서 보안된 연결로 서버에 연결할 수 있도록 하십시오. 자세한 내용은 SSL을 참조하십시오.

3. 이전 버전의 TLS 비활성화

Tableau Server는 TLS를 사용하여 구성 요소와 외부 클라이언트 간의 많은 연결을 인증하고 암호화합니다. 브라우저, Tableau Desktop, Tableau Mobile와 같은 외부 클라이언트는 HTTPS를 통한 TLS를 사용하여 Tableau에 연결합니다. TLS(전송 계층 보안)는 SSL의 개선된 버전입니다. 사실 이전 버전의 SSL(SSL v2 및 SSL v3)은 더 이상 충분히 안전한 통신 표준으로 여겨지지 않습니다. 따라서 Tableau Server에서는 SSL v2 또는 SSL v3 프로토콜을 사용하는 외부 클라이언트 연결이 허용되지 않습니다.

외부 클라이언트에서 TLS v1.3 및 TLS v1.2를 사용하여 Tableau Server에 연결하도록 허용하는 것이 좋습니다.

TLS v1.2는 여전히 보안 프로토콜로 간주되고 있으며 많은 클라이언트(Tableau Desktop 포함)가 아직 TLS v1.3을 지원하지 않습니다.

TLS v1.3 지원 클라이언트는 TLS v1.2가 서버에서 지원되는 경우에도 TLS v1.3을 협상합니다.

다음 tsm 명령은 TLS v1.2 및 v1.3("all" 매개 변수 사용)을 활성화하고 SSL v2, SSL v3, TLS v1 및 TLS v1.1(지정된 프로토콜 앞에 빼기[-] 문자 추가)을 비활성화합니다. TLS v1.3은 아직 Tableau Server의 일부 구성 요소에서 지원되지 않습니다.

tsm configuration set -k ssl.protocols -v 'all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1'

tsm pending-changes apply

Tableau Server에서 SSL/TLS 세션에 사용하는 암호 그룹의 기본 목록을 수정할 수도 있습니다. 자세한 내용은 tsm configuration set 옵션에서 ssl.ciphersuite 섹션을 참조하십시오.

4. 내부 트래픽에 대해 SSL 암호화 구성

Postgres 리포지토리와 다른 서버 구성 요소 사이의 모든 트래픽을 SSL로 암호화하도록 Tableau Server를 구성합니다. 기본적으로 서버 구성 요소와 리포지토리 사이의 통신에는 SSL이 사용되지 않습니다. 단일 서버 설치의 경우에도 Tableau Server의 모든 인스턴스에 대해 내부 SSL을 사용하도록 설정하는 것이 좋습니다. 다중 노드 배포의 경우 내부 SSL을 사용하는 것이 특히 더 중요합니다. 내부 Postgres 통신에 대해 SSL 구성을 참조하십시오.

5. 방화벽 보호를 사용하도록 설정

Tableau Server는 보호되는 내부 네트워크 안에서 작동하도록 설계되었습니다.

중요: Tableau Server 또는 Tableau Server의 구성 요소를 인터넷 또는 DMZ에서 실행하지 마십시오. Tableau Server는 인터넷 방화벽으로 보호되는 회사 네트워크 안에서만 실행되어야 합니다. Tableau Server에 연결해야 하는 인터넷 클라이언트에 대해 역방향 프록시 솔루션을 구성하는 것이 좋습니다. 자세한 내용은 Tableau Server의 프록시 구성을 참조하십시오.

단일 및 다중 노드 배포에서 Tableau Server를 보호하려면 운영 체제에서 로컬 방화벽을 사용하도록 설정해야 합니다. Tableau Server의 분산(다중 노드) 설치에서는 노드 간 통신에 보안 통신이 사용되지 않습니다. 그러므로 Tableau Server를 호스팅하는 컴퓨터에서 방화벽을 사용하도록 설정해야 합니다. 로컬 방화벽 구성을 참조하십시오.

소극적인 공격자가 노드 간 통신을 관찰하지 못하도록 하려면 분리된 가상 LAN 또는 다른 네트워크 계층 보안 솔루션을 구성하십시오.

Tableau Server에 필요한 포트 및 서비스를 확인하려면 Tableau 서비스 관리자 포트를 참조하십시오.

6. 서버 컴퓨터 및 중요 디렉터리에 대한 액세스 제한

Tableau Server 구성 파일 및 로그 파일에는 공격자에게 가치가 있는 정보가 포함될 수 있습니다. 그러므로 Tableau Server를 실행하는 시스템에 대한 물리적 액세스를 제한해야 합니다. 또한 권한이 있는 신뢰할 수 있는 사용자만 /var/opt/tableau/tableau_server/디렉터리의 Tableau Server 파일에 액세스할 수 있도록 해야 합니다.

7. 암호 및 토큰 새로 생성

리포지토리 또는 캐시 서버와 통신하는 모든 Tableau Server 서비스는 먼저 비밀 토큰을 사용하여 인증해야 합니다. 비밀 토큰은 Tableau Server 설치 중에 생성됩니다. 내부 SSL이 Postgres 리포지토리에 대한 트래픽을 암호화할 때 사용하는 암호화 키도 설치 중에 생성됩니다.

Tableau Server를 설치한 후 배포에 사용할 새 암호화 키를 생성하는 것이 좋습니다.

이러한 보안 자산은 tsm security regenerate-internal-tokens 명령을 사용하여 다시 생성할 수 있습니다.

다음 명령을 실행합니다.

tsm security regenerate-internal-tokens

tsm pending-changes apply

8. 사용하지 않는 서비스 비활성화

Tableau Server의 공격 표면을 최소화하기 위해 필요하지 않은 모든 연결 지점을 비활성화합니다.

JMX 서비스

JMX는 기본적으로 사용하지 않도록 설정되어 있습니다. 사용하도록 설정되어 있지만 사용하지 않는 경우 다음 명령을 사용하여 비활성화해야 합니다.

tsm configuration set -k service.jmx_enabled -v false

tsm pending-changes apply

9. 세션 수명 구성 확인

기본적으로 Tableau Server에는 절대적인 세션 시간 제한이 없습니다. 즉, Tableau Server 비활성 시간 제한이 초과되지 않는 경우 브라우저에 기반한 클라이언트(웹 작성) 세션이 무기한으로 열려 있게 됩니다. 기본 비활성 시간 제한은 240분입니다.

보안 정책에 의해 요구되는 경우 절대적인 세션 시간 제한을 설정할 수 있습니다. 조직에서 가장 오래 실행되는 추출 업로드 또는 통합 문서 게시 작업을 허용하는 범위에서 절대적인 세션 시간 제한을 설정하십시오. 세션 시간 제한을 너무 짧게 설정하면 오래 실행되는 작업에서 추출 및 게시 오류가 발생할 수 있습니다.

세션 시간 제한을 설정하려면 다음 명령을 실행합니다.

tsm configuration set -k wgserver.session.apply_lifetime_limit -v true

tsm configuration set -k wgserver.session.lifetime_limit -v value, 여기서 value는 분 수입니다. 기본값은 1440분(24시간)입니다.

tsm configuration set -k wgserver.session.idle_limit -v value, 여기서 value는 분 수입니다. 기본값은 240분입니다.

tsm pending-changes apply

연결된 클라이언트(Tableau Desktop, Tableau Mobile, Tableau Prep Builder, Bridge 및 개인용 액세스 토큰)에 대한 세션은 OAuth 토큰을 사용하여 세션을 다시 설정함으로써 사용자를 로그인 상태로 유지합니다. 모든 Tableau 클라이언트 세션이 위의 명령으로 제어되는 브라우저에 기반한 세션 제한에 의해서만 제어되도록 하려면 이 동작을 사용하지 않도록 설정할 수 있습니다. 자세한 내용은 자동 클라이언트 인증 사용 안 함을 참조하십시오.

10. 파일 기반 데이터 원본에 대한 서버 액세스 허용 목록 구성

기본적으로 Tableau Server에서는 권한 있는 Tableau Server 사용자가 서버의 파일을 파일 기반 데이터 원본(예: 스프레드시트)으로 사용하여 통합 문서를 작성하는 것이 허용됩니다. 이 시나리오에서 파일은 tableau 시스템 계정으로 액세스됩니다.

파일에 대한 원치 않는 액세스를 방지하려면 허용 목록 기능을 구성하는 것이 좋습니다. 이 기능을 구성하면 데이터 파일을 호스팅하는 디렉터리 경로로 tableau 계정의 액세스를 제한할 수 있습니다.

  1. Tableau Server를 실행하는 컴퓨터에서 데이터 원본 파일을 호스팅할 디렉터리를 식별합니다.

    중요 이 절차에서 지정하는 파일 경로가 서버에 있는지 확인하십시오. 컴퓨터를 시작할 때 경로가 없으면 Tableau Server가 시작되지 않습니다.

  2. 다음 명령을 실행합니다.

    tsm configuration set -k native_api.allowed_paths -v "path" , 여기서 path는 액세스 허용 목록에 추가할 디렉터리입니다. 지정한 경로의 모든 하위 디렉터리가 액세스 허용 목록에 추가됩니다. 여러 경로를 지정하려는 경우 다음 예에서와 같이 세미콜론으로 구분합니다.

    tsm configuration set -k native_api.allowed_paths -v "/datasources;/HR/data"

    tsm pending-changes apply

11. 웹 브라우저 클라이언트에 대해 HTTP Strict Transport Security 사용

HSTS(HTTP Strict Transport Security)는 Tableau Server와 같은 웹 응용 프로그램 서비스에 구성된 정책입니다. 적합한 브라우저가 HSTS를 실행하는 웹 응용 프로그램을 발견한 경우 모든 서비스 통신은 보안(HTTPS) 연결을 통해 이루어져야 합니다. HSTS는 주요 브라우저에서 지원됩니다.

HSTS가 작동하는 방식과 이를 지원하는 브라우저에 대한 자세한 내용은 Open Web Application Security Project 웹 페이지 HTTP Strict Transport Security 요약 시트(영어)(링크가 새 창에서 열림)를 참조하십시오.

HSTS를 사용하도록 설정하려면 Tableau Server에서 다음 명령을 실행합니다.

tsm configuration set -k gateway.http.hsts -v true

기본적으로 HSTS 정책은 1년(31536000초) 동안 설정됩니다. 이 기간은 브라우저가 HTTPS를 통해 서버에 액세스하는 시간을 지정합니다. HSTS의 초기 배포 단계에서는 짧은 max-age를 설정하는 것이 좋습니다. 이 기간을 변경하려면 tsm configuration set -k gateway.http.hsts_options -v max-age=<seconds> 명령을 실행합니다. 예를 들어 HSTS 정책 기간을 30일로 설정하려면 tsm configuration set -k gateway.http.hsts_options -v max-age=2592000을 입력합니다.

tsm pending-changes apply

12. 게스트 액세스 사용 안 함

Tableau Server의 코어 기반 라이선스에는 조직의 모든 사용자가 웹 페이지에 내장된 Tableau 뷰를 보고 상호 작용할 수 있도록 하는 게스트 사용자 옵션이 포함됩니다.

게스트 사용자 액세스는 코어 기반 라이선스를 사용하여 배포된 Tableau Server에서 기본적으로 사용하도록 설정됩니다.

게스트 액세스를 통해 사용자는 내장된 뷰를 볼 수 있습니다. 게스트 사용자는 Tableau Server 인터페이스를 탐색할 수 없으며 뷰에 사용되는 서버 인터페이스 요소(사용자 이름, 계정 설정, 주석 등)를 볼 수 없습니다.

조직에서 코어 라이선스를 사용하여 Tableau Server를 배포했지만 게스트 액세스가 필요하지 않은 경우 게스트 액세스를 사용하지 않도록 설정합니다.

게스트 액세스는 서버 또는 사이트 수준에서 사용하지 않도록 설정할 수 있습니다.

서버 또는 사이트 수준에서 게스트 계정을 사용하지 않도록 설정하려면 서버 관리자여야 합니다.

서버 수준에서 게스트 액세스를 사용하지 않도록 설정하려면

  1. 사이트 메뉴에서 모든 사이트 관리를 클릭한 다음 설정 > 일반을 클릭합니다.

  2. 게스트 액세스에 대해 게스트 계정 사용 확인란을 선택 취소합니다.

  3. 저장을 클릭합니다.

사이트에 대한 게스트 액세스를 사용하지 않도록 설정하려면

  1. 사이트 메뉴에서 사이트를 선택합니다.

  2. 설정을 클릭하고 설정 페이지에서 게스트 계정 사용 확인란을 선택 취소합니다.

자세한 내용은 게스트 사용자를 참조하십시오.

13. referrer-policy HTTP 헤더를 'same-origin'으로 설정

2019.2부터 Tableau Server에는 Referrer-Policy HTTP 헤더 동작을 구성하는 기능이 포함되어 있습니다. 이 정책은 모든 "보안" 연결에 대한 원본 URL을 포함하는 기본 동작에서 사용하도록 설정되며(no-referrer-when-downgrade), 이러한 연결은 원래 리퍼러 정보를 같은 연결(HTTP-HTTP)이나 보다 안전한 연결(HTTP-HTTPS)로만 전송합니다.

하지만 리퍼러 정보를 동일한 사이트 원본으로만 전송하도록 이 값을 same-origin으로 설정하는 것이 좋습니다. 사이트 외부의 요청은 리퍼러 정보를 수신하지 않습니다.

referrer-policy를 same-origin으로 업데이트하려면 다음 명령을 실행합니다.

tsm configuration set -k gateway.http.referrer_policy -v same-origin

tsm pending-changes apply

추가 헤더를 구성하여 보안을 향상시키는 방법에 대한 자세한 내용은 HTTP 응답 헤더를 참조하십시오.

14. SMTP 연결을 위한 TLS 구성

2019.4부터 Tableau Server에는 SMTP 연결을 위한 TLS를 구성하는 기능이 포함됩니다. Tableau Server는 STARTTLS(Opportunistic 또는 Explicit TLS)만 지원합니다.

Tableau Server는 필요한 경우 메일 서버에 연결하도록 구성할 수 있습니다. SMTP를 구성한 후 서버 관리자에게 시스템 장애에 대한 이메일을 보내고, 서버 사용자에게 구독이 설정된 뷰 및 데이터 기반 알림에 대한 이메일을 보내도록 Tableau Server를 구성할 수 있습니다.

SMTP를 위한 TLS를 구성하려면:

  1. 호환 인증서를 Tableau Server에 업로드합니다. tsm security custom-cert add를 참조하십시오.
  2. TSM CLI를 사용하여 TLS 연결을 구성합니다.

    다음 TSM 명령을 실행하여 SMTP 서버에 대한 TLS 연결을 실행 및 적용하고 인증서 확인을 사용하도록 설정합니다.

    tsm configuration set -k svcmonitor.notification.smtp.ssl_enabled -v true

    tsm configuration set -k svcmonitor.notification.smtp.ssl_required -v true

    tsm configuration set -k svcmonitor.notification.smtp.ssl_check_server_identity -v true

    기본적으로 Tableau Server는 TLS 버전 1, 1.1 및 1.2를 지원하지만 SMTP 서버가 지원하는 가장 높은 TLS 버전을 지정하는 것이 좋습니다.

    다음 명령을 실행하여 버전을 설정합니다. 유효한 값은 SSLv2Hello, SSLv3, TLSv1, TLSv1.1TLSv1.2입니다. 다음 예제에서는 TLS 버전을 버전 1.2로 설정합니다.

    tsm configuration set -k svcmonitor.notification.smtp.ssl_versions -v "TLSv1.2"

    다른 TLS 구성 옵션에 대한 자세한 내용은 SMTP 설정 구성을 참조하십시오.

  3. 변경 사항을 적용하려면 Tableau Server를 다시 시작해야 합니다. 다음 명령을 실행합니다.

    tsm pending-changes apply

15. LDAP를 위한 SSL 구성

Tableau Server 배포가 범용 LDAP 외부 ID 저장소를 사용하도록 구성된 경우 SSL을 구성하여 Tableau Server와 LDAP 서버 간에서 인증을 보호하는 것이 좋습니다. 자세한 내용은 LDAP 외부 ID 저장소에 암호화된 채널 구성을 참조하십시오.

Tableau Server 배포가 Active Directory를 사용하도록 구성된 경우 Kerberos를 사용하도록 설정하여 인증 트래픽을 보호하는 것이 좋습니다. 자세한 내용은 Kerberos를 참조하십시오.

변경 목록

Date Change
May 2018 Added clarification: Do not disable REST API in organizations that are running Tableau Prep.
May 2019 Added recommendation for referrer-policy HTTP header.
June 2019 Removed recommendation to disable Triple-DES. As of version 2019.3, Triple-DES is no longer a default supported cipher for SSL. See 변경된 기능 - 업그레이드하기 전에 알아야 할 사항.
January 2020 Added recommendation to configure TLS for SMTP.
February 2020 Added recommendation to configure SSL for LDAP server.
May 2020 Added TLS v1.3 to the disabled list of TLS ciphers. Added clarification to introduction about topic versioning.
October 2020 Added TLS v1.3 as a default supported cipher.
January 2021 Added clarification: All products enabled by the Data Management license require REST API.
February 2021 Removed recommendation to disable REST API. The API is now used internally by Tableau Server and disabling it may limit functionality.
피드백을 제공해 주셔서 감사합니다!