web-dev-qa-db-ja.com

Ubuntuで複数の永続的なvpnc接続を維持する方法

Mark Knowlesのブログ 永続的なvpnc接続を維持する方法についての良い説明があります。ただし、これは複数のvpnc接続ではうまく機能しません(接続は私には機能しません。すべてが1回の切断で再接続されます...)。複数のvpnc接続を維持するためのより良い方法はありますか?

1
Cookie

次の変更は、複数のプロファイルで適切に機能します。

  1. まだ行っていない場合は、/ etc/vpncの.confファイルにLocal Port 0を追加します。これにより、ランダムなローカルポートが使用され、複数の接続がより適切に許可されます。
  2. すべての接続について、接続する(そして接続を維持する)VPNネットワーク上のIPとポートを選択します。すべての接続について、接続がまだ可能であることを確認し、そうでない場合はvpncを起動するスクリプトを/ usr/local/binに記述します。 EnsureVPNXXX.sh with

    #!/bin/bash
    if ! nc -z -w 2 targetip targetport
    then /usr/sbin/vpnc-connect connectionprofile.conf
    fi
    
  3. 再接続スクリプト/etc/vpnc/reconnect-scriptを変更して、これらのEnsureXXX.shスクリプトをすべて使用します(次々に実行するため、最後に&はありません)。

    #!/bin/bash
    sleep 30
    /usr/local/bin/EnsureVPN1XXX.sh
    /usr/local/bin/EnsureVPN2XXX.sh
    ...
    
  4. /etc/init.d/vpncスクリプトはほとんど同じですが、/etc/default/vpncを調達する必要がなくなった点が異なります。

スクリプトは実行可能である必要があることを忘れないでください。ルートから呼び出す限り、これらのスクリプトは自動化されたcronジョブで非常にうまく機能します。 VPNネットワークの任意のボックスでscpまたはrdesktopを呼び出す前に、かなりEnsureVPNxxx.shを実行してください。 su -u yourusername commandを使用すると、いつでもルートからドロップバックできます。そして、明らかに、rootのcrontabを使用します。

2
Cookie