Настройка для Apache+SSL для openSuSe 11.4. Чисто для себя сохранил то что нужно.
Настройка для SSL для openSuSe 11.4. Чисто для себя сохранил то что нужно.
Предварительные настройки
Корректируем конфиг OpenSSL создаем любую свою директорию и в нее копируем шаблон openssl.cnf.tmpl из /var/lib/CAM и правим:
dir = . certs = $dir/ssl.crt crl_dir = $dir/ssl.crl database = $dir/index.dat new_certs_dir = $dir/ssl.crt certificate = $dir/ssl.crt/<файл корневого сертификата> serial = $dir/serial crl = $dir/ssl.clr/<файл отозванных сертификатов> private_key = $dir/ssl.key/<файл приватного ключа - ключа корневого сертификата> RANDFILE = $dir/ssl.key/.rand
Примечание.
Для удобства при заполнении полей при создании сертификатов можно поменять значения по умолчанию для таких полей сертификатов, как страна, штат, отдел, адрес электронной почты и общее название.
ВНИМАНИЕ! При создании сертификата сервера, значение поля Common Name должно соответствовать доменному имени (FQDN) сервера, на котором будет работать сертификат. Создаем в этой папке /cert, /ssl.crt и файлы index.dat, index.dat.attr, serial.
Создаём файл серийного номера:
# echo '01' > serial
Создаём файл базы данных сертификатов:
# touch index.dat
Создаём корневой сертификат:
Создаём ключ корневого сертификата:
# openssl genrsa -des3 -out <файл ключа корневого сертификата> 1024
Создаём самоподписанный корневой сертификат
# openssl req -new -x509 -days 3653 -key <файл ключа корневого сертификата> -out <файл сертификата>
Создаём запрос на подписание сертификата сервера:
Создаём ключ сертификата сервера:
# openssl genrsa -des3 -out <файл ключа сертификата сервера> 1024
Создаём запрос на подписание сертификата сервера:
# openssl req -new -days 1096 -key <файл ключа сертификата сервера -out <файл запрос на подписание сертификата сервера>
Подписываем запрос на подписание сертификата сервера (создание сертификата сервера):
# openssl ca -config /etc/ssl/openssl.cnf -days 365 -out <файл сертификата сервера> -infiles <файл запроса на подписание сертификата сервера> В моем случае:
openssl ca -config /root/crt/openssl.cnf -days 365 -out gscert.pem -infiles gscert_s.pem
Просмотр содержимого файлов сертификатов/ключей:
Просмотр содержимого файла ключа:
# openssl rsa -noout -text -in <файл ключа>
Просмотр содержимого файла сертификата:
openssl x509 -noout -text -in <файл сертификата>
Просмотр содержимого файла запроса на подписние сертификата сервера:
openssl req -noout -text -in <файл запроса на подписание сертификата сервера>
Смена/удаление пароля из файла ключа
Смена пароля в файле ключа:
# openssl rsa -des3 -in <файл ключа> -out <временный файл ключа> # mv <временный файл ключа> <файл ключа>
Удаление пароля из файла ключа:
# cp <файл ключа> <сохраняемый файл ключа> # openssl rsa -in <сохраняемый файл ключа> -out <файл ключа>
Экспорт корневого сертификата:
openssl pkcs12 -export -out <новое имя>pfx -in <root>.pem -inkey <root>.key
Как посмотреть список доступных шифров?
Использовать команду ciphers:
# все доступные шифры openssl ciphers -v # только шифры TLSv1 openssl ciphers -v -tls1 # только шифры длиною больше 128 битов (high ciphers) openssl ciphers -v 'HIGH' # только шифры длиною больше 128 битов, использующие AES openssl ciphers -v 'AES+HIGH'
Как измерить производительность сетевого соединения?
openssl s_time -connect remote.host:443
Помимо этого простейшего измерения у подкоманды s_time есть множество других возможностей:
# получить удалённую страницу test.html, используя только новые сеансы openssl s_time -connect remote.host:443 -www /test.html -new # аналогично, но только используя SSLv3 и сильное шифрование # (подробности относительно шифрования в ciphers(1)) openssl s_time \ -connect remote.host:443 -www /test.html -new \ -ssl3 -cipher HIGH # сравнить относительную производительность разных шифров # 10-секундные тесты IFS=":" for c in $(openssl ciphers -ssl3 RSA); do echo $c openssl s_time -connect remote.host:443 \ -www / -new -time 10 -cipher $c 2>&1 | \ grep bytes echo done
Сэмулировать web-сервер с помощью openssl s_server:
# запустить сервер (на порту 4433) openssl s_server -cert mycert.pem -www # на втором хосте (или даже этом же) запустить s_time openssl s_time -connect myhost:4433 -www / -new -ssl3
Все "левые" протоколы и шифрования убрать:
SSLCipherSuite CAMELLIA128-SHA:!EXP:!NULL:+MEDIUM:-LOWSSLProtocol +SSLv3 -SSLv2 -TLSv1
Пример директив:
ServerName <имя сайта>SSLEngine onSSLCertificateFile /etc/apache2/crt/gscert.pemSSLCertificateKeyFile /etc/apache2/crt/gscert.keySSLCACertificateFile /etc/apache2/crt/gsroot.pem#SSLCipherSuite RSA:!EXP:!NULL:+HIGH:+MEDIUM:-LOWSSLCipherSuite CAMELLIA128-SHA:!EXP:!NULL:+MEDIUM:-LOWSSLProtocol +SSLv3 -TLSv1 -SSLv2
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Похожие материалы по этой теме на сайте
Содержимое | |
---|---|
Kaspersky Virus Removal Tool 9 |
Плагин Kaspersky Virus Removal Tool с возможностью обновления баз при сборке через интернет. |
Symantec Ghost 11.0 WIM |
WIM-плагин для Symantec Ghost 11.0 - содержит файлы программы. |
MPCFFDSHOW |
Плагин для Media Player Classic 6.4.9.0 и FFdshow Video Codec - без файлов программы. Содержит скрипт автосоздания. |
Windows Preinstallation Environment (WinPE) — это облегчённая версия ОС Windows, которая позволяет загружаться с внешнего носителя. |
Краткий обзорWinPE был первоначально предназначен, чтобы использоваться только как прединсталяционная платформа для запуска Microsoft Windows, заменяя DOS. Но позже он стал... |
Ieshua's Live DVD/USB 2.13 |
- В качестве оболочки(shell) используется стандартный Explorer(XPE) и BsExplorer для ERD Commander |
MIN(Y)PE by yurkesha (WIM) |
Архиватор: 7-ZIP. |
CDBF for Windows WIM |
Отличный и быстрый редактор файлов dBase |
Meetsoft Final Recovery 2.2.6.275 |
WIM-плагин для Meetsoft Final Recovery 2.2.6.275 - содержит файлы программы. |
Сейчас на сайте
Пользователей онлайн: 0.
Популярное сегодня
Пользователи
- cac101
- drn01025
- opros
- Roketabombatetarda
- fartoviy
- GDV
- ilmai
- Skaptes
- ЙоГороД
- RhodaTaiff
Комментарии