|
A5:SQL Mk-2 から SSHトンネルを利用して MySQL へ接続するこのページでは A5:SQL Mk-2 から SSHトンネルを利用して MySQL へ接続する手順を示します。 例えば、よくあるレンタルサーバーは外部からMySQLに直接接続出来る設定になっていることは稀ですが、SSHトンネルを介せば接続出来ることがあります。 また、自宅から会社の公開されているSSHサーバーにアクセスし、そこを経由してMySQLサーバーに接続することも出来ます。 Version 2.7までの場合でCygwin経由で接続する古い資料を参照したい場合はこちらにあります。 ケース1(SSHサーバーとMySQLサーバーが同じサーバーである場合)このケースはSSHサーバーとMySQLサーバーが同じサーバーに導入されている場合です。例えば、自宅からレンタルサーバー上のMySQLに接続する場合などはこの典型です。サーバー "server1" 上でMySQLサーバーが3306番ポートを利用しており、SSHサーバーが22番ポートを利用している場合を例にします。ホスト名やポート番号等は適宜変更して下さい。 接続手順データベース接続ダイアログで次のように入力します。入力後、テスト接続を行って動作確認をします。基本タブ ホスト名には localhost または、127.0.0.1 を指定します。 SSH2トンネルタブ ここではパスワード認証を用いていますが、鍵ファイル認証にも対応します。 対応する鍵ファイルのフォーマットは、Open SSH形式およびSecSH形式です。 ケース2(SSHサーバーとMySQLサーバーが異なるサーバーである場合)このケースは自宅から会社の公開されているSSHサーバーに接続し、それを経由して社内のMySQLサーバーへ接続する場合などです。SSHサーバーからMySQLサーバーへは接続出来る必要がありますが、MySQLサーバーは外部に公開されている必要はありません。 サーバー "server1" 上の22番ポートでSSHサーバーが稼働し、そこからサーバー "server2" 上の3306番ポートで待ち受けしているMySQLサーバーへ接続する例を示します。 接続手順データベース接続ダイアログで次のように入力します。入力後、テスト接続を行って動作確認をします。基本タブ ホスト名には server1 (SSHサーバー) から見た、MySQLサーバー名を指定します。 (この場合は、server2 を指定しています) SSH2トンネルタブ 接続を放置すると接続が切断されてしまう場合SSHサーバーの設定によっては、接続後に放置すると一定時間で「Connection reset by peer」などが表示されて強制切断されてしまう場合があります。この場合は、SSHサーバーの設定ファイルを編集してKeepaliveを設定します。 UNIXやLINUX等の多くのOSでは、/etc/ssh/sshd_config です。この設定ファイルに以下の記述を追加します。 ClientAliveInterval 15 ClientAliveCountMax 5 この例では15秒に1度サーバーからクライアントに対してKeepaliveメッセージを送信します。 そして連続で5回Keepaliveメッセージに応答がなかった場合、サーバーは接続を切断します。 |
|