Pro tento účel jsem již použil démona racoon. Jeho konfigurace, uložená v souboru /etc/racoon/racoon.conf je stejná pro oba stroje:
# /etc/racoon/racoon.conf
log debug2;
path pre_shared_key "/etc/racoon/psk.txt";
remote anonymous
{
exchange_mode main;
doi ipsec_doi;
situation identity_only;
my_identifier address;
lifetime time 2 min;
initial_contact on;
proposal_check obey;
proposal {
encryption_algorithm 3des;
hash_algorithm md5;
authentication_method pre_shared_key;
dh_group 2;
}
}
sainfo anonymous
{
pfs_group 1;
lifetime time 2 min;
encryption_algorithm 3des;
authentication_algorithm hmac_md5;
compression_algorithm deflate;
}
Dále jsem definoval sdílené tajemství. Tím bylo heslo tajneheslo. Na „serveru“ pikachu je uloženo v souboru /etc/racoon/psk.txt
# IPv4/v6 addresses 212.96.165.121 tajneheslo # USER_FQDN # FQDN
Na straně klienta je pak ve stejném souboru uvedeno
# IPv4/v6 addresses 212.96.165.122 tajneheslo # USER_FQDN # FQDN
Tato konfigurace není úplná, ještě bylo třeba doplnit skripty spd.conf. Na Serveru:
#!/usr/sbin/setkey -f
flush;
spdflush;
spdadd 212.96.165.122 212.96.165.121 any -P out ipsec
esp/transport//require
ah/transport//require;
spdadd 212.96.165.121 212.96.165.122 any -P in ipsec
esp/transport//require
ah/transport//require;a na klientovi
#!/usr/sbin/setkey -f
flush;
spdflush;
spdadd 212.96.165.121 212.96.165.122 any -P out ipsec
esp/transport//require
ah/transport//require;
spdadd 212.96.165.122 212.96.165.121 any -P in ipsec
esp/transport//require
ah/transport//require;Tyto skripty se spustí na obou stranách ještě před startem démona racoon.