1

職場の LAN では、あるマシンで SQL Server 2005 を実行しており、開発者用マシン (別のマシン) には VS2008 があり、コンピューター名とローカル LAN ドメインを使用して、Visual Studio のサーバー エクスプローラーから SQL Server にアクセスできます。 name ie: mspc2.ourcompany.local だから、私はそれがすべて正常に稼働していることを知っており、その上のテーブルとすべてを見ることができます。

現在、SQL Server ボックスには、それを指すパブリック IP があります。現在、私はこれを、自宅からマシンにアクセスするためにマシンにリモート デスクトップで接続するためにのみ使用しています。

では、自宅のラップトップの Visual Studio から、または LAN 上にない他のコンピューターからその SQL Server にアクセスできるようにするには、どうすればよいでしょうか? そのマシンのすべてのソフトウェア ファイアウォールをオフにし、ハードウェア ルーターでパススルーを実行して、そのパブリック IP へのすべてのトラフィック/ポートがそのマシンの LAN IP にルーティングされるようにしています。

そのマシンにリモート デスクトップを問題なく接続できます。

パブリック IP アドレスをサーバー エクスプローラーに入力しようとしましたが、戻ってきて、接続できませんでしたと表示されます。

では、そのマシンを開いてオフサイトから SQL Server にアクセスできるようにするには、どうすればよいでしょうか?

4

4 に答える 4

2

セキュリティで保護された VPN をネットワークに設定し、その方法で SQL Server にアクセスする方が、パブリックにアクセスできるようにするよりも優れています。

于 2009-03-14T03:46:24.090 に答える
0

ホームボックスからManagementStudioを介してボックスにアクセスするには、サーバーとクライアントファイアウォールの両方でTCP/IPポート1433が開いていることを確認する必要があります。これはハンドシェイクポートです(または、デフォルトのポートを変更して、アドレスとしてxxx.xxx.xx.xx、portnumを介してアクセスできます)。ハンドシェイクが完了すると、クライアントとサーバーは実際には別のポートを介して通信するため、これも開いている必要があります。 詳細については、こちらをご覧ください。

ただし、一般的には、Management StudioをIPアドレスにポイントするだけで、問題なく使用できるはずです。ボックスに到達したら、SQLログインアカウントを介してログインする必要があります(saを使用しないでください-以下の私のアドバイスを参照してください)。

それでも問題が解決しない場合は、SQL Server構成マネージャー([SQL Server]メニュー)を実行し、TCP / IPが有効になっていること([ネットワーク構成]の[プロトコル]を参照)、およびSQLServerがボックスの外部からの接続に対して開いていることを確認します。最後に、それでも問題が解決しない場合は、ローカルボックスでネットワークを確認します。Windowsディレクトリ(またはSystem32)でCliConfig.exeを見つけて実行し、そこでTCP/IPを使用しているかどうかを確認します。

わかりました-セキュリティについて一言:

私の最初のアドバイスは、現在の構成では非常に脆弱であることを認識することです。脆弱性を減らすために、SQL Serverの表面分析を実行し、必要に応じてそのアドバイスに従うようにしてください。

また、saアカウントを無効にすることもできます([セキュリティ]、[ログイン]、[sa]の順に移動し、右クリックして[プロパティ]を選択し、[ステータス]をクリックして、[ログイン]の下の[無効]をクリックします)。ボックスにアクセスするには、saではなく管理用のWindowsユーザーアカウントを使用します。最後に、新しいSQLログインアカウントと、リモートコンピューターから使用するのが難しいパスワードを作成します。ご存知のように、saアカウントは、ハッカーがポート1433が開いていることを発見すると、絶え間なく攻撃されます(ファイアウォールの背後に隠れる前に、1日あたり16,000以上を取得していました)。他のアカウント名はそうではありません。

于 2009-03-14T03:54:23.573 に答える
0

ポート1433(または設定されているもの)を開いてもSQL Serverブラウザサービスが表示されない場合は、SQLServerブラウザサービスが実行されていることを確認する必要がある場合もあります。

于 2009-03-14T04:05:14.873 に答える
0

その特定のマシンで SQL Server がリッスンしているポートを確認し、ポート フォワーディングが職場の LAN/ゲートウェイに設定されていること、および/またはラップトップ、自宅の LAN/ゲートウェイ、および職場の LAN の間でポートがブロックされていないことを確認してください。 /Gateway と SQL ボックス自体。

SQL が使用しているポートを確認するには、通常、[スタート] -> [プログラム] -> [Microsoft SQL Server 2005] -> [構成ツール] にある SQL 構成マネージャーを使用します。

開いたら、LHS ツリー "SQL Server 2005 Network Configuration" を展開し、TCP/IP が有効になっていることを確認します。TCP/IP を右クリックして [プロパティ] を選択し、[IP アドレス] タブを選択します。デフォルトのポートは 1433 です。

他の誰かが既に述べたように、職場ネットワークへの VPN 接続を確立することは、より安全で推奨されるアプローチです.

于 2009-03-14T03:47:26.787 に答える