На моем сервере Debian я установил демон racoon (1: 0.8.0-14) для Cisco IPSec VPN, используя сертификаты для аутентификации. Мой racoon.conf выглядит следующим образом:
log info;
path certificate "/etc/racoon/certs";
listen {
isakmp $SERVER_IP_HERE [500];
isakmp_natt $SERVER_IP_HERE [4500];
}
timer {
natt_keepalive 10 sec;
}
remote anonymous {
lifetime time 24 hours;
proposal_check obey;
passive on;
exchange_mode aggressive,main;
my_identifier asn1dn;
peers_identifier asn1dn;
verify_identifier on;
certificate_type x509 "cert_name.crt" "key_name.key";
ca_type x509 "ca.crt";
mode_cfg on;
verify_cert on;
ike_frag on;
generate_policy on;
nat_traversal on;
dpd_delay 20;
proposal {
encryption_algorithm aes;
hash_algorithm sha1;
authentication_method xauth_rsa_server;
dh_group modp1024;
}
}
mode_cfg {
conf_source local;
auth_source system;
auth_throttle 3;
save_passwd on;
dns4 8.8.8.8;
network4 $SOME_LAN_SUBNET;
netmask4 255.255.255.0;
pool_size 128;
}
sainfo anonymous {
pfs_group 2;
lifetime time 24 hour;
encryption_algorithm aes;
authentication_algorithm hmac_sha1;
compression_algorithm deflate;
}
Я не использую здесь аутентификацию PSK. С помощью утилиты настройки iPhone я загрузил все необходимые сертификаты на iPhone и настроил VPN по запросу. Все работает нормально, кроме одного: iPhone отказывается сохранять пароль VPN независимо от save_passwd on;
в файле конфигурации racoon. В отличие от поведения iPhone, Mac OS X 10.8.2 не имеет проблем с сохранением пароля. Я изучил файл журнала iPhone и обнаружил следующее:
racoon[151] <Notice>: >>>>> phase change status = phase 1 established
configd[50] <Notice>: IPSec Network Configuration started.
configd[50] <Notice>: IPSec Network Configuration: INTERNAL-IP4-ADDRESS = $SUBNET_IP_HERE.
configd[50] <Notice>: IPSec Network Configuration: INTERNAL-IP4-MASK = 255.255.255.0.
configd[50] <Notice>: IPSec Network Configuration: SAVE-PASSWORD = 0.
configd[50] <Notice>: IPSec Network Configuration: INTERNAL-IP4-DNS = 8.8.8.8.
configd[50] <Notice>: IPSec Network Configuration: BANNER = .
configd[50] <Notice>: IPSec Network Configuration: DEF-DOMAIN = .
configd[50] <Notice>: IPSec Network Configuration: DEFAULT-ROUTE = local-address $SUBNET_IP_HERE/32.
configd[50] <Notice>: IPSec Phase2 starting.
configd[50] <Notice>: IPSec Network Configuration established.
configd[50] <Notice>: IPSec Phase1 established.
Обратите внимание на сообщение конфигурации сети IPSec, содержащее SAVE-PASSWORD = 0.
. Это ошибка в демоне racoon на сервере или iPhone (версия iOS 6.0.1 (10A523)) или мне чего-то не хватает? Как заставить iPhone запомнить пароль IPSec VPN?