技術ブログ
目次
本記事では、非常に多くのデータベース製品、SaaS、アプリケーション、APIに対応したデータ連携ツールである、CData SyncのWeb管理コンソールへのアクセスをHTTPS化する手順について説明します。
本記事は、CData Syncを以下の手順で導入したことを前提として記載します。
なお、弊社コーソルはCData パートナーであり、CData Syncの販売および導入、運用やトライアルの支援が可能です。
CData Syncは、非常に多くのデータベース製品、SaaS、アプリケーション、APIに対応したデータ連携ツールです。
CData Syncを用いてデータベース内のデータを別のデータベースに連携することで、以下を実現できます。
以下の特徴を持ちます。
本記事は、CData Syncを以下の手順で導入したことを前提として記載します。
デフォルトでは、CData Sync Web管理コンソールへのアクセス方法はHTTPのみで、HTTPSは使えません。
CData Syncでは、データベース接続時のパスワードなどの情報を扱うため、Web管理コンソールへのアクセスをHTTPS化し、通信を暗号化することが一般に望ましいです。また、Google BigQueryなど、Web管理コンソールへのアクセスがHTTPS化されていることが必要なサービスもあります。
なお、以下の手順では自己署名証明書を使用しています。
以下の手順に従い、自己署名証明書と秘密鍵を含むPKCS#12 形式ファイルを作成します。
cdatasyncユーザーで実行します。
[cdatasync@l8rep3sv1 ~]$ id
uid=1000(cdatasync) gid=1001(cdatasync) groups=1001(cdatasync)
[cdatasync@l8rep3sv1 ~]$ cd /opt/sync/
[cdatasync@l8rep3sv1 sync]$ openssl genrsa -out ca.key 4096
Generating RSA private key, 4096 bit long modulus (2 primes)
...........................................................................................++++
........++++
e is 65537 (0x010001)
[cdatasync@l8rep3sv1 sync]$ ls -l ca.*
-rw-rw-r-- 1 cdatasync cdatasync 1931 Mar 27 23:03 ca.crt
作成したRSA秘密鍵 (ca.key) を使って自己署名のCA証明書 (ca.crt) を作成します。
[cdatasync@l8rep3sv1 sync]$ openssl req -x509 -key ca.key -out ca.crt -days 365
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:
Email Address []:
[cdatasync@l8rep3sv1 sync]$ ls -l ca.*
-rw-rw-r-- 1 cdatasync cdatasync 1931 Mar 27 23:03 ca.crt
-rw------- 1 cdatasync cdatasync 3247 Mar 27 23:02 ca.key
[cdatasync@l8rep3sv1 sync]$
作成した自己署名証明書 (ca.crt) と秘密鍵 (ca.key) を一つの PKCS#12 形式ファイル(ca.pfx)にまとめます。
[cdatasync@l8rep3sv1 sync]$ openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.pfx
Enter Export Password:
Verifying - Enter Export Password:
[cdatasync@l8rep3sv1 sync]$ ls -l ca.*
-rw-rw-r-- 1 cdatasync cdatasync 1931 Mar 27 23:03 ca.crt
-rw------- 1 cdatasync cdatasync 3247 Mar 27 23:02 ca.key
-rw------- 1 cdatasync cdatasync 4149 Mar 27 23:06 ca.pfx
[cdatasync@l8rep3sv1 sync]$
CData Syncのインストールディレクトリ(/opt/sync/)にsync.propertiesがない場合、以下のコマンドを実行してsync.propertiesを生成します。sync.propertiesは、CData Syncの設定ファイルです。
[cdatasync@l8rep3sv1 sync]$ JAVA=/opt/sync/jre/jdk-17.0.5+8/bin/java
[cdatasync@l8rep3sv1 sync]$ ${JAVA} -jar sync.jar -GenerateProperties
Mar 27, 2025 11:01:53 PM d.a a
INFO: The properties deserializes success.
Mar 27, 2025 11:01:53 PM b.d a
INFO: Parse .properties from default.
Mar 27, 2025 11:01:53 PM cdata.sync.SyncServer a
INFO: There is no app data directory setting.
Mar 27, 2025 11:01:53 PM cdata.sync.SyncServer b
INFO: The server log directory is /opt/sync/logs/httpserver
Mar 27, 2025 11:01:53 PM cdata.sync.SyncServer main
INFO: The .properties configuration file has generated into /opt/sync/sync.properties.
[cdatasync@l8rep3sv1 sync]$ cat sync.properties
; ---------------------------------------
; ${cdata.home} is the installation directory.
; ---------------------------------------
cdata.contextPath=/
; The connection string to use for an external database to be used as the Application Database. When unspecified, the application will default to a derby database within Application Directory.
cdata.app.db=
; The path on disk to use as Application Directory. Use '/' character as a Path separator regardless of the Operating system.
cdata.app.directory=
;; HTTP
cdata.http.port=8181
;; TLS
cdata.tls.port=
cdata.tls.keyStoreType=
cdata.tls.keyStorePath=
cdata.tls.keyStorePassword=
;; Request log
cdata.requestLog.enabled=false
cdata.requestLog.filenameDateFormat=yyyy_MM_dd
cdata.requestLog.retainDays=90
[cdatasync@l8rep3sv1 sync]$
sync.propertiesにHTTPS関連の設定を追加します。今回の場合は、以下のように変更します。
[変更前]
;; TLS
cdata.tls.port=
cdata.tls.keyStoreType=
cdata.tls.keyStorePath=
cdata.tls.keyStorePassword=
[変更後]
;; TLS
cdata.tls.port=8443
cdata.tls.keyStoreType=PKCS12
cdata.tls.keyStorePath=/opt/sync/ca.pfx
cdata.tls.keyStorePassword=<ca.pfx作成時に指定したパスワード>
CData Syncを再起動します。ここで、CData Syncはsystemdサービスとして構成済みとします。
[cdatasync@l8rep3sv1 sync]$ sudo systemctl restart cdatasync.service
[cdatasync@l8rep3sv1 sync]$ sudo systemctl status cdatasync.service
● cdatasync.service - CData Sync
Loaded: loaded (/etc/systemd/system/cdatasync.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2025-03-27 23:10:39 JST; 7s ago
Process: 2420 ExecStop=/bin/sleep 3 (code=exited, status=0/SUCCESS)
Process: 2385 ExecStop=/opt/sync/jre/jdk-17.0.5+8/bin/java -jar /opt/sync/sync.jar -stop (code=exited, status=0/SUCCESS)
Main PID: 2423 (java)
Tasks: 40 (limit: 46142)
Memory: 583.0M
CGroup: /system.slice/cdatasync.service
mq2423 /opt/sync/jre/jdk-17.0.5+8/bin/java -jar /opt/sync/sync.jar
Mar 27 23:10:43 l8rep3sv1.domain java[2423]: Mar 27, 2025 11:10:43 PM XcoreXcdata.syncX243X9121.leb a
Mar 27 23:10:43 l8rep3sv1.domain java[2423]: INFO: Can not find the deprecated driver jar file of 'CData ADLSSync'
Mar 27 23:10:43 l8rep3sv1.domain java[2423]: Mar 27, 2025 11:10:43 PM XcoreXcdata.syncX243X9121.leb a
Mar 27 23:10:43 l8rep3sv1.domain java[2423]: INFO: Can not find the deprecated driver jar file of 'CData AmazonS3Sync'
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: Mar 27, 2025 11:10:44 PM XcoreXcdata.syncX243X9121.leb a
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: INFO: The schedule task [ExecuteJob] starts successful.
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: Mar 27, 2025 11:10:44 PM XcoreXcdata.syncX243X9121.leb a
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: INFO: The schedule task [CheckCDCEngineStatus] starts successful.
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: Mar 27, 2025 11:10:44 PM XcoreXcdata.syncX243X9121.leb a
Mar 27 23:10:44 l8rep3sv1.domain java[2423]: INFO: The disk usage threshold monitor is started. If the disk where AppDirectory is >
[cdatasync@l8rep3sv1 sync]$
sync.propertiesのcdata.tls.portに設定したポート番号のURLを指定して、HTTPSでCData SyncのWeb管理コンソールにアクセスします。
https://<ホスト名 or IPアドレス>:8443
今回使用した証明書は自己署名証明書であり、いわゆる「正式な証明証」ではないため、以下は想定された動作です。
弊社コーソルはCData パートナーであり、CData Syncの製品販売を行います。加えて、コーソルが得意とするデータベース技術領域を含めたCData Syncの導入、技術支援、サポートを行います。
CData Syncを用いたデータ連携をご検討されている場合は、ぜひコーソルへご相談いただければとと思います。
データベースのレプリケーションにおいては、データベース製品およびレプリケーション製品の両方の知識が必要です。このような知識を持つエンジニアの確保は一般に困難です。弊社のサービスがこの問題のお役に立てると考えております。
また、弊社からCData Syncを見積/購入いただくと、以下のサービスを無償でご提供いたします。
コーソルからデータベース関連製品をご購入いただくと、ORACLE MASTER Platinum 単年取得者数7年連続No.1、2016年6月以降 累計保持者数No.1という指標に裏付けされた高い技術力により、安心して製品を導入/利用いただけます。
ORACLE MASTER Platinumとは、2日間にわたる実技試験により認定されるOracle Database最高難度の資格です。 グローバルで有効な資格であり、海外では"Oracle Certified Master"と呼ばれます。
ORACLE MASTER Platinumとは何か / コーソルはPlatinum取得者数No.1!
Oracle Databaseについても製品販売、製品サポート、製品の導入を行います。また、リモート回線経由でスポット的なDBA実務を行うリモートDBAサービス、コンサルティングやベンダコントロールを含めたOracle Databaseプロフェッショナルサービスを時間制で提供する時間制コンサルサービスも提供しています。
データベース運用保守なら常駐しないリモートDBA
基幹系DB運用支援および製品サポートについては、3拠点体制による24時間365日対応が可能です。
コーソルは、Oracle Databaseをはじめとするデータベース製品に関する深い知識を活かし、多数のデータベース関連製品を取り扱っております。
これらの製品について、販売・導入・運用を様々な形でご支援します。お困りの際はぜひ弊社にお声がけくださいませ。