Synology DS212 NASボックスを会社のVPNへのVPNゲートウェイとしても使用しようとしています。悲しいことに、彼らはCisco ASAのみを使用し、さらに複雑なものにするために、個人証明書を使用する必要があります(もちろん、より安全ですが、さらに複雑になります...)。
そこで、http: //www.infradead.org/openconnect/からOpenConnect v4.06をコンパイルしました。非常に基本的なテストとして、手動でopenconnectを呼び出し、次のようにキーファイルと証明書ファイルを渡して接続を確立しようとしました。
/lib/ld-linux.so.3 --library-path /opt/lib \
/opt/openconnect/sbin/openconnect \
--certificate=$VPN_CFG/alexander.crt \
--sslkey=$VPN_CFG/alexander.key \
--cafile=$VPN_CFG/Company_VPN_CA.crt \
--user=alexander --verbose <ip>:443
失敗します:(
Attempting to connect to <ip>:443
Using certificate file $VPN_CFG/alexander.crt
Using client certificate '/CN=alexander@tech.doma.in/OU=Company VPN'
5919:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1315:
Loading private key failed (see above errors)
Loading certificate failed. Aborting.
Failed to open HTTPS connection to <ip>
Failed to obtain WebVPN cookie
Ubuntu 12.04ボックスで同じ証明書/キーファイルを使用して同じコマンドを実行すると、動作します。
openconnect \
--certificate=$VPN_CFG/alexander.crt \
--sslkey=$VPN_CFG/alexander.key \
--cafile=$VPN_CFG/Company_VPN_CA.crt \
--user=alexander --verbose <ip>:443
Attempting to connect to <ip>:443
Using certificate file $VPN_CFG/alexander.crt
Extra cert from cafile: '/CN=Company AG VPN CA/O=Company AG/L=Zurich/ST=ZH/C=CH'
SSL negotiation with <ip>
Server certificate verify failed: self signed certificate
Certificate from VPN server "<ip>" failed verification.
Reason: self signed certificate
Enter 'yes' to accept, 'no' to abort; anything else to view: yes
Connected to HTTPS on <ip>
GET https://<ip>/
[…]
さて... NASのエラーは次のとおりです。
5919:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1315:
何かアイデア、これは何が原因ですか?
Synoでは、OpenConnect 4.06を使用します。Ubuntuでは、OpenConnect 4.06のカスタムロケーションにもコンパイルしてインストールしました。
ありがとう、アレクサンダー