CEntOS 7端末でopenconnectを使用してVPNに接続します。 SSHセッションを使用しているため、ターミナルは1つだけです。 openconnectを使用してVPNに接続する必要があります。私はこのようにします:
openconnect -u username us.myprovider.net
VPNをバックグラウンドで実行してから、他のことをフォアグラウンドで実行する必要があります。現在、私はVPNを開始し、Ctrl + Zを押してからbgを押してバックグラウンドに送信します。しかし、これはVPN接続を閉じているようです。どうやってやるの?
Openconnectドキュメント によると、試してみたいオプションは次のとおりです。
-b,--background
Continue in background after startup
はい。 -b
はオプションです。しかし、それは次の問題につながるだけです。つまり、クリーンな切断は不可能です。つまり、バックグラウンドでopenconnect
を終了する唯一の方法は、プロセスを強制終了することです。しかし、これはネームサービスの問題を引き起こします。すべてのDNS要求は、VPN確立プロセス中に学習されたネームサーバーに送信されますが、切断後には到達できなくなります。唯一の回避策は、インターフェイス全体をシャットダウンして、再度起動することです。
接続する:
Sudo openconnect --background <...>
切断するには:
Sudo killall -SIGINT openconnect
SIGINT
を使用すると、DNS構成をクリーンアップして正常に終了するためのバックグラウンドプロセス時間が得られます。
最後に、私はこのソリューションを思い付きました:openvpn
コマンドを実行してサーバーに接続します。次に、Ctrlキーを押しながらZキーを押して停止し、bg
と入力して、停止したプログラムをバックグラウンドで続行します。プログラムをフォアグラウンドで実行し続けるには、fg
と入力する必要があります。その後、CTRL + Cを押してVPNを切断できます。