strongSwanの設定
strongSwanのインストール
普通にaptなどでインストールする。
$ apt install strongswan
証明書の配置
作成しておいた証明書を配置する。
$ cd vpnca
$ sudo cp ca.crt /etc/ipsec.d/cacerts
$ sudo cp server.key /etc/ipsec.d/private
$ sudo cp server.crt /etc/ipsec.d/
設定ファイルの編集
/etc/ipsec.secret
以下の内容を追記する。
: RSA "/etc/ipsec.d/private/server.key"
/etc/ipsec.conf
以下の内容に書き換える。
config setup uniqueids=no conn tls auto=add compress=no type=tunnel keyexchange=ikev2 forceencaps=yes ike=aes256-sha256-modp2048 esp=aes256-sha256 dpdaction=clear rekey=no left=%any # サーバ証明書のCNかSANに合わせて設定する。 leftid=@vpn.example.com leftcert=/etc/ipsec.d/certs/server.crt leftsendcert=always leftsubnet=0.0.0.0/0 right=%any rightid=%any # 認証方式 rightauth=eap-tls # VPNクライアントに割り当てるIPアドレス rightsourceip=10.1.2.0/24 # VPNクライアントに通知するDNSサーバ rightdns=8.8.8.8,8.8.4.4 rightsendcert=always eap_identity=%identity
/etc/strongswan.d/charon-logging.conf
接続できなかったときに、調査できるように設定しておく。 最低限以下の設定はないとtail -fで不便。
default = 2 flush_line = yes time_format = %F %T
macから接続確認
- サーバアドレス:vpn.example.com(接続するIPアドレスでもOK)
- リモートID:vpn.example.com(サーバー証明書のCN)
- ローカルID:username@vpnusers(クライアント証明書のCN)
- 認証設定:証明書
- 証明書:自分のクライアント証明書
自分のクライアント証明書のインストールは、pkcs12を開けばOK。 VPN Root CAはクライアント証明書のインストールの前にインストールしておき、常に信頼するように設定する。
iPhoneの設定も同じような感じです。