web-dev-qa-db-ja.com

iPhoneクライアントで純粋なIPSECにstrongswanまたはopenswanを設定する方法

IphoneのVPNクライアントで使用するstrongswanまたはopenswanの設定方法に関する具体的な最新情報を見つけるのに苦労しています。私のサーバーはバジェットlinksys NATルーターの背後にあります。

私は this を見つけましたが、それはそれらを作成する方法についての参照なしで.pemファイルの束全体について言及しています。残念ながら、両方のパッケージの「細かい」マニュアルは、初心者には非常に不可解で不親切でした。私は以前にOpenVPNをセットアップし、非常に迅速にサービス可能な結果を​​得ることができましたが、1日半の古いドキュメントを読んだ後、どこから始めればよいかほとんどわかりません。

どんな助けでも大歓迎です!

21
Shabbyrobe

これは役に立ちますか?
よろしく、ウィレムM.ポート

StrongSwan mini Howto Debian 5

install strongswan + openssl
apt-get install strongswan openssl

CAファイルを作成します。

cd /etc/ipsec.d
openssl req -x509 -days 3650 -newkey rsa:2048 -keyout \
private/strongswanKey.pem -out cacerts/strongswanCert.pem
cp cacerts/strongswanCert.pem certs/

CA証明書をバイナリDER形式にする場合は、次のコマンドでこの変換を実行します。

openssl x509 -in cacerts/strongswanCert.pem -outform DER -out \ 
cacerts/strongswanCert.der

編集/etc/ssl/openssl.conf/usr/lib/ssl/openssl.cnfはシンボリックリンクです):

nano -w /usr/lib/ssl/openssl.cnf

Strongswan環境に合わせてパラメーターを変更します。

[ CA_default ] 

dir     = /etc/ipsec.d              # Where everything is kept 
certificate = $dir/cacerts/strongswanCert.pem       # The CA certificate 

private_key = $dir/private/strongswanKey.pem        # The private key 

不足しているDIRとファイルを作成します。

mkdir newcerts
touch index.txt
echo “00” > serial

ユーザー証明書を生成します。

openssl req -newkey rsa:1024 -keyout private/hostKey.pem \
    -out reqs/hostReq.pem

2年間署名する:

openssl ca -in reqs/hostReq.pem -days 730 -out \
    certs/hostCert.pem -notext

通常、WindowsベースのVPNクライアントには、秘密鍵、そのホストまたはユーザー証明書、およびCA証明書が必要です。この情報をロードする最も便利な方法は、すべてをPKCS#12ファイルに入れることです。

openssl pkcs12 -export -inkey private/hostKey.pem \
    -in certs/hostCert.pem  \
    -name "Host" \ 
    -certfile cacerts/strongswanCert.pem \
    -caname "strongSwan Root CA" \
    -out Host.p12

編集/etc/ipsec.secrets

:RSA strongswanKey.pem “pempassword”
:XAUTH user "secret"

編集/etc/ipsec.conf

config setup
    plutodebug=none
    uniqueids=yes
    nat_traversal=yes
    interfaces="%defaultroute"

conn %default
    authby=rsasig
    leftrsasigkey=%cert
    rightrsasigkey=%cert
    keyingtries=1
    keylife=20m
    ikelifetime=240m

conn iphone
    auto=add
    dpdaction=clear
    authby=xauthrsasig
    xauth=server
    pfs=no
    leftcert=strongswanCert.pem
    left=<serverip>
    leftsubnet=0.0.0.0/0
    right=%any
    rightsourceip=<virtual client ip>   #local VPN virtual subnet
    rightcert=hostCert.pem

IPhoneで

  1. Iphoneクライアント証明書をp12形式でインポートします
  2. CA証明書をpem形式でインポートする
  3. Iphone-client証明書を使用してIPSEC-VPNを構成し、サーバーとしてDNS名(DynDNS-Name)を使用します。サーバー証明書にあるものと同じである必要があります

証明書をiphoneにインポートするには、自分宛にメールで送信してください。 iPhoneでipsec vpnを作成するときに、証明書を選択できます。

NATを行う場合は、iptablesを設定する必要があることに注意してください。 (fwbuilderをご覧ください)

23
Willem M. Poort