SSH Tunnel 経由で MySQL に接続
ジャンプ
SSH tunnel
を使用して MySQL データベースを Commerce Intelligence に接続するには、次の操作を行う必要があります。
- Commerce Intelligence
public key
の取得 - Commerce Intelligence
IP address
へのアクセスを許可 - Commerce Intelligence の
Linux
ユーザーの作成 - Commerce Intelligence の
MySQL
ユーザーの作成 - Commerce Intelligence に接続およびユーザー情報を入力
Commerce Intelligence 公開鍵の取得 retrieve
public key
は、Commerce Intelligence Linux
ユーザーの認証に使用されます。 次の節では、ユーザーを作成してキーを読み込みます。
- Manage Data > Connections に移動し、「Add New Data Source」をクリックします。
MySQL
アイコンをクリックします。MySQL credentials
ページが開いたら、「Encrypted
」切り替えスイッチを「Yes
」に設定します。 SSH 設定フォームが表示されます。public key
はこのフォームの下にあります。
このページは、チュートリアルの最後まで開いたままにしておきます。次の節と最後に必要になります。
Commerce Intelligence 内を移動してキーを取得する方法を次に示します。
Commerce Intelligence IP アドレスへのアクセスを許可します allowlist
接続を成功させるには、IP アドレスからのアクセスを許可するようにファイアウォールを設定する必要があります。 それらは 54.88.76.97
と 34.250.211.151
ですが、MySQL credentials
のページにもあります。 上のGIFの青いボックスを参照してください。
Commerce Intelligence 用の Linux ユーザーの作成 linux
リアルタイム(または頻繁に更新される)のデータが含まれている限り、実稼動マシンまたはセカンダリマシンを使用できます。 MySQL
サーバーへの接続権が保持されている限り、好きなように このユーザーを制限することができます。
- 新しいユーザーを追加するには、Linux サーバーで次のコマンドを root として実行します。
adduser rjmetric -p<password>
mkdir /home/rjmetric
mkdir /home/rjmetric/.ssh
-
最初のセクションで取得した
public key
を覚えていますか? ユーザーがデータベースにアクセスできるようにするには、キーをauthorized\_keys
に読み込む必要があります。次のように、キー全体を
authorized\_keys
ファイルにコピーします。
touch /home/rjmetric/.ssh/authorized_keys
"<PASTE KEY HERE>" >> /home/rjmetric/.ssh/authorized_keys
- ユーザーの作成を完了するには、
/home/rjmetric
ディレクトリの権限を変更して、SSH
経由でのアクセスを許可します。
chown -R rjmetric:rjmetric /home/rjmetric
chmod -R 700 /home/rjmetric/.ssh
chmod 400 /home/rjmetric/.ssh/authorized_keys
sshd\_config
ファイルが既定のオプションに設定されていない場合は、特定のユーザーのみがサーバーにアクセスできます。これにより、Commerce Intelligence への接続に成功できなくなります。 このような場合、rjmetric
ユーザーにサーバーへのアクセスを許可するには、AllowUsers
のようなコマンドを実行する必要があります。Commerce Intelligence 用の MySQL ユーザーの作成 mysql
組織では別のプロセスが必要になる場合がありますが、このユーザーを作成する最も簡単な方法は、権限を付与する権限を持つユーザーとして MySQL にログインしたときに次のクエリを実行することです。
GRANT SELECT ON *.* TO 'rjmetric'@'localhost' IDENTIFIED BY '<secure password here>';
secure password here
を安全なパスワードに置き換えます。これは、SSH
パスワードとは異なる場合があります。
このユーザーが特定のデータベース、テーブル、または列のデータにアクセスするのを制限するには、代わりに、許可されたデータへのアクセスのみを許可する GRANT クエリを実行します。
Commerce Intelligence への接続およびユーザー情報の入力 finish
まとめるには、接続とユーザー情報を Commerce Intelligence に入力する必要があります。 MySQL credentials
のページは開いたままにしておきましたか。 そうでない場合は、Data > Connections に移動して「Add New Data Source」をクリックし、次に「MySQL」アイコンをクリックします。 「Encrypted
」トグルを Yes
に設定することを忘れないでください。
このページに、Database Connection
のセクションから始まる次の情報を入力します。
-
Username
:Commerce Intelligence MySQL ユーザーのユーザー名 -
Password
:Commerce Intelligence MySQL ユーザーのパスワード -
Port
:サーバー上の MySQL ポート(デフォルトでは 3306) -
Host
デフォルトでは、localhost です。 一般に、これは MySQL サーバーのバインド アドレス値です。デフォルトでは127.0.0.1 (localhost)
ですが、ローカル ネットワーク アドレス (192.168.0.1
など)またはサーバーのパブリック IP アドレスの場合もあります。この値は、
\[mysqld\]
を読み取る行の下のmy.cnf
ファイル(/etc/my.cnf
にあります)にあります。 このファイルで bind-address 行がコメントアウトされている場合、サーバーは外部からの接続の試行から保護されます。
SSH Connection
のセクションで以下を実行します。
Remote Address
: トンネル先のサーバー Commerce Intelligence の IP アドレスまたはホスト名Username
:Commerce Intelligence SSH (Linux)ユーザーのユーザー名SSH Port
:サーバーの SSH ポート(デフォルトでは 22)
完了したら、「Save & Test」をクリックして設定を完了します。