ラボのリモートサーバー上のMySQLデータベースにアクセスする必要があります。リモートネットワーク上のゲートウェイサーバーにログインすると、サーバーにアクセスできるようになります。
local server => gateway server => MySQL server.
ポート24222を使用してゲートウェイにSSH接続できます。
私はPERLDBIモジュールを使用しています。これは、私がラボにいるときに接続するために使用するものです。
my $host="1.2.3.4";
my $database="dbname";
my $user="user";
my $pw="pass";
my $table="table";
ゲートウェイサーバーからデータベースサーバーへのトンネルを設定する必要があると思います。どうすればそれを行うことができますか?MySQLデータベースがゲートウェイ上にある場合、次のようにトンネルを開くことができます。
$ ssh -f user@gateway -L 3307:127.0.0.1:3306 -N
これを変更して、ゲートウェイの開いているポート24222を経由して1.2.3.4のMySQLサーバーにトンネリングするにはどうすればよいですか?
アップデート:
@anttirの回答を使用して、次のように機能させることができました。
トンネルを設定します。
$ ssh -fN -p 24222 user1@11.12.13.14 -L 3307:1.2.3.4:3306
スクリプト変数を設定します。
my $host="127.0.0.1"; my $port = 3307;