Чтение онлайн

ЖАНРЫ

Linux Advanced Routing & Traffic Control HOWTO

Larroy Pedro

Шрифт:

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

Процедура создания ключей относительно проста, хотя и требует выполнения некоторых дополнительных действий. Ниже рассматривается пример использования, для этих целей, утилиты openssl.

7.2.3.1. Создание собственного сертификата x.509.

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

подлинности. Прямо сейчас, мы с вами пройдем всю процедуру создания сертификатов и настройки защищенного соединения.

Для начала создадим сертификат для нашего хоста, с именем laptop. Начнем с генерации "запроса на сертификат":

$ openssl req –new –nodes –newkey rsa:1024 –sha1 –keyform PEM –keyout \

 laptop.private –outform PEM –out request.pem

Здесь будет предложено ответить на ряд вопросов:

Country Name (2 letter code) [AU]:NL

State or Province Name (full name) [Some-State]:.

Locality Name (eg, city) []:Delft

Organization Name (eg, company) [Internet Widgits Pty Ltd]:Linux Advanced Routing & Traffic Control

Organizational Unit Name (eg, section) []:laptop

Common Name (eg, YOUR name) []:bert hubert

Email Address []:ahu@ds9a.nl

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

Заполните поля запроса по своему усмотрению.

Теперь создадим собственно сертификат, подписанный самим собой:

$ openssl x509 –req –in request.pem –signkey laptop.private –out \

 laptop.public

Signature ok

subject=/C=NL/L=Delft/O=Linux Advanced Routing & Traffic \

 Control/OU=laptop/CN=bert hubert/Email=ahu@ds9a.nl

Getting Private key

После этого файл request.pem можно удалить.

Повторите эту процедуру для всех ваших компьютеров. Вы можете свободно передавать сгенерированные открытые ключи (файлы .public), но сохраняйте файлы .private в секрете!

7.2.3.2. Настройка и запуск.

Теперь, после того как мы создали открытый и секретный ключи, мы можем передать их racoon.

Вернемся к нашей предыдущей конфигурации хостов 10.0.0.11 ('upstairs') и 10.0.0.216 ('laptop').

В файл racoon.conf , на 10.0.0.11, добавим: path certificate "/usr/local/etc/racoon/certs";

remote 10.0.0.216

{

 exchange_mode aggressive,main;

 my_identifier asn1dn;

 peers_identifier asn1dn;

certificate_type x509 "upstairs.public" "upstairs.private";

peers_certfile "laptop.public";

 proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

authentication_method rsasig;

dh_group 2 ;

 }

}

Тем

самым сообщив racoon, что сертификаты находятся в каталоге /usr/local/etc/racoon/certs/. Кроме того, добавим раздел, описывающий удаленный компьютер 10.0.0.216.

Строки asn1dn говорят о том, что локальный и удаленный идентификаторы следует извлекать из открытых ключей. Это — 'subject=/C=NL/L=Delft/O=Linux Advanced Routing & Traffic Control/OU=laptop/CN=bert hubert/Email=ahu@ds9a.nl' из листинга, приведенного выше.

Строка certificate_type указывает имена файлов с локальными открытым и секретным ключами. peers_certfile указывает, что открытый ключ удаленного узла следует взять из файла laptop.public.

Блок proposal остается, по сравнению с предыдущей конфигурацией, практически без изменений, за исключением authentication_method для которого теперь указано rsasig, что означает — использовать для аутентификации RSA открытый/секретный ключи.

Аналогичные изменения вносятся и в конфигурацию хоста 10.0.0.216:

path certificate "/usr/local/etc/racoon/certs";

remote 10.0.0.11

{

 exchange_mode aggressive,main;

 my_identifier asn1dn;

 peers_identifier asn1dn;

 certificate_type x509 "laptop.public" "laptop.private";

 peers_certfile "upstairs.public";

 proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

authentication_method rsasig;

dh_group 2 ;

 }

}

После внесения изменений в конфигурацию, нам необходимо разместить файлы ключей. На машине 'upstairs', в каталоге /usr/local/etc/racoon/certs, следует разместить файлы upstairs.private, upstairs.public и laptop.public.

Note

ВНИМАНИЕ! Владельцем этого каталога должен быть суперпользователь (root) и ему должны быть назначены права доступа 0700, иначе racoon откажется работать с ним!

Поделиться с друзьями: