OpenVPNを介したSSHセッションは、数行後にブロック/ロックされます。

OpenVPNを介したSSHセッションは、数行後にブロック/ロックされます。

私はDebian 6(ARM)を実行している同じファンレスPCを複数台持っています。ほとんどはComcastを介して接続され、うまく動作します。一部は「WiMax」モデムに接続されており、通信に問題があります。

具体的には、そのいずれかでsshを使用して "ps -ax"などのコマンドを試すと、約3行が返され、セッションがロックされます。静かにしておくと、最終的には「ピアによってセッションが閉じられました」というメッセージで終了します。

私が試したこと:

  • ssh -vvv →エラーメッセージなし
  • ssh <user@host> 'command'→ 時にはコマンドの出力全体が返されます。時にはまったく接続されていない場合があります。

他のことを試してみるべき提案がありますか?

私はいくつかのコマンドを正常に実行できることを発見しました。たとえば、Enterを12回以上押すとトリックが実行されます。cd ~その後、lfそのまま作業してくださいdf -h。複数回正常に実行できますが、より多くの出力(例:)を持つ操作をdf試みるとすぐに動作が停止します。ls /etc

OpenVPNを使用してこれら2つのホスト間で通信しようとする試みに違いはありますか?

答え1

あなたは次の症状があります最大伝送単位問題:一部のTCP接続が停止し、特定のコマンドまたはURLに対してある程度の繰り返しが可能ですが、識別しやすい全体パターンがありません。 1つの明らかな症状は、出力が多くのコマンドを実行しない限り、対話型SSHセッションが正常に機能することです。バラよりPPPoEを介してLinuxで選択したhttpsサイトにアクセスできません。説明のために。

OpenVPNには複数のMTU関連オプションがあります。マニュアルで「mtu」を検索してください。どのオプションを変更するかを判断するのに十分な経験がありません。 (Wimaxモデム構成で何かを変更することもできます。)変更する可能性が最も高いオプションは、mssfix問題が解決されるまで値を下げることです。デフォルト値は 1450 です。 1400 程度の値を使用すると、問題を解決できます。openvpn --fragment 1200 -mssfix役に立つ場合は、中断が始まるまで値を大きくしてください。

答え2

Gilesの答えは絶対に正確ですが、もう一つの根本的な理由があります。

OpenVPN バージョン 2.3.0 には、大量のデータを転送する際にクライアントが切断されるバグがあります。https://community.openvpn.net/openvpn/ticket/263

この問題は TCP を使用する場合にのみ発生します。 UDPはまったく影響を受けません。

答え3

私たちも同じ問題に直面しましたが、実際にはMTU問題でした。しかし、私たちにとって問題は、openVPN設定ではなくtun0インターフェイスでした。

この問題を解決するには:まず、転送された最大パケットサイズを見つけます。

ping <host> -s 1500 -M do

特定の値(私たちの場合は1350)が発生するまで値を1500減らします。

正しい値が見つかったら、tun0 インターフェイスを次のように変更します。

sudo ip link set dev tun0 mtu 1350

セバスチャンが提案したようにここ。その後、VPNはスムーズに動作しました。

関連情報