Linux-сервер своими руками
Шрифт:
Обратите внимание на то, что в рассмотренном примере адреса www.dhsilabs.com и lib.dhsilabs.com должны быть прописаны в DNS.
12.4.2. Виртуальные серверы с идентификацией по IP-адресу
В директиве VirtualHost в качестве адресов можно использовать доменные имена, но лучше указывать IP-адрес, причем действительный, а не виртуальный. В этом случае вы не будете зависеть от DNS при разрешении имени. Также потребуется один IP-адрес для вашего основного сервера. Если же распределить все адреса между
В приведенном примере (см. листинг 12.10) сконфигурированы два виртуальных сервера с идентификацией по IP-адресу. Один из них использует сам IP-адрес, а другой — доменное имя, соответствующее IP-адресу.
При конфигурировании виртуальных серверов можно использовать опцию ExecCGI, которая разрешает выполнение CGI-скриптов на виртуальном сервере. Ниже приведен пример для почтового Web-интерфейса (листинг 12.11).
12.5. SSL и Apache
12.5.1. Установка SSL
SSL (Secure Sockets Layer) является методом шифрования, разработанным компанией Netscape для обеспечения безопасности в Интернет. Этот метод поддерживает несколько способов шифрования и обеспечивает аутентификацию как на уровне клиента, так и на уровне сервера. SSL работает на транспортном уровне и поэтому обеспечивает надежное шифрование всех типов данных. Более подробно о реализации SSL можно прочитать на сайте компании Netscape — http://home.netscape.com/info/security-doc.html
Протокол S-HTTP является еще одним «безопасным» Интернет-протоколом. Он был разработан для предоставления конфиденциальности данных, передаваемых через соединение. Конфиденциальность нужна, например, при передаче номеров кредитных карточек и прочей важной информации.
Модуль mod_ssl реализует в сервере Apache слой SSL, который осуществляет шифрование всего потока данных между клиентом и сервером. Для всех остальных частей Web-сервера модуль mod_ssl является прозрачным. Для работы в этом режиме требуется браузер, поддерживающий механизм SSL (этому условию удовлетворяют все современные распространенные браузеры).
Что касается установки, то вам необходимо установить пакет OpenSSL , хотя возможно у вас в системе уже установлен этот пакет. Для проверки этого введите openssl, и если вы увидите в ответ приглашение OpenSSL>, значит — OpenSSL уже установлен. В противном случае для установки OpenSSL выполните следующие шаги (перед этим выполните команду su для того, чтобы приобрести привилегии суперпользователя):
1. Распакуйте последнюю версию OpenSSL командой:
2. Перейдите в каталог openssl-x.y.z и выполните команду:
3. Если все нормально (нет ошибок), введите команду:
Примечание. При возникновении ошибок, скорее всего вам придется установить недостающие пакеты.
4. Затем нужно ввести команды make install и ldconfig. Перед выполнением команды ldconfig убедитесь, что в файле /etc/ld.so.conf прописан путь к библиотекам OpenSSL (по умолчанию это /usr/local/ssl/lib).
12.5.2. Подключение SSL к Apache
Теперь осталось подключить mod_ssl к Apache. При этом следует учитывать, что вам нужна версия mod_ssl, которая совместима с вашей версией Apache. Иначе модуль mod_ssl будет некорректно работать или вообще откажется что-либо делать. Последние цифры в названии модуля указывают на совместимость с определенной версией Apache. Например, для Apache 1.3.14 нужен файл mod_ssl-2.7.1-1.3.14.tar.gz. Здесь 2.7.1 — версия mod_ssl. Распакуйте модуль командой: