Netscreen vpnc VPNトンネルを設定し、他のLinuxシステム(Ubuntu、Lubuntu、Antergos)から接続しましたが、すべて同じ動作を示しています。
マイコンピュータに接続されているUSBモデムを使用してインターネットに接続すると、VPNトンネルに接続してHTTP、HTTPS、Ping、SSHなどのすべてのサービスが利用可能になり、期待どおりに機能します。
しかし、WiFiホットスポットを介してインターネットに接続すると(そして家、オフィス、およびいくつかの無料の公衆WiFiを含むいくつかの異なるホットスポットをテストしました)、SSHが機能していない間はHTTP、HTTPS、およびPINGだけが機能するようです。中間状態。予備交渉:
$ ssh -v [email protected]
OpenSSH_6.7p1 Ubuntu-5ubuntu1.4, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 123.45.67.89 port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_rsa-cert type -1
[ ... cut ... ]
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.7p1 Ubuntu-5ubuntu1.4
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1
debug1: match: OpenSSH_5.1 pat OpenSSH_5* compat 0x0c000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr [email protected] none
debug1: kex: client->server aes128-ctr [email protected] none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<3072<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
しばらくして:
Connection closed by 123.45.67.89
ルーティングはUSBモデムを接続したときと同じに設定され、iptablesは空です。なぜうまくいかず、それを機能させるにはどうすればよいですか?
答え1
理想的には、ホットスポットとクライアントの最大転送単位(MTU)サイズは同じでなければなりませんが、クライアントのサイズがホットスポットのサイズを超えてはいけません。
クライアントトンネルデバイスのMTUサイズを下げます。たとえば、次のようになります。
$ ip addr show dev tun0
6: tun0: <POINTTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1412 qdisc pfifo_fast state UNKNOWN group default qlen 500
したがって、ここでMTUサイズは1412バイトです。少し下げてください:
$ ip link set tun0 mtu 1000
チャジャン、sshも動作します。
この変更を永久に適用するには、個別に行う必要があります。
この問題については、次に説明します。ウィキペディア:
エンドノードに表示されるMTU(1500など)とルートMTUの違いにより、ルートMTU検索が適用され、不適切に設定されたファイアウォールの背後にある一部のサイトにアクセスできなくなる可能性があります。
この点を指摘してくれた@Jakujeに感謝します。