На главную страницу  
+7 (499) 124-62-26
Решения Продукты Услуги Скачать Цены Open Source О компании
OpenSSL 0.9.8
OpenSSL 1.0.0
Apache
OpenVPN
stunnel
wget
postfix
PostgreSQL
mutt
openldap
tcltls
dovecot
lynx

Apache

Веб-сервер Apache - HTTP-сервер с открытыми исходными кодами, предназначенный для использования в современных ОС, таких как UNIX, MS Windows, Mac OS/X и Netware. Цель его разработчиков - создать безопасный, эффективный и расширяемый сервер, который предоставляет доступ по протоколу HTTP в соответствии с актуальными стандартами. Apache является наиболее популярным веб-сервером в Интернет, начиная с апреля 1996 года.

Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6.

Поддержка ГОСТ в Apache

Для работы с ГОСТ требуется применение патча (комплекта исправлений исходного кода) и перекомпиляция приложения с библиотекой openssl, подерживающей ГОСТ.

Мы представляем следующие патчи:

Инструкции по использованию предлагаемых патчей:


Примечания

При использовании OpenSSL 0.9.8 с нашим ГОСТ один виртуальный сервер может использовать либо только ГОСТ Р 34.10-94, либо только ГОСТ Р 34.10-2001, но не одновременно.

Параллельно c ключами ГОСТ можно для того же виртуального сервера указать ключи и сертификаты RSA, что обеспечит доступность данного сервера для клиентов, не поддерживающих российскую криптографию. Необходимо также явным образом запретить все ciphersuites, использующие DSA и явно разрешить ciphersuites с ГОСТ.

При использовании OpenSSL 1.0.0 можно одновременно использовать ключи DSA, RSA и ГОСТ.

Сборка Apache 2.2 с openssl 0.9.8 с поддержкой ГОСТ

  • Сборка и установка apache2 (использовалась версия 2.2.16)

    • Скомпилировать openssl 0.9.8 в каталоге cp_src/openssl-0.9.8e по нашей инструкции.

    • Перейти в рабочий каталог:

      cd cp_src
    • Загрузить исходный код apache:

      wget http://www.eu.apache.org/dist/httpd/httpd-2.2.16.tar.gz
    • Распаковать исходный код Apache:

      tar zxvf httpd-2.2.16.tar.gz
    • Загрузить патч для Apache командой:

      wget http://cryptocom.ru/opensource/apache2.2.diff.gz
    • Распаковать патч:

      gunzip apache2.2.diff.gz
      cp apache2.2.diff httpd-2.2.16
      cd httpd-2.2.16
      
    • Применить патч:

      patch -p1 < apache2.2.diff
    • Сконфигурировать Apache, указывая, что сборка должна осуществляться с поддержкой ssl, а библиотека OpenSSL установлена в /opt/openssl:

      ./configure --enable-ssl --with-ssl=/opt/openssl --prefix=/opt/httpd

      Собрать и установить Apache:

      make
      sudo make install
  • Редактирование конфигурационных файлов Apache

    • В файле httpd.conf раскомментировать блок

      # Secure (SSL/TLS) connections
      Include conf/extra/httpd-ssl.conf
    • В файле conf/extra/httpd-ssl.conf добавить:

      • в SSL Global Context

        ##
        ## SSL Global Context
        ##
        ## All SSL configuration in this context applies both to
        ## the main server and all SSL-enabled virtual hosts.
        ##
        SSLCryptoDevice gost
        
      • в секции настройки виртуального хоста указать шифрсьют:

        SSLCipherSuite HIGH:MEDIUM:+GOST2001-GOST89
      • в этой же секции указать сертификат сервера и закрытый ключ:

        SSLCertificateFile "/opt/httpd/conf/apache.gost.ru.crt"
        SSLCertificateKeyFile "/opt/httpd/conf/apache.gost.ru.key"


    Следует учитывать, что на рабочем сервере потребуется добавить еще ряд параметров (например, указать сертификат СА и пр.), однако уже с указанными настройками сервер будет принимать соединения, защищенные российскими криптоалгоритмами.

    После установки следует отредактировать файл /etc/ld.so.conf путем добавления пути /opt/openssl/lib для поиска библиотек libssl.so.0.9.8 и libcrypto.so.0.9.8, с которыми линкуется httpd на этапе сборки.

    Инструкция по подключению алгоритмов ГОСТ к веб-серверу Apache с OpenSSL 1.0.0 (несертифицированное решение)

    Сборка Apache 2.2 с openssl 1.0.0 с поддержкой ГОСТ

    • Скомпилировать openssl 1.0.0 в каталоге /gost-ssl по нашей инструкции.

    • Сборка Apache2 (использовалась версия 2.2.16)

      • Загрузить исходный код apache:

        wget http://www.eu.apache.org/dist/httpd/httpd-2.2.16.tar.gz
      • Распаковать исходный код Apache:

        tar zxvf httpd-2.2.16.tar.gz
      • Загрузить патч для Apache командой:

        wget http://cryptocom.ru/opensource/apache-2.2.6-openssl-1.0.0.diff.gz
      • Распаковать патч:

        gunzip apache-2.2.6-openssl-1.0.0.diff.gz
      • Применить патч:

        mv apache-2.2.6-openssl-1.0.0.diff httpd-2.2.16
        patch -p1 < apache-2.2.6-openssl-1.0.0.diff
      • Сконфигурировать Apache:

        /configure --enable-ssl --with-ssl=/gost-ssl--prefix=/opt/httpd
      • Собрать и установить Apache:
        make
        sudo make install

      После установки следует отредактировать файл /etc/ld.so.conf путем добавления пути /gost-ssl/lib для поиска библиотек libssl.so.1.0.0 и libcrypto.so.1.0.0, с которыми линкуется httpd на этапе сборки.


 
Copyright © ООО "Криптоком". 2001-2011. All Rights Reserved.