Vpnc
vpnc は Cisco のハードウェア VPN に接続するための VPN クライアントです。
インストール
設定
vpnc の設定ファイルは /etc/vpnc
に保存します。default.conf
ファイルをコピーして変更を加えてください。
vpnc --long-help
を実行すると様々な設定オプションの名前と説明が表示されます。例えば、以下のようなオプションの場合:
--gateway <ip/hostname> IP/name of your IPSec gateway conf-variable: IPSec gateway<ip/hostname>
設定ファイルでは以下のように記述します:
IPSec gateway gateway.example.com
起動
vpnc
パッケージには systemd ユニットの vpnc@.service
が付属しています。例えば /etc/vpnc/client.conf
設定ファイルを使いたい場合、systemctl start vpnc@client
で起動できます。
トラブルシューティング
vpnc クライアントが以下のようにクラッシュする場合:
May 15 09:11:38 ntrp-mimacom systemd-coredump[5858]: Process 5814 (vpnc) of user 0 dumped core. Stack trace of thread 5814: #0 0x00007f835cba3a10 raise (libc.so.6) #1 0x00007f835cba513a abort (libc.so.6) #2 0x00007f835cb9c607 __assert_fail_base (libc.so.6) #3 0x00007f835cb9c6b2 __assert_fail (libc.so.6) #4 0x000000000040e48c n/a (vpnc) #5 0x0000000000412348 n/a (vpnc) #6 0x0000000000404f72 n/a (vpnc) #7 0x00007f835cb90511 __libc_start_main (libc.so.6) #8 0x000000000040596a n/a (vpnc)
ソフトウェアにモンキーパッチを適用する必要があります。
http://svn.unix-ag.uni-kl.de/vpnc/trunk/ からソースをダウンロードして vpnc.c
ファイルに以下のようにパッチをあててください:
Index: vpnc.c =================================================================== --- vpnc.c (revision 550) +++ vpnc.c (working copy) @@ -1206,7 +1206,7 @@ assert(a->af == isakmp_attr_16); assert(a->u.attr_16 == IKE_LIFE_TYPE_SECONDS || a->u.attr_16 == IKE_LIFE_TYPE_K); assert(a->next != NULL); - assert(a->next->type == IKE_ATTRIB_LIFE_DURATION); + /* assert(a->next->type == IKE_ATTRIB_LIFE_DURATION); */ if (a->next->af == isakmp_attr_16) value = a->next->u.attr_16;
一時的な解決方法は次のページあります: https://bbs.archlinux.org/viewtopic.php?id=225556