MicroStrategy ONE
PostgreSQL 및 Platform Analytics 소비자에 대한 SSL 구성
Platform Analytics 소비자와 PostgreSQL 데이터베이스 간의 통신은 암호화 및 인증에 SSL을 사용하도록 구성할 수 있습니다. 자세한 내용은 다음을 참조하십시오. PostgreSQL 설명서 .
- Windows
- Linux
PostgreSQL 서버 측 구성
있어야 합니다. OpenSsl버전 1.1.0 이상이 설치되어 있습니다.
-
실행
OpenSsl 애플리케이션을 관리자로 실행하여 개인 키를 생성하십시오. 개인 키를 생성할 때 암호를 제공해야 합니다.openssl 명령이 OpenSsl 애플리케이션과 함께 실행되므로 이(가) 모든 줄의 시작 부분에 포함되지 않습니다. 인증서 및 키를 Unix 시스템에서 생성하는 경우 을(를) 포함해야 할 수 있습니다. openssl 을(를) 클릭합니다.
복사genrsa -des3 -out server.key 1024
rsa -in server.key -out server.key -
서버 인증서를 만듭니다.
서버 인증서를 성공적으로 생성하려면 OpenSsl 애플리케이션을 재시작해야 할 수 있습니다.
-subj 은(는) 정보 프롬프트를 방지하는 바로가기입니다.
-x509 은(는) 인증서 요청이 아닌 자체 서명 인증서를 생성합니다.
복사req -new -key server.key -days 3650 -out server.crt -x509 -subj "/CN=IP or HOSTNAME" -
명령 프롬프트 또는 파일 탐색기를 열고 서버 인증서가 있는 위치로 이동합니다.
-
새로 생성된 서버 인증서를 복사하여 인증 기관을 만듭니다.
복사copy server.crt root.crt -
다음을에 추가 postgres.conf 파일:
복사listen_addresses = '*' # what IP address(es) to listen on;다음의 주석 처리를 제거하고 변경합니다.
복사ssl = on
ssl_ca_file = '\\LOCATION_OF_FILE\\root.crt'
ssl_cert_file = '\\LOCATION_OF_FILE\\server.crt'
ssl_key_file = '\\LOCATION_OF_FILE\\server.key'
ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed SSL ciphers
ssl_prefer_server_ciphers = on -
에서 pg_hba.conf 파일에서 다음을 추가 또는 수정합니다.
호스트 항목을 주석 처리해야 할 수 있습니다.
hostssl DB_username에 대해 SSL을 적용합니다.
clientcert=1 클라이언트 인증(양방향 인증)을 적용합니다.
복사hostssl platform_analytics_wh DB_USERNAME
CLIENT_IP/32 cert clientcert=1 -
두 파일의 변경 사항을 저장합니다.
- 열기시작 > 서비스 PostgreSQL 또는 MicroStrategy Repository를 다시 시작합니다.
클라이언트 측 설정
-
개인 키 및 인증서를 만듭니다.
복사genrsa -des3 -out postgresql.key 1024
rsa -in postgresql.key -out postgresql.key
req -new -key postgresql.key -out postgresql.csr -subj "/CN=DB_USERNAME"
x509 -req -in postgresql.csr -CA root.crt -CAkey server.key -out postgresql.crt -CAcreateserial오류가 발생하면 주석 처리해야 할 수 있습니다. tsa_policy1 에서 openssl.cnf 개 파일. Openssl을 관리자로 저장하고 재시작합니다.
복사# Policies used by the TSA examples.
#tsa_policy1 = 1.2.3.4.1
tsa_policy2 = 1.2.3.4.5.6
tsa_policy3 = 1.2.3.4.5.7 -
아래 명령을 사용하여 개인 키를 DER 형식으로 변환합니다.
Platform Analytics에서 사용하는 JDBC PostgreSQL 드라이버를 사용하려면 키 파일이 PEM 형식이 아닌 DER 형식이어야 합니다.
복사pkcs8 -topk8 -inform PEM -in postgresql.key -outform
DER -nocrypt -out postgresql.key.der -
PostgreSQL에 사용되는 ODBC 드라이버에 따라 키 저장소가 필요할 수 있습니다. 키 저장소를 만들려면:
복사pkcs12 -export -in postgresql.crt -inkey
postgresql.key -out postgresql.p12 -
생성된 파일을 클라이언트 시스템에 복사하고 업데이트 PAConsumerConfig.yaml 파일을 아래 경로로 인증서 및 키를 추가합니다.
클라이언트 키가 DER에 있음 형식입니다.
복사pgWarehouseDbConnection:
pgWhHost: YOUR_HOST
pgWhUser: DB_USERNAME
pgWhPasswd: YOUR_PASSWORD
pgWhPort: 5432
pgWhDb: platform_analytics_wh
pgWhSSLcert: \LOCATION_OF_FILE\postgresql.crt
pgWhSSLkey: \LOCATION_OF_FILE\postgresql.key.der
pgWhSSLrootcert: \LOCATION_OF_FILE\root.crt
pgWhSSLmode: verify-ca
PostgreSQL 서버 측 구성
-
OpenSsl을 사용하여 개인 키를 생성합니다. 개인 키를 생성할 때 암호를 제공해야 합니다.
복사openssl genrsa -des3 -out server.key 1024 -
암호 제거:
복사openssl rsa -in server.key -out server.key -
키 파일에 대한 액세스를 부여합니다.
에 대한 권한 server.key 은(는) 세계 또는 그룹에 대한 액세스를 비활성화해야 합니다. 이 작업을 수행하려면 chmod 권한 0600. 또는 파일의 소유자는 root 그룹 읽기 권한이 있음, 즉 chmod 0640 개의 권한. 이 설정은 운영 체제에서 인증서 및 키 파일을 관리하는 설치를 위한 것입니다. 그러면 PostgreSQL 서버가 실행되는 사용자는 해당 인증서 및 키 파일에 액세스할 수 있는 그룹의 구성원이 되어야 합니다.
파일 권한 및 소유자를 PostgreSQL을 실행하는 시스템 사용자로 변경합니다.
복사chown PSQL_OWNER:PSQL_OWNER server.key
chmod 0600 server.key소유자가 root:
복사chown root:root server.key
chmod 06040 server.key -
서버 인증서 및 인증 기관을 만듭니다.
-subj 은(는) 정보 프롬프트를 방지하는 바로가기입니다.
-x509 은(는) 인증서 요청이 아닌 자체 서명 인증서를 생성합니다.
복사openssl req -new -key server.key -days 3650 -out server.crt -x509 -subj "/CN=IP OR HOSTNAME"
cp server.crt root.crt -
생성된 모든 인증서에 대해 다음을 수행합니다.
복사chown PSQL_OWNER:PSQL_OWNER server.crt
chmod 0600 server.crt
chown PSQL_OWNER:PSQL_OWNER root.crt
chmod 0600 root.crt -
다음을에 추가 postgres.conf 파일:
복사listen_addresses = '*' # what IP address(es) to listen on;다음의 주석 처리를 제거하고 변경합니다.
복사ssl = on
ssl_ca_file = '/LOCATION_OF_FILE/root.crt'
ssl_cert_file = '/LOCATION_OF_FILE/server.crt'
ssl_key_file = '/LOCATION_OF_FILE/server.key'
ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed SSL ciphers
ssl_prefer_server_ciphers = on -
에서 pg_hba.conf 파일에서 다음을 추가 또는 수정합니다.
호스트 항목을 주석 처리해야 할 수 있습니다.
hostssl DB_username에 대해 SSL을 적용합니다.
clientcert=1 클라이언트 인증(양방향 인증)을 적용합니다.
복사hostssl platform_analytics_wh DB_USERNAME CLIENT_IP/32 cert clientcert=1 -
PostgreSQL 또는 MicroStrategy 저장소를 다시 시작합니다.
PostgreSQL이 MicroStrategy 외부에 설치된 경우 다음과 같은 명령을 사용합니다.
복사systemctl restart postgresql-11MicroStrategy Repository가 플랫폼 분석에 사용되는 경우 다음 명령을 사용하십시오.
이 명령은 다음으로 실행할 수 없습니다. root.
복사cd /opt/MicroStrategy/PlatformAnalytics/bin
./mstr_pg_ctl restart
클라이언트 측 설정
-
개인 키 및 인증서를 만듭니다.
복사openssl genrsa -des3 -out postgresql.key 1024
openssl rsa -in postgresql.key -out postgresql.key
openssl req -new -key postgresql.key -out postgresql.csr -subj "/CN=DB_USERNAME"
openssl x509 -req -in postgresql.csr -CA root.crt -CAkey server.key -out postgresql.crt -CAcreateserial -
아래 명령을 사용하여 개인 키를 DER 형식으로 변환합니다.
Platform Analytics에서 사용하는 JDBC PostgreSQL 드라이버를 사용하려면 키 파일이 PEM 형식이 아닌 DER 형식이어야 합니다.
복사openss1 pkcs8 -topk8 -inform PEM -in postgresql.key -outform DER -nocrypt -out postgresql.key.der -
PostgreSQL에 사용되는 ODBC 드라이버에 따라 키 저장소가 필요할 수 있습니다. 키 저장소를 만들려면:
복사openss1 pkcs12 -export -in postgresql.crt -inkey postgresql.key -out postgresql.p12 -
생성된 파일을 클라이언트 시스템에 복사하고 업데이트 PAConsumerConfig.yaml 파일을 아래 경로로 인증서 및 키를 추가합니다.
클라이언트 키가 DER에 있음 형식입니다.
복사pgWarehouseDbConnection:
pgWhHost: YOUR_HOST
pgWhUser: DB_USERNAME
pgWhPasswd: YOUR_PASSWORD
pgWhPort: 5432
pgWhDb: platform_analytics_wh
pgWhSSLcert: /LOCATION_OF_FILE/postgresql.crt
pgWhSSLkey: /LOCATION_OF_FILE/postgresql.key.der
pgWhSSLrootcert: /LOCATION_OF_FILE/root.crt
pgWhSSLmode: verify-ca
