Owncloud. Переводим сервис на https

Рейтинг:  0 / 5

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

И так мы имеет настроенный web server, который работает на 80 порту. По рекомендации самого сервиса и ради большей безопасности своих данных (А мы знаем, что трафик на 443 порту шифруется ), то мы переводим облачный сервис на 443 порт.

 Мы можем пойти двумя путями:

  1. Прописать нашему apache24 порт 443, тогда все сайты зависящие от  него, будут использовать 443 порт. Но сразу же необходимо получить сертификаты. Если Вы используете только локальную сеть, то можете создать свои сертификаты.
  2. Создать новый виртуальный хост и дать только ему 443 порт.

Я лично для себя выбираю второй способ, так как не хочу пока использовать  https (Хотя лучше использовать именного его). Для меня пока важную роль играет, что на https нужны сертификаты, а они не бесплатны, а я "любитель халявы)" это первое, а в второе я не зарабатываю на сайте. Так что пока не планирую переходить на https.

    Возможно и обойтись бесплатными сервисами, которые дают Вам сертификаты на 90 дней может чуть больше, чуть меньше, не важно. По истечению срока, все по новой, опять регистрироваться, а может не получиться, а может забыли, а может этого сервиса нет(закрыли) и.т.д.

    Так же можно воспользоваться своими подписными сертификатами, но на выходе получим вот такое предупрежение

Это сообщение отпугнет многих пользователей, так что это мне не нужно. Да и самому не приятно это лицезреть.

Все. Переходим от теории к практике.

  • Генерируем сертификаты

Создадим папку для хранения

mkdir /usr/local/etc/apache24/ssl
cd /usr/local/etc/apache24/ssl
openssl genrsa -out server.key 2048
openssl req -x509 -new -key server.key -days 365 -out server.crt
  • Настроим наш веб сервер
nano /usr/local/etc/apache24/httpd.conf

Находим следующую строку

#Include etc/apache24/extra/httpd-ssl.conf

Убираем знак # и получаем

Include etc/apache24/extra/httpd-ssl.conf

убираем знак # 

LoadModule ssl_module libexec/apache24/mod_ssl.so
LoadModule socache_shmcb_module libexec/apache24/mod_socache_shmcb.so

Теперь открываем и редактируем сам файл

nano /usr/local/etc/apache24/extra/httpd-ssl.conf
  • SSLSessionCache        "shmcb:/var/run/ssl_scache(512000)"

Прописываем свои сертификаты

SSLCertificateFile "/usr/local/etc/apache24/ssl/server.crt"

SSLCertificateKeyFile "/usr/local/etc/apache24/ssl/server.key"

 Теперь перезапускаем веб сервер

service apache24 restart

Если нет ошибок, то можем пользоваться облачным сервисом по защищенному протоколу. Но так же можем зайти и по http. Чтобы перевести все запросы с 80 на 443 порт произведем редирект apache24.

Виртуальный хост для owncloud

Как создать виртуальный хост и редирект описано здесь. Применяем полученные знания.

Теперь добавим несколько строк в файл httpd-vhosts.conf

<VirtualHost *:80>
ServerAdmin Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
DocumentRoot "/usr/local/etc/owncloud/"
ServerName cloud.example.com
ServerAlias www.cloud.example.com
ErrorLog "/usr/local/etc/owncloud/logs/error-http.log"
CustomLog "/usr/local/etc/owncloud/logs/access-http.log" common
Redirect permanent / https://cloud.example.com
</VirtualHost>

<VirtualHost *:443>
ServerAdmin Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
DocumentRoot "/usr/local/etc/owncloud/"
ServerName cloud.example.com
ServerAlias www.cloud.example.com
ErrorLog "/usr/local/etc/owncloud/logs/error-http-ssl.log"
CustomLog "/usr/local/etc/owncloud/logs/access-http-ssl.log" common
SSLEngine on
SSLCertificateFile "/usr/local/etc/apache24/ssl/server.crt"
SSLCertificateKeyFile "/usr/local/etc/apache24/ssl/server.key"
</VirtualHost>

<Directory /usr/local/etc/owncloud/>
  Options +FollowSymlinks
  AllowOverride All
  Order Deny,ALLow
  Require all granted
</Directory>

Перезапустим apache

service apache24 restart

Даже если мы введем http://cloud.example.com apache переведет на https://cloud.example.com

austria.kh.ua

Добавить комментарий

Защитный код
Обновить