Читаем Сетевые средства Linux полностью

На заметку

При необходимости вы сами можете выступать в роли сертифицирующей организации, однако ваши сертификаты будут пригодны только для внутреннего использования. Внешние пользователи не будут иметь никакой гарантии того, что сертификат не фальсифицирован. Поэтому, если вы собираетесь организовать узел электронной коммерции, вам необходимо получить сертификат от CA. Список CA можно найти по адресу http://www.apache-ssl.org/#Digital_Certificates. Пользователям, обращающимся к Web-узлам посредством броузеров, сертификаты не нужны, так как Web-серверы практически никогда не проверяют идентичность пользователей.

При работе посредством протокола SSL используется порт, отличный от порта 80. По умолчанию для взаимодействия по защищенному протоколу HTTP (HTTPS) применяется порт 443. Чтобы Web-броузер указал в запросе этот порт, URL, введенный пользователем, должен начинаться с символов https://. Настраивая Apache для поддержки SSL, вы можете установить один сервер, который будет по-разному реагировать на обращения через порты с номерами 80 и 443, либо использовать два сервера различных типов. Первый подход реализовать проще, но может возникнуть ситуация, при которой целесообразнее использовать два сервера (например, Apache для обработки SSL-запросов и thttpd для поддержки обычного HTTP-взаимодействия).

<p>Настройка средств поддержки SSL</p>

Для того чтобы сервер Apache мог поддерживать SSL-соединения, надо сконфигурировать SSL-пакет. В настоящее время в системе Linux чаще всего используются два таких пакета.

• SSLeay (http://www2.psy.uq.edu.au/~ftp/Crypto/ssleay/)

• OpenSSL (http://www.openssl.org)

Вскоре после своего появления OpenSSL приобрел статус стандарта в системе Linux. Он содержится в составе многих дистрибутивных пакетов Linux, включая Debian, Mandrake, Red Hat и SuSE. Пакеты SSLeay и OpenSSL выполняют одинаковые функции, но исполняемые файлы носят разные имена (ssleay и openssl) и для их настройки используются различные конфигурационные файлы.

После инсталляции OpenSSL вам необходимо получить сертификат. Для работы в Internet потребуется сертификат, выданный CA, но для тестирования сервера можно создать сертификат самостоятельно. Некоторые сценарии установки Apache SSL создают сертификат автоматически. Если в процедуре инсталляции не предусмотрено формирование сертификата, вы можете использовать следующую команду:

# openssl req $@ -new -x509 -nodes \

 -config /usr/share/doc/apache-ssl/examples/ssleay.cnf \

 -out /etc/apache-ssl/apache.pem \

 -keyout /etc/apache-ssl/apache.pem

На заметку

В данном примере предполагается, что настройка средств поддержки SSL осуществляется посредством конфигурационного файла /etc/apache-ssl, а в составе пакета поставляется образец конфигурационного файла /usr/share/doc/apache-ssl/example/ssleay.cnf. При необходимости вы можете изменить имена файлов или каталогов. Обратная косая черта указывает на то, что продолжение команды находится на следующей строке. Если вся команда помещается в одной строке, символ \ можно не использовать.

В процессе выполнения утилита openssl запросит дополнительную информацию, например имя компьютера. Эта информация включается в состав сертификата, который содержится в файле /etc/apache-ssl/apache.pem.

Перейти на страницу:

Похожие книги