Выбрать главу

7.2.2. Пример.

Kame racoon имеет достаточно неплохие настройки по-умолчанию, так что мы не будем их касаться. Как уже говорилось выше, мы должны определить только политику безопасности, оставив право на создание защищенных каналов за демоном IKE.

В этом примере, мы опять вернемся к нашим хостам 10.0.0.11 и 10.0.0.216, и еще раз попробуем установить защищенное соединение между ними, но на сей раз с помощью racoon. Для упрощения конфигурации будем использовать предопределенные ключи, сертификаты X.509 будут обсуждаться в отдельном разделе (см. раздел Автоматизация с использованием сертификатов X.509 ).

Мы будем придерживаться конфигурации, заданной практически по-умолчанию и идентичной для обоих хостов:

path pre_shared_key "/usr/local/etc/racoon/psk.txt";

remote anonymous

{

 exchange_mode aggressive,main;

 doi ipsec_doi;

 situation identity_only;

 my_identifier address;

 lifetime time 2 min; # sec,min,hour

 initial_contact on;

 proposal_check obey; # obey – повиноваться, требованиям и ограничениям

 proposal {

  encryption_algorithm 3des;

  hash_algorithm sha1;

  authentication_method pre_shared_key;

  dh_group 2 ;

 }

}

sainfo anonymous {

 pfs_group 1;

 lifetime time 2 min;

 encryption_algorithm 3des ;

 authentication_algorithm hmac_sha1;

 compression_algorithm deflate ;

}

Многие из параметров настройки, на мой взгляд, могут быть удалены, поскольку они достаточно близки к заданным по-умолчанию. Здесь приведены два анонимных параметра, которые применяются ко всем удаленным хостам, за счет чего достигается простота конфигурации. На данный момент пока нет особой потребности в создании настроек для каждого конкретного хоста.

Кроме того, в настройках задана самоидентификация на основе собственного IP-адреса (my_identifier address). Затем объявляются используемые алгоритмы шифрования — 3des и sha1 и указывается, что будут использоваться предопределенные ключи, расположенные в файле psk.txt.

Содержимое файлов psk.txt с ключами приводится ниже. Для разных хостов они различны. Для хоста 10.0.0.11:

10.0.0.216 password2

Для хоста 10.0.0.216:

10.0.0.11 password2

Назначте владельцем файла суперпользователя (root), и установите права доступа 0600, в противном случае racoon откажется доверять их содержимому.

Теперь можно приступить к формированию политик безопасности, которые в данной ситуации достаточно просты и незамысловаты. На хосте 10.0.0.216:

#!/sbin/setkey –f

flush;

spdflush;

spdadd 10.0.0.216 10.0.0.11 any –P out ipsec

       esp/transport//require;

spdadd 10.0.0.11 10.0.0.216 any –P in ipsec

       esp/transport//require;

На хосте 10.0.0.11:

#!/sbin/setkey –f

flush;

spdflush;

spdadd 10.0.0.11 10.0.0.216 any –P out ipsec

       esp/transport//require;

spdadd 10.0.0.216 10.0.0.11 any –P in ipsec

       esp/transport//require;

Теперь все готово к запуску racoon! После того, как он будет запущен, попробуем установить сеанс связи, через telnet, с хоста 10.0.0.11 на хост 10.0.0.216, впрочем можно и наоборот. racoon тут же начнет "переговоры" с удаленным хостом:

12:18:44: INFO: isakmp.c:1689:isakmp_post_acquire(): IPsec-SA

  request for 10.0.0.11 queued due to no phase1 found.

12:18:44: INFO: isakmp.c:794:isakmp_ph1begin_i(): initiate new

  phase 1 negotiation: 10.0.0.216[500]<=>10.0.0.11[500]

12:18:44: INFO: isakmp.c:799:isakmp_ph1begin_i(): begin Aggressive mode.

12:18:44: INFO: vendorid.c:128:check_vendorid(): received Vendor ID:

  KAME/racoon

12:18:44: NOTIFY: oakley.c:2037:oakley_skeyid(): couldn't find

  the proper pskey, try to get one by the peer's address.

12:18:44: INFO: isakmp.c:2417:log_ph1established(): ISAKMP-SA

  established 10.0.0.216[500]-10.0.0.11[500] spi:044d25dede78a4d1:ff01e5b4804f0680

12:18:45: INFO: isakmp.c:938:isakmp_ph2begin_i(): initiate new phase 2

  negotiation: 10.0.0.216[0]<=>10.0.0.11[0]

12:18:45: INFO: pfkey.c:1106:pk_recvupdate(): IPsec-SA established:

  ESP/Transport 10.0.0.11->10.0.0.216 spi=44556347(0x2a7e03b)

12:18:45: INFO: pfkey.c:1318:pk_recvadd(): IPsec-SA established:

  ESP/Transport 10.0.0.216->10.0.0.11 spi=15863890(0xf21052)

Если теперь дать команду setkey –D, чтобы просмотреть список созданных защищенных каналов, мы получим такой вывод:

10.0.0.216 10.0.0.11

        esp mode=transport spi=224162611(0x0d5c7333) reqid=0(0x00000000)

        E: 3des-cbc 5d421c1b d33b2a9f 4e9055e3 857db9fc 211d9c95 ebaead04

        A: hmac-sha1 c5537d66 f3c5d869 bd736ae2 08d22133 27f7aa99

        seq=0x00000000 replay=4 flags=0x00000000 state=mature

        created: Nov 11 12:28:45 2002   current: Nov 11 12:29:16 2002

        diff: 31(s)     hard: 600(s)    soft: 480(s)

        last: Nov 11 12:29:12 2002      hard: 0(s)   soft: 0(s)

        current: 304(bytes)     hard: 0(bytes) soft: 0(bytes)

        allocated: 3    hard: 0 soft: 0

        sadb_seq=1 pid=17112 refcnt=0

10.0.0.11 10.0.0.216

        esp mode=transport spi=165123736(0x09d79698) reqid=0(0x00000000)

        E: 3des-cbc d7af8466 acd4f14c 872c5443 ec45a719 d4b3fde1 8d239d6a

        A: hmac-sha1 41ccc388 4568ac49 19e4e024 628e240c 141ffe2f

        seq=0x00000000 replay=4 flags=0x00000000 state=mature

        created: Nov 11 12:28:45 2002   current: Nov 11 12:29:16 2002