VPNがオンの場合、SSHサーバーに接続できません


9

最近、ワークステーションがVPN接続を介して接続すると、そのSSHサーバーにリモートサイトから接続できないことがわかりました。VPNクライアントがデフォルトゲートウェイをppp接続のピア(VPNサーバー)に変更しているため、これはルーティングの問題だと確信しています。

SSHサーバーとVPNクライアントの両方を満足させるソリューションはありますか?

回答:


2

vpnを使用する場合、通常、vpnネットワークはインターフェイス全体を引き継ぐため、vpnネットワーク上のどこからでもルーティングでき、インターネット全体ではルーティングできません。ほとんどの人は、vm(virtualboxなど)を実行してその仮想マシンのvpnに接続することでこの問題を解決し、実際のマシンのメイン接続を完全にホースしないようにします。


いくつかのルーティングトリックを実行して、VPNからのデータを一方向にルーティングし、他のデータを他の方法(別のゲートウェイなど)にルーティングできますが、virtualboxを使用する方がはるかに簡単です。:-)
Stu

提案をありがとう!どのルーティングトリックでこれを実現できるか知りたいのですが。
btw0

VM stuを使用していますが、開発作業を行う必要があるため、ホストでVPNを評価できません。
Jamie Hutber、

ああ、私は別の方法を提案していました。vpnをvmでのみ使用すると、reakマシンはオープンで無料のインターネットを利用できます。
Stu

2

ネットワーク設定を冒険する前に、問題のsshサーバーがVPNインターフェースをリッスンしているかどうかを確認してください。多分それはあなたのサーバーの特定のインターフェースにバインドされています。

netstat -a出力例:

 Proto Recv-Q Send-Q Local Address    Foreign Address   State      
 tcp        0      0 *:ssh            *:*               LISTEN      

この例のsshサーバーは、すべてのインターフェース(でアスタリスクで示されています)をリッスンします*:ssh。システムにホストアドレスがある場合、sshサーバーは特定のインターフェースにバインドされます。

必要に応じて、これを編集/etc/ssh/sshd_configおよび設定ListenAddress 0.0.0.0して調整します。

sshdがすでに正しいインターフェースをリッスンしている場合は、ルーティングダンジョンに進んでください:-)


1
どのアドレスListenAddressに設定する必要がありますか?ローカルインターフェイス上のサーバーのIPですか。ルータのIP?他に何か?
サイコノート

0

スプリットトンネリングについて話しています。コマンドラインのROUTE.EXEツール慣れている場合は、VPNクライアントによって配置されたルートを調べて削除できる可能性があります。次に、1つを再度追加して、企業LANへのトラフィックのみがVPNゲートウェイを通過できるようにします。

具体的には、

route print

...ルーティングエントリのリストを取得します。出力が表示されない場合、VPNクライアントはデフォルト(0.0.0.0)エントリを配置し、ゲートウェイがVPNピアゲートウェイであるように見えます。使用できます

route delete 10.*

...たとえば、10.xxxネットワークを指すすべてのエントリを削除します。

次に使用できます

route add 10.0.0.0 mask 255.0.0.0 10.0.99.99

...最初のアドレス(10.0.0.0 255.0.0.0)は企業ネットワークとマスクで、2番目のアドレスはリモートゲートウェイです。

接続するたびにこれを実行する必要があるため、スクリプトを作成することをお勧めします。

注:別の方法として、スプリットトンネリングを使用するようにVPNを設定するように会社を説得することもできます。これについての議論は、帯域幅の減少と(IANAL)ネットワークを流れる企業以外のWebトラフィックの責任の軽減です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.