
時々、別の場所にある MS SQL Server のデータを確認する必要があります。
現在のところ、データベースのバックアップを作成し、それを別のサーバーに移動して、.bak
ファイルをダウンロードし、ローカル マシンで復元する必要があります。しかし、データベースが拡大しているため、これは面倒になり始めています。
Win 7 -> Linux -> Windows Server 2008 with SQL Server
MS SQL Management Studio のトンネルを作成することは可能ですか (また、その方法は?) ?
Linux と Windows Server は、別の場所にある同じネットワーク上にあります。外部から見えるのは Linux サーバーだけです。
残念ながら、どのマシンでも変更を加えることができません。Putty
経由で SSH トンネルを試しましたが、失敗しました。
答え1
win7 マシンで、putty を開き、Linux ssh セッションに対して次の設定を行います: 接続 -> SSH -> トンネル -> 送信元ポート: 1433、宛先: 192.168.0.3:1433、ローカル ラジオ ボタンを選択します。
これで、win7 マシンから localhost:1433 に接続できるはずです。
答え2
はい、可能です。見てみましょうここたとえば、 などです。トンネルの設定にサポートが必要な場合は、さらに情報を提供する必要があります。
答え3
うーん、Linux サーバーの iptables に新しいルールを追加できる場合は、単純なポート転送でこれを達成できます。ただし、データベースがインターネットから見えるようになるため、これは非常に危険であることに注意してください。もちろん、データベース サーバーに接続して非標準ポートを使用する必要がある場合にのみ、ポート転送を有効にできます。これは、Linux マシンの iptables に設定する必要があるルールです。
-A PREROUTING -p tcp -m tcp -s IPOFYOURNETWORK --dport PORTNUMBER1 -j DNAT --to-destination IPOFDATASERVER:PORTNUMER2
-A POSTROUTING -d IPOFDATASERVER -j MASQUERADE
IPOFYOURNETWORKは、接続を試みるネットワークまたはコンピュータのIPです。
PORTNUMBER1 は、データベースを表示させたいポートです (標準以外のポートを設定することもできます)
IPOFDATASERVER:PORTNUMER2 はデータベース サーバーの IP とポートです。
答え4
FINESEC のコメントに従うと、「接続が積極的に拒否されました」というエラーが発生する可能性があります。
Putty のトンネルの下にある「ローカル ポートは他のホストからの接続を受け入れる」および「リモート ポートも同様に受け入れる」チェックボックスをオンにすることで、この問題を解決できました。誰かの役に立つかもしれません。