Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #69, АВГУСТ 2006 г.

пламенный почтовик

ВОЛЬФ Д. А. AKA PAYHASH

Спецвыпуск: Хакер, номер #069, стр. 069-040-3


terminal# openssl req -new -key sendmail.key -out sendmail.csr

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

Затем файл sendmail.csr необходимо направить доверительному центру CA, где его удостоверят подписью СА на основе дайджеста корневого сертификата и произведут кое-какие изменения, после чего и получится наш сертификат. Стоит отметить, что данная процедура не бесплатна: стоит она примерно 300 американских президентов (такова платная сторона бесплатного GPL, подробнее читаем Крис Касперски «Платная сторона бесплатного GPL»). Но не стоит отчаиваться: не все в этом мире строится на деньгах и уважении. Почему бы самому не подписать свой сертификат? Правда это будет не совсем то, но работать будет. Таким образом мы подошли к понятию самоподписанных сертификатов. Такие сертификаты подобны корневым сертификатам CA центров ;).

Как же создать такой сертификат? Для этого нужно файл sendmail.crt подписать дайджестом на основе секретного ключа. Это может сделать программа x509:

terminal# openssl x509 -req -days 3666 -in sendmail.csr -signkey sendmail.key -out sendmail.crt

Вот так мы создадим сертификат в виде файла sendmail.crt, который будет действителен 3666 дней. Теперь для нас важны два файла - sendmail.key и sendmail.crt. На них мы и будем базировать криптоподдержку в службах.

Группы, работающие в сетевой безопасности, различают несколько уровней шифрования данных, передаваемых по сети. Они начинаются на сетевом уровне IP и заканчиваются седьмым уровнем приложений. Мы же рассмотрим шифрование на транспортном уровне, называемое SSL/TLS (TLS – это SSL v3.1), так как данный уровень подходит почти ко всем приложениям и является для них прозрачным. Программа sendmail умеет работать на этом уровне, то есть она способна предоставлять клиентам шифрованную передачу электронных почтовых сообщений посредством SMTP-трафика.

Подразумевается, что некоторый опыт установки sendmail у тебя уже есть (в крайнем случае, документацию всегда можно найти в internet), поэтому некоторые моменты, относящиеся к настройке sendmail мы не будем комментировать.

Итак, закачиваем свежую стабильную версию sendmail в уже известный каталог /tmp/sandbox и распаковываем trball.

terminal# cd /tmp/sandbox/

terminal# wget \ ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.13.7.tar.gz

tar -zxvf sendmail.8.13.7.tar.gz

terminal# tar -zxvf sendmail.8.13.7.tar.gz

Заходим в каталог sendmail-8.13.7/devtools/Site/:

terminal# cd sendmail-8.13.7/devtools/Site/

В каталоге создаем файл site.config.m4 на редактирование:

terminal# ee site.config.m4

В файл site.config.m4 вписываем следующие строчки:

dnl Stuff for TLS

APPENDDEF(`confINCDIRS', `-I/usr/local/include')

Назад на стр. 069-040-2  Содержание  Вперед на стр. 069-040-4