VPN 経由の SSH に関するターミナルの問題

VPN 経由の SSH に関するターミナルの問題

Linux Ubuntu クライアント マシンから SSH 経由で Linux Ubuntu サーバーにアクセスしようとします。

クライアントとサーバーが同じネットワーク内にある場合、すべて正常に動作しますが、VPN - openVPN 経由でリモートでサーバーにアクセスしようとすると、mc-midnight commander などの全画面アプリケーションが正しく表示されず、表示された画面の右上隅の文字しか表示されず、キーボード操作が機能しないようです。

また、単純なテキスト ファイルに対して発行された cat コマンドは、出力を表示せずにターミナルをハングさせます。

不思議なことに、Android OpenVPN クライアントと Android SSH クライアントを使用して Android フォンから VPN 経由で同じサーバーにアクセスすると、すべて正常に動作します。

私の Ubuntu クライアント マシンでは、TERM 環境変数は「xterm-256color」に設定されていますが、Android フォンでは「linux」に設定されています。SSH セッションを開始する前に、Ubuntu クライアントで「linux」に設定しようとすると、SSH セッション内ではターミナルが実際には「linux」に設定されていることがわかりますが、効果はありません。

Ubuntu クライアントでも Putty 経由で接続してみましたが、結果は同じでした。

これが起こる理由について何か手がかりはありますか?

前もって感謝します!

答え1

さて、私は最終的に、ここにある OpenVPN マニュアルを読んでこの問題の解決策を見つけました。

https://openvpn.net/community-resources/reference-manual-for-openvpn-2-4/

この問題は、パス MTU 検出が正しく機能していないことに関連しているようです。

「--fragment と --mssfix はどちらも、OpenVPN ピア間のネットワーク パスでパス MTU 検出が壊れている場合を回避するように設計されています。

このような障害の一般的な症状は、OpenVPN 接続が正常に開始されるものの、アクティブな使用中に停止することです。--fragment と --mssfix を一緒に使用すると、--mssfix は --fragment max オプションからデフォルトの最大パラメータを取得します。

したがって、次のオプションを使用して、最大 UDP パケット サイズを 1300 に下げることができます (MTU 関連の接続問題を解決するための最初の試みとして適切です)。

--tun-mtu 1500 --fragment 1300 --mssfix "

サーバー側とクライアント側の両方にこれら 2 つのオプションを追加すると、問題は解決しました。

これが役に立つことを願っています。

関連情報