Оглавление Оглавление 1
Вид материала | Документы |
- Кожич Павел Павлович Минск 2010 г Оглавление Оглавление 2 Применение информационных, 302.47kb.
- Оглавление оглавление, 63.5kb.
- Оглавление Оглавление, 259.29kb.
- Ланин Борис Евсеевич Оглавление Оглавление 1 лекция, 810.53kb.
- Оглавление: Оглавление:, 350.3kb.
- Октябрьской Революции Краснознаменной академии (ввиа) имени профессора Н. Е. Жуковского, 1685.68kb.
- Караваева Елена Леонидовна г. Светлый 2008 г. Оглавление оглавление 2 пояснительная, 130.81kb.
- Винарский Владимир Афанасьевич ассистент Шешко Сергей Михайлович Минск 2008 г. Оглавление, 156.88kb.
- Коледа Виктор Антонович, ст преподаватель Пол Кожич Минск 2010 г. Оглавление Оглавление, 340.48kb.
- Обуховский Виктор Степанович, ассистент Позняков Андрей Михайлович Минск 2006 г оглавление, 266.12kb.
УпражненияУпражнение 1 :
Решение 1 :
httpd.conf
Для использования виртуальных серверов вам потребуется загрузить модуль mod_vhost. Виртуальные сервера на базе имениВиртуальный сервер может быть определён по полю URL HTTP запроса. Отредактируйте файл /etc/httpd/conf/vhosts/Vhosts.conf : NameVirtualHost 192.168.0.42 ServerName test.domain.org DocumentRoot /var/www/html ServerName vhost1.domain.org DocumentRoot /var/www/html/vhost1 ServerName vhost2.domain.org DocumentRoot /var/www/html/vhost2 Перезапустите Apache: [root@test root]# /etc/init.d/httpd restart Shutting down httpd2: [ OK ] Starting httpd2: [ OK ] [root@test root]# Создайте виртуальные сервера [root@test root]# cd /var/www/html [root@test html]# mkdir vhost1 [root@test html]# mkdir vhost2 [root@test html]# echo "vhost1" > vhost1/index.html [root@test html]# echo "vhost2" > vhost2/index.html [root@test html]# Вы должны увидеть разные сайты, когда обратитесь по адресам ссылка скрыта и ссылка скрыта Виртуальные сервера на базе IP-адресовОтредактируйте файл /etc/httpd/conf/vhosts/Vhosts.conf : DocumentRoot /var/www/html/vhost1 Servername test.domain.org DocumentRoot /var/www/html/vhost2 Servername test.domain.org Перезапустите Apache: [root@test root]# /etc/init.d/httpd restart Shutting down httpd2: [ OK ] Starting httpd2: [ OK ] [root@test root]# Добавьте новый виртуальный IP-адрес: [root@test root]# ifconfig eth0:0 192.168.0.43 [root@test root]# Вы должны увидеть разные сайты, обратившись по адресам ссылка скрыта or ссылка скрыта
Mod_ssl – это модуль apache, используемый для создания сайтов, доступных по протоколу https. Перед тем, как настраивать в apache поддержку HTTPS, необходимо создать сертификаты. HTTPS использует SSL (Secure Socket Layer) и требует наличия OpenSSL для генерации пары «публичный-частный ключ». HTTPS-сервер должен иметь сертификат, который будет отправляться браузеру клиента. Как правило, сертификаты продаются компаниями, выполняющими роль центров сертификации. Подготовка сертификатов и ключей с помощью сценарияУстановите пакет apache2-modssl. Проверьте, что openssl уже инсталлирован. Запустите сценарий /usr/lib/ssl/apache2-mod_ssl/gentestcrt.sh и следуйте инструкциям: root@test root]# /usr/lib/ssl/apache2-mod_ssl/gentestcrt.sh maketestcrt -- Create self-signed test certificate (Создание самоподписанного тестового сертификата) (C) 2001 Jean-Michel Dault Based on cca.sh script by Ralf S. Engelschall Will create server.key and server.crt in /root (Будем создавать server.key и server.crt в каталоге /root ) INITIALIZATION Generating custom Certificate Authority (CA) (Создание собственного центра сертификации) ______________________________________________________________________ STEP 1: Generating RSA private key for CA (1024 bit) (ШАГ 1: Создание частного ключа RSA для центра сертификации (1024 бита)) ... [пропущено] ... 2OtXXrvWs+n9oVvJStzueZXZTtDP+/kri2GZVZoFx4EVraXENqoePSf0XQJBAJFF +/EySjBCWjzmdqlGZlrxSx2hl+afS6fJh+Ku/LC/GbfTNkAWu8q/zgCAqlNZdBGp mw2cvRpEARRX1UqObgUCQEg9W5eoA29TwwC+9tEWKg+XcTu75h2w3CR6pdB4AQl0 YHOylsceiygo9Qu6zB6jAFMaSdOfdDjdtRh9auSxNfc= -----END RSA PRIVATE KEY----- Certificate creation done! (Создание сертификата завершено!) [root@test root]# Подготовка сертификатов и ключей вручнуюВ этом примере мы создадим свой собственный центр сертификации (Certificate Authority). Для начала мы создадим частный ключ для CA (Certificate Authority): [root@test root]# cd /etc/httpd/ [root@test httpd]# mkdir ssl && chmod 700 ssl [root@test httpd]# cd ssl [root@test ssl]# openssl genrsa -des3 -out my-ca Generating RSA private key, 512 bit long modulus ........++++++++++++ ...++++++++++++ e is 65537 (0x10001) Enter pass phrase for my-ca: (Введите секретную фразу для my-ca ) Verifying - Enter pass phrase for my-ca: (Повторите секретную фразу для my-ca ) Эта секретная фраза (passphrase) является паролем к нашему центру сертификации (Certificate Authority - CA). [root@test ssl]# openssl req -new -x509 -days 3650 -key my-ca.key -out my-ca.crt Enter pass phrase for my-ca.key: (Введите секретную фразу для my-ca.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. ( Сейчас вам будут заданы вопросы по поводу информации, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется Отличительным Именем (Distinguished Name) или DN. У него довольно много полей, но вы можете оставить некоторые из них пустыми. Некоторые поля имеют значения по умолчанию, чтобы ввести туда пустое значение нужно набрать '.'. ) ----- Country Name (2 letter code) [AU]:CH State or Province Name (full name) [Some-State]: Locality Name (eg, city) []:Geneva Organization Name (eg, company) [Internet Widgits Pty Ltd]:LynuxTraining Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []:user Email Address []:user@lynuxtraining.com [root@test ssl]# [root@test ssl]# openssl genrsa -des3 -out my-apache.key 1024 Generating RSA private key, 1024 bit long modulus ......................................................................++++++ ....++++++ e is 65537 (0x10001) Enter pass phrase for my-apache.key: (Введите секретную фразу для my-apache.key ) Verifying - Enter pass phrase for my-apache.key: (Повторите секретную фразу для my-apache.key ) [root@test ssl]# Теперь мы удалим секретную фразу из сертификата сервера Apache, чтобы нам не приходилось вводить её каждый раз при старте: [root@test ssl]# openssl rsa -in my-apache.key -out my-apache.key Enter pass phrase for my-apache.key: (Введите секретную фразу для my-apache ) writing RSA key [root@test ssl]# Теперь мы можем создать запрос на подпись сертификата (Certificate Signature Request), чтобы подписать его в нашем CA: [root@test ssl]# openssl req -new -key my-apache.key -out my-apache.csr 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. ( Сейчас вам будут заданы вопросы по поводу информации, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется Отличительным Именем (Distinguished Name) или DN. У него довольно много полей, но вы можете оставить некоторые из них пустыми. Некоторые поля имеют значения по умолчанию, чтобы ввести туда пустое значение нужно набрать '.'. ) ----- Country Name (2 letter code) [AU]:CH State or Province Name (full name) [Some-State]:Geneva Locality Name (eg, city) []: [root@test ssl]# openssl req -new -key my-apache.key -out my-apache.csr 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. ( Сейчас вам будут заданы вопросы по поводу информации, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется Отличительным Именем (Distinguished Name) или DN. У него довольно много полей, но вы можете оставить некоторые из них пустыми. Некоторые поля имеют значения по умолчанию, чтобы ввести туда пустое значение нужно набрать '.'. ) ----- Country Name (2 letter code) [AU]:CH State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: [root@test ssl]# openssl req -new -key my-apache.key -out my-apache.csr 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. ( Сейчас вам будут заданы вопросы по поводу информации, которая будет включена в ваш запрос на сертификат. То, что вы собираетесь ввести, называется Отличительным Именем (Distinguished Name) или DN. У него довольно много полей, но вы можете оставить некоторые из них пустыми. Некоторые поля имеют значения по умолчанию, чтобы ввести туда пустое значение нужно набрать '.'. ) ----- Country Name (2 letter code) [AU]:CH State or Province Name (full name) [Some-State]: Locality Name (eg, city) []:Geneva Organization Name (eg, company) [Internet Widgits Pty Ltd]:LynuxTraining Organizational Unit Name (eg, section) []: Проверьте, что вы поместили полное доменное имя (FQDN) в поле “Common Name” ! Common Name (eg, YOUR name) []:test.domain.org Email Address []:user@test.domain.org Please enter the following 'extra' attributes to be sent with your certificate request (Пожалуйста, укажите следующие дополнительные атрибуты, которые будут отправлены вместе с запросом на подпись сертификата) A challenge password []: An optional company name []: [root@test ssl]# И, наконец, мы подпишем сертификат Apache в нашем центре сертификации: [root@test ssl]# openssl x509 -req -in my-apache.csr -out my-apache.crt -sha1 -CA my-ca.crt -CAkey my-ca.key -CAcreateserial -days 36 Signature ok subject=/C=CH/ST= /L=Geneva/O=LynuxTraining/CN=test.domain.org/emailAddress=user@test.domain.org Getting CA Private Key (Получение частного ключа CA) Enter pass phrase for my-ca.key: (Введите секретную фразу для my-ca.key ) [root@test ssl]# ls my-apache.crt my-apache.csr my-apache.key my-ca.crt my-ca.key my-ca.srl [root@test ssl]# Изменяем права доступа: [root@test ssl]# chmod 0400 *.key [root@test ssl]# Настройка ApacheОтредактируйте /etc/httpd/conf.d/41_mod_ssl.default-vhost.conf и укажите корректные пути к файлам сертификата ... [пропущено] ... SSLCertificateFile /etc/httpd/ssl/my-apache.crt ... [пропущено] ... SSLCertificateKeyFile /etc/httpd/ssl/my-apache.key ... [пропущено] ... SSLCACertificateFile /etc/httpd/ssl/my-ca.crt ... [пропущено] ... Перезапустите Apache: [root@test root]# /etc/init.d/httpd restart Shutting down httpd2: [ OK ] Starting httpd2: [ OK ] [root@test root]# Проверьте, как работает полученная конфигурация, обратившись по адресу https://test.domain.org или по адресу, указанному вами при конфигурации виртуального сервера. |