Isso ajuda?
Atenciosamente, Willem M. Poort
Manual do StrongSwan mini Debian 5
install strongswan + openssl
apt-get install strongswan openssl
Crie o seu arquivo 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/
Se você preferir que os certificados da CA estejam no formato binário DER, o seguinte comando alcançará essa transformação:
openssl x509 -in cacerts/strongswanCert.pem -outform DER -out \
cacerts/strongswanCert.der
Editar /etc/ssl/openssl.conf
( /usr/lib/ssl/openssl.cnf
é um link simbólico):
nano -w /usr/lib/ssl/openssl.cnf
Altere os parâmetros para se ajustar ao seu ambiente de cisne forte.
[ 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
Crie DIR e arquivos ausentes:
mkdir newcerts
touch index.txt
echo “00” > serial
Gere um certificado de usuário:
openssl req -newkey rsa:1024 -keyout private/hostKey.pem \
-out reqs/hostReq.pem
Assine por dois anos:
openssl ca -in reqs/hostReq.pem -days 730 -out \
certs/hostCert.pem -notext
Geralmente, um cliente VPN baseado no Windows precisa de sua chave privada, seu certificado de host ou usuário e o certificado CA. A maneira mais conveniente de carregar essas informações é colocar tudo em um arquivo 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
Editar /etc/ipsec.secrets
:
:RSA strongswanKey.pem “pempassword”
:XAUTH user "secret"
Editar /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
No iPhone
- Importar o certificado iphone-client no formato p12
- Importar o certificado da CA no formato pem
- Configure uma VPN IPSEC com o certificado iphone-client e use como servidor o nome DNS (nome DynDNS). Tem que ser o mesmo que o certificado do servidor
Para importar os certificados no seu iphone, basta enviá-los por e-mail para você! Ao criar o ipsec vpn no seu iPhone, você pode selecionar o certificado.
Lembre-se de que você precisa configurar o iptables se quiser o NAT. (Olhe para fwbuilder)