Astra Linux на момент написания данного руководства по установке, не содержит промежуточных сертификатов для Let’s encrypt, поэтому необходимо выполнить следующие действия:
apt-getinstall apt-transport-https lsb-release ca-certificates
На первый вопрос выбираем Y/Д, на втором нажимаем Enter.
apt-getinstall-y pkg-config
pecl install mongodb
echo"extension=mongodb.so"|tee /etc/php/7.3/apache2/conf.d/20-mongodb.ini
Клонируйте репозиторий используя ваш логин и пароль.
Установите права доступа на папки и файлы.
Shell
find /var/www/ -type d -execchmod755{}\;find /var/www/ -type f -execchmod644{}\;chown-R www-data:www-data /var/www/
Восстановление и конфигурация Apache2
💡 Система запросит логин и пароль к репозиторию, которые вы можете найти в вашем клиентом портале Пассворка. Если у вас нет доступа к клиентскому порталу — свяжитесь с нами.
Открываем файл настройки репозитория.
Shell
nano /etc/apt/sources.list
Убираем знак комментария у строки представленной ниже.
Shell
deb https://download.astralinux.ru/astra/stable/orel/repository/ orel main contrib non-free
Обновляем пакеты и переустанавливаем Apache.
Shell
apt-get update
apt-getinstall-y apache2
Выключаем ненужные модули и включаем необходимые. Указываем какую версию PHP будет использовать Apache. В процессе перезагрузки сервиса могут появляться ошибки, их можно игнорировать.
Common Name: Укажите IP-адрес вашего сервера или имя хоста. Это поле имеет значение, так как ваш сертификат должен соответствовать домену (или IP-адресу) для вашего веб-сайта.
Заполните все остальные поля по своему усмотрению.
Ниже приведены примеры ответов.
Shell
Interactive
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]:US
State or Province Name (full name)[Some-State]:Example
Locality Name (eg, city)[]:Example
Organization Name (eg, company)[Internet Widgits Pty Ltd]:Example Inc
Organizational Unit Name (eg, section)[]:Example Dept
Common Name (e.g. server FQDN or YOUR name)[]:passwork.local
Email Address []:test@passwork.local
Установите права доступа для защиты закрытого ключа и сертификата.
Shell
chmod600 /etc/apache2/ssl/*
Ваш сертификат и закрытый ключ, который его защищает, готовы для использования с Apache.
10.Настройка продукта для корректной работы в Chrome с SSL
При работе через SSL-соединение (HTTPS) браузер Chrome требует наличия флагов Secure и SameSite у cookie. Без этих флагов браузер не будет принимать куки, и вы не сможете авторизоваться в Пассворке в Chrome.
Для того чтобы установить эти флаги, включите параметр session.cookie_secure в файле /etc/php/7.3/apache2/php.ini:
Shell
session.cookie_secure = On
И установите параметр disableSameSiteCookie (секция [application])в файле /var/www/app/config/config.ini в значение Off.
Shell
disableSameSiteCookie = Off
💡 Не устанавливайте эти параметры или верните их в исходное значение, если вы передумаете использовать SSL и будете работать через HTTP-протокол
11. Настройка Apache для использования SSL-соединения
Откройте конфигурационный файл SSL в текстовом редакторе.
Shell
nano /etc/apache2/sites-enabled/default-ssl.conf
Найдите раздел, начинающийся с <VirtualHost _default_:443> и внесите следующие изменения.
Добавьте строку с директивой имени сервера под строкой ServerAdmin. Это может быть ваше доменное имя или IP-адрес:
Добавьте директиву “Directory” после “ServerName”.
Shell
<Directory /var/www/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
Найдите следующие две строки и обновите пути к файлам, соответствующие местоположению сертификата и ключа, которые мы создали ранее. Если вы приобрели сертификат или создали свой сертификат в другом месте, убедитесь, что путь к файлу соответствует фактическому местоположению вашего сертификата и ключа: