IPSec between OpenBSD and Mac OS X Howto
This Howto will give some basics about how to setup a roadwarrior style IPSec VPN between your OpenBSD gateway, and your road-warrior Mac OS X machine.
What is road warrior? – This means your IP is changing all the time. It doesn’t necessarily mean that you carry bazookas to a knife fight on the road.
Configuring OpenBSD
Edit your /etc/rc.conf to contain the following:
isakmpd_flags=”-K4dv”
Create the file /etc/ipsec.conf . Here’s what mine looks like… Kinda.
ike passive from any to any \
main auth hmac-sha1 enc aes group modp1024 \
quick auth hmac-sha1 enc aes psk YOURSHAREDKEYHERE
Run the following command to get the ipsecctl command to configure your ISAKMPD using the /etc/ipsec.conf file we just created
ipsecctl -f /etc/ipsec.conf
Configuring Mac OS X
First download IPSecuritas from Lobotomo Software
Import the following config file, and be sure to change the line: sainfo subnet 172.16.175.4/32 any subnet 10.20.30.0/23 any to your local IP, and remote Subnet you want access to.
log notify;
path pre_shared_key "/Library/Application Support/Lobotomo Software/IPSecuritas/psk.txt";
path certificate "/Library/Application Support/Lobotomo Software/IPSecuritas/certs";
padding
{
maximum_length 20;
randomize on;
strict_check off;
exclusive_tail on;
}
timer
{
counter 5;
interval 5 seconds;
persend 1;
phase1 15 seconds;
phase2 15 seconds;
}
# Connection "OpenBSD Gateway"
remote 192.149.131.95
{
verify_cert off;
verify_identifier off;
initial_contact on;
passive off;
support_proxy off;
generate_policy off;
verify_cert off;
send_cert on;
send_cr on;
mode_cfg off;
ike_frag on;
doi ipsec_doi;
situation identity_only;
nat_traversal off;
exchange_mode main;
proposal_check obey;
nonce_size 16;
my_identifier address;
peers_identifier address;
proposal
{
lifetime time 1800 seconds;
encryption_algorithm aes 256;
hash_algorithm sha1;
authentication_method pre_shared_key;
dh_group modp1024;
}
}
sainfo subnet 172.16.175.4/32 any subnet 10.20.30.0/23 any
{
lifetime time 1800 seconds;
pfs_group modp1024;
encryption_algorithm des, 3des, aes 256, aes 192, aes 128;
authentication_algorithm hmac_md5, hmac_sha256;
compression_algorithm deflate;
}
listen
{
isakmp 172.16.175.4 [500];
isakmp_natt 172.16.175.4 [4500];
adminsock "/Library/Application Support/Lobotomo Software/IPSecuritas/admin.sock";
}
You should be in really good shape from this point.