Статистика

Участников проекта 105
Опубликовано статей 78
Отчет по карме. Топ 20

Новости блога

1 29.11.2013  Сегодня самым активным участникам newblog'а был выплачен доход с sape.
7 02.11.2012  Ура! Свешилось, нашему сайту дали тИЦ 10. Спасибо всем кто принимает участие в развитии нашего блога.
8 21.08.2012  Интеграция с sape.ru. Теперь каждый автор статей на newblog автоматически зарабатывает на рекламе.
Все новости

Топ 5 категорий

Программирование 46
Операционные системы 9
Базы данных 4
Туризм 2
Заметки 2

Последние 5 заметок (90)

gullyar - Закладки gullyar
gullyar - Ваша первая закладка
osadchaya - Закладки osadchaya
Ira0231188 - Закладки Ira0231188
Ira0231188 - Закладки Ira0231188

Ссылки

www.freedev.asia

Настройка SSL в Apache2 под Debian

15.11.2012 08:58 | Просмотров: 8083 | Доход: 666.44 руб. | Комментариев: 3
[Администрирование ] 
Рейтинг: 4.67/3

Netscape Communications подарила миру отличный протокол для обеспечения безопасного соединения между клиентом и сервером под названием SSL(Secure Sockets Layer). Этот протокол уже стал стандартом де-факто. В этой статье будет подробно описано как настроить SSL в Apache под Debian, но настройка подойдет и схожим deb дистрибутивам, например Ubuntu. Для настройки SSL потребуются следующие пакеты:

ssl-cert - простой debconf-настройщик OpenSSL
apache2-utils - утилиты для веб-серверов
openssl - Уровень защищенных сокетов (SSL) криптографические инструменты

Инсталлируем

apt-get install openssl apache2-utils ssl-cert

Создаем директорию secure в /etc/apache2/ssl и генерируем сертификаты(потребуется .pem и .key, подробнее можно посмотреть в статье про сертификаты)

mkdir /etc/apache2/ssl
openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/server.pem -keyout /etc/apache2/ssl/server.key

Генерация ключей осуществляется с помощью следующего диалога

Generating a 2048 bit RSA private key
writing new private key to '/etc/apache2/ssl/server.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:Russia
Locality Name (eg, city) []:Moscow
Organization Name (eg, company) [Internet Widgits Pty Ltd]:GM company
Organizational Unit Name (eg, section) []:web
Common Name (e.g. server FQDN or YOUR name) []:newblog.kz
Email Address []:mail@newblog.kz

Не забываем выставить безопасные права

chmod 600 /etc/apache2/ssl/*

Включаем модуль ssl в Apache

sudo a2enmod ssl

Проверяем

apachectl -M|grep ssl
ssl_module (shared)
Далее нам поднадобятся две утилиты a2ensite и a2dessite. В каталоге /etc/apache2/site-available хранятся файлы с настройками виртуальных хостов. Для того чтобы включить настройку выполняем a2ensite [файл], для отключения a2dessite [файл]. Грубо говоря при включении создается симлинк файла в директорию /etc/apache2/sites-enabled/ а при выключении симлинк удаляется. Таким образом чтобы отключить http и включить https делаем следующее:
a2dessite default
a2ensite default-ssl

Добавляем в конфиг defaul-ssl пути к сертификатам

SSLCertificateFile      /etc/apache2/ssl/server.pem
SSLCertificateKeyFile /etc/apache2/ssl/server.key

Чтобы применились настройки, перезагружаем apache

/etc/init.d/apache restart
Для проверки заходим https://localhost/
Если видем что хост требует принять самоподписанный сертификат, значит все получилось.
 

© GM
| Комментировать статью |
  • saratan +16 (15.11.2012 18:18)
    А вот вопрос, на сколько больше ресурсов уходит при использование SSL?
    | Ответить |
    • GM +2587 (16.11.2012 10:14)
      Интересный вопрос.. наверное очень точно замерить будет сложно. Набросал небольшой скрипт
      По моим расчетам получилось что https прожорливее http аж в 6 раз.
      
      | Ответить |
  • Аноним 0 (26.03.2014 16:11)
    Почему-то у меня в РедХате генерируется сертификат с коротким ключем шифрования. Пришлось добавить опцию -newkey rsa:2048.
    
    openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/server.pem -newkey rsa:2048 -keyout /etc/apache2/ssl/server.key
    
    Кстати, подсмотрел в интернетах полезную штуку:
    
    service httpd configtest
    service httpd reload
    | Ответить |