LibreSwanでiPhoneとVPN

CentOS7でLibreSwanを使ってiPhoneとVPNを張る設定。
今回は事前共有キーで行う。

ただ、現在はVPNが張れただけで以下が課題となっている。

  • DNSサーバ等の設定が未完であり、VPN利用中名前解決ができない
  • 事前共有キーなので攻撃に弱い/証明書認証に切り替える必要がある
  • ユーザ認証をPAMとしているが、LDAP等他の認証に切り替える手段(を把握しておく)

とはいっても基本的な設定は今回できたはずなので、上記は追々調べる予定。

LibreSwan側設定

/etc/ipsec.d/IPSecVPN_Mobile.conf

conn IPSecVPN_Mobile_iOS_PSK
    authby              = secret
    auto                = add
    ikev2               = yes

    phase2              = esp
    ikepad              = yes
    encapsulation       = yes
    nat_traversal       = yes

    # LEFT側(=CentOSにとってローカル側)設定
    leftid              = @serverid
    left                = %defaultroute
    leftsubnet          = 0.0.0.0/0

    # RIGHT側(=CentOSにとってリモート側)設定
    rightid             = @clientid
    right               = %any
    rightaddresspool    = 100.64.99.1-100.64.99.99

/etc/ipsec.d/IPSecVPN_Mobile.secrets

事前共有キー(例としてsVdlyfFb7lを発行)の設定。
クォートして記述する。

: PSK "sVdlyfFb7l"

iPhone側設定

設定のVPN接続より、以下のプロファイルを作成する。

  • タイプ
    • IKEv2
    • 説明
      • (適当なわかりやすい説明を記述)
    • サーバ
      • (CentOSのIPアドレスもしくはFQDNを記述)
    • リモートID
      • (CentOSのleftidで設定した値の@以降の値を記述:)serverid
    • ローカルID
      • (CentOSのrightidで設定した値の@以降の値を記述:)clientid
    • ユーザ認証
      • なし
    • 証明書を使用
      • オフ
    • シークレット
      • (事前共有キーを記述:)sVdlyfFb7l

    iPhone側設定

    設定が完了したら、VPN構成を接続状態にするとVPNアイコンが通知エリアに表示される。
    またCentOS側からもipsec auto --status等で状況を確認するとactive接続として認識されていることが確認できたり
    VPNクライアントに払い出されたIP宛てにICMP Pingを送ると応答がかえってきたりすることが分かる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です