SSH Tunnel 経由で MySQL に接続

ジャンプ

SSH tunnel を使用して MySQL データベースを Commerce Intelligence に接続するには、次の操作を行う必要があります。

  1. Commerce Intelligence public key の取得
  2. Commerce Intelligence IP address へのアクセスを許可
  3. Commerce Intelligence の Linux ユーザーの作成
  4. Commerce Intelligence の MySQL ユーザーの作成
  5. Commerce Intelligence に接続およびユーザー情報を入力

Commerce Intelligence 公開鍵の取得 retrieve

public key は、Commerce Intelligence Linux ユーザーの認証に使用されます。 次の節では、ユーザーを作成してキーを読み込みます。

  1. Manage Data > Connections に移動し、「Add New Data Source」をクリックします。
  2. MySQL アイコンをクリックします。
  3. MySQL credentials ページが開いたら、「Encrypted」切り替えスイッチを「Yes」に設定します。 SSH 設定フォームが表示されます。
  4. public key はこのフォームの下にあります。

このページは、チュートリアルの最後まで開いたままにしておきます。次の節と最後に必要になります。

Commerce Intelligence 内を移動してキーを取得する方法を次に示します。

Commerce Intelligence IP アドレスへのアクセスを許可します allowlist

接続を成功させるには、IP アドレスからのアクセスを許可するようにファイアウォールを設定する必要があります。 それらは 54.88.76.9734.250.211.151 ですが、MySQL credentials のページにもあります。 上のGIFの青いボックスを参照してください。

Commerce Intelligence 用の Linux ユーザーの作成 linux

リアルタイム(または頻繁に更新される)のデータが含まれている限り、実稼動マシンまたはセカンダリマシンを使用できます。 MySQL サーバーへの接続権が保持されている限り、好きなように このユーザーを制限することができます。

  1. 新しいユーザーを追加するには、Linux サーバーで次のコマンドを root として実行します。
        adduser rjmetric -p<password>
        mkdir /home/rjmetric
        mkdir /home/rjmetric/.ssh
  1. 最初のセクションで取得した public key を覚えていますか? ユーザーがデータベースにアクセスできるようにするには、キーを authorized\_keys に読み込む必要があります。

    次のように、キー全体を authorized\_keys ファイルにコピーします。

        touch /home/rjmetric/.ssh/authorized_keys
        "<PASTE KEY HERE>" >> /home/rjmetric/.ssh/authorized_keys
  1. ユーザーの作成を完了するには、/home/rjmetric ディレクトリの権限を変更して、SSH 経由でのアクセスを許可します。
        chown -R rjmetric:rjmetric /home/rjmetric
        chmod -R 700 /home/rjmetric/.ssh
        chmod 400 /home/rjmetric/.ssh/authorized_keys
IMPORTANT
サーバーに関連付けられている 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」をクリックして設定を完了します。

関連:

recommendation-more-help
e1f8a7e8-8cc7-4c99-9697-b1daa1d66dbc