SSH経由でリモートコンピュータに接続できませんが、pingは可能 - VPNC

SSH経由でリモートコンピュータに接続できませんが、pingは可能 - VPNC

VScodeは、リモートサーバー、SSH、およびVPNCに関する最近の質問について見つけたソリューションを作成して公開しています。はい、多くの時間を無駄にしました。あなたの時間を節約できることを願っています。

質問

デフォルトのubuntu VPNクライアントcisco互換(vpnc)を使用するには、VPNクライアントを変更する必要がありました。 VPNを設定した後、リモートSSHシステムにアクセスできません。ただし、コンピュータにpingを送信できます。

答え1

デバッグ後、ssh -v ...次のエラーが発生しました。

expecting SSH2_MSG_KEX_ECDH_REPLY 

この問題を解決するには(他リンク)/etc/ssh/ssh_config次の行を編集する前に:

#   MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160
MACs hmac-sha1

さて、端末を介したSSHは正常に動作します。

その後、リモートコンピュータでVscodeを開こうとしましたが、次のエラーが発生しました。

Remote-SSH hangs on "Setting up SSH Host <remote> (details) Initializing VS Code Server"

デフォルトでは無期限に停止し、しばらくすると接続タイムアウトが返されます。

このサイトのすべての回答と投稿を見た後、端末を見て接続が確立されていることがわかるので、問題はMTUに関連していると思われます。また.vscode_server、リモートシステムから削除したので、ホストからリモートで実行可能ファイルをアップロードする必要があることを知っています。

MTUの問題を確認するために、次のコマンドを実行しました。

scp file_large user@host

結果?コマンドを実行するとすぐに複製が停止します。 MTUの問題は現在ほとんど確認されています。

MTUの問題を修正

利用可能な最大MTUサイズをテストするために、pingコマンドを使用してサーバーにpingを実行しました。

ping -M do -s 1500 remote_ip

コマンドが返されないまでMTUサイズ(この場合は1500)を減らします。

 ping: local error: message too long, mtu=1500

MTUサイズ(私は1370)を見つけた後、VPNトンネル名のMTUを変更しました。

sudo ifconfig your_tunnel_name mtu 1370 up

そして、scpコマンドが正しく動作するかどうかをテストしました。残念ながら、このコマンドは永続的ではないため、作成する必要があります。永久に:

以下にファイルを作成します。/etc/network/if-up.d

そして

#!/bin/sh

if [ "$IFACE" = "your_tunnel_name" ]; then
    sudo ifconfig your_tunnel_name mtu 1300
fi

注:ファイルを実行可能にしてください。

今私のコンピュータにアクセスできます!

関連情報