MySQL に SSH トンネル経由で接続 - 組み込みクライアントを使用
セキュリティが確保されていないネットワーク経由で MySQL データベースにアクセスする場合、主に2つの選択肢があります。 SSL 接続を使用する方法と、SSH トンネルを経由する方法です。CData MySQL ドライバーは両方のオプションに対応していますが、 トンネリングの組み込みサポートにより、SSH トンネルの方が実装が簡単で、より安全です。SSH セキュリティプロトコルによる 暗号化のサポートに加え(攻撃に対する優れた実績があります)、SSH トンネルを使用すると、MySQL は「localhost」からの トラフィックのみを受け付けるように設定でき、設定されたトンネル以外のすべての接続をブロックできます。
SSH トンネルを使用するには、MySQL インスタンスと同じ環境で SSH サーバーが動作している必要があります。ただし、サーバーが動作していれば、トンネルのセットアップは簡単です。SSH は強力な暗号化を使用し、トンネルを通じてクライアント接続が SSH サーバーから来ているように見せかけます(リモートクライアントからではなく)。SSH トンネルを使用すれば、MySQL サーバーをリモート接続を受け入れるように設定する必要がなくなり、MySQL インスタンスのセキュリティリスクを軽減できます。
通常、SSH トンネルを作成するには別途 SSH クライアントが必要です。CData の MySQL 用コネクタには SSH クライアントが組み込まれているため、SSH トンネル経由で MySQL インスタンスに簡単に接続できます。
SSH クライアントの設定
CData の各 MySQL コネクタには、SSH サーバー経由で MySQL インスタンスに接続するための接続プロパティがあります。接続するには、Use SSH を「true」に設定し、以下のプロパティを設定します。
- SSH Client Cert: 証明書ストアの名前、クライアント証明書ファイルへのパス、またはクライアント証明書の内容。
- SSH Client Cert Subject: 指定されたストア内で証明書を検索するためのサブジェクト(デフォルトは「*」)。
- SSH Client Cert Type: SSH クライアント証明書を含むキーストアのタイプ。
- SSH Client Cert Password: SSH クライアント証明書のパスワード(必要な場合)。
- SSH User: SSH サーバーのユーザー名。
- SSH Password: SSH ユーザーのパスワード。
- SSH Server: SSH サーバーのロケーション。
- SSH Server Fingerprint: SSH サーバーのフィンガープリント。
- SSH Port: SSH サーバーのポート(デフォルト: 22)。
以下は、ODBC ドライバーで SSH クライアントを設定した例です。他のコネクタでも同様に簡単に設定できます。

コネクタによっては、以下のような接続文字列を設定する必要がある場合があります。
接続文字列の例
User=myUser; Password=myPassword; Database=NorthWind; Server=myServer; Port=3306; UseSSH=TRUE; SSHClientCert="/home/ssh.pem"; SSHClientCertSubject=*; SSHClientCertType=PEMKEY_FILE; SSHClientCertPassword=""; SSHUser=root; SSHPassword=""; SSHServer=123.456.789.012; SSHServerFingerprint=""; SSHPort=1022
SSH クライアントはコネクタに直接組み込まれているため、オペレーティングシステムに関係なく、セットアップと使用方法はまったく同じです。接続プロパティを設定するだけで、安全な SSH トンネルを通じてローカルシステムからリモートの MySQL データを操作できます。
詳細情報と無料トライアルのダウンロードについては、MySQL ドライバーページをご覧ください。ご不明な点がございましたら、サポートチームまでお気軽にお問い合わせください。