web-dev-qa-db-ja.com

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

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

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

9
btw0

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

2
Stu

ネットワーク設定を冒険する前に、問題の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がすでに正しいインターフェースをリッスンしている場合は、ルーティングダンジョンに気軽に参加してください:-)

2
ktf

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

具体的には、

route print

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

route delete 10.*

...たとえば、10.x.x.xネットワークを指すすべてのエントリを削除する場合。

次に使用できます

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トラフィックに対する責任の削減です。

0
Geoff