образовательная корпорация
Создать
Править
Отменить
Вверх

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
склад:обживание:linux:первичная_настройка_сервера_centos7 [2017/01/05 01:55]
will
склад:обживание:linux:первичная_настройка_сервера_centos7 [2022/11/07 15:52] (текущий)
will
Строка 1088: Строка 1088:
 PHP-FPM является процессом (со скриптом init /​etc/​init.d/​php-fpm),​ который запускает FastCGI сервер на порте 9000. PHP-FPM является процессом (со скриптом init /​etc/​init.d/​php-fpm),​ который запускает FastCGI сервер на порте 9000.
  
 +
 +===== Сессии PHP =====
 +
 +После обновления бывает слетают права на сессии. Лечиться так
 +<​file>​
 +chown nginx:nginx /​var/​lib/​php/​wsdlcache
 +chown nginx:nginx /​var/​lib/​php/​session
 +
 +</​file>​
  
  
Строка 1512: Строка 1521:
  
 Список использованой литературы:​ Список использованой литературы:​
 +
 +
 +===== Включаем отправку почты с php =====
 +
 +
 +sendmail: fatal: chdir /​var/​spool/​postfix:​ Permission denied
 +
 +showing up in /​var/​log/​httpd/​error_log. ​ This was caused by the apache user not having SELinux permission to send email. This could also occur on other distributions which use SELinux (particularly Fedora and CentOS, but possibly others as well), if it is set to "​Enforcing"​.
 +
 +You can check this by using
 +Code: [Select]
 +
 +/​usr/​sbin/​getsebool httpd_can_sendmail
 +
 +which will report
 +Code: [Select]
 +
 +httpd_can_sendmail --> {on|off}
 +
 +and if it is off, you can turn it on using
 +Code: [Select]
 +
 +sudo setsebool -P httpd_can_sendmail 1
 +
 +===== Настройка ssl от  Let’s Encrypt =====
 +
 +Шел по статье
 +https://​habrahabr.ru/​post/​301558/​
 +
 +и оф дока
 +https://​certbot.eff.org/#​centosrhel6-nginx
 +
 +В CentOS7 - можно из пакетов,​ но в шестой пришлось качать
 +<​file>​
 +    sudo yum install epel-release
 +    sudo yum install certbot
 +</​file>​
 +
 +Установка
 +
 +Проще так
 +
 +<​file>​
 +wget https://​dl.eff.org/​certbot-auto
 +chmod a+x certbot-auto
 +</​file>​
 +**
 +Получение сертификата**
 +
 +Далее следует команда непосредственно получения сертификата:​
 +
 +# ./​certbot-auto certonly --webroot --agree-tos --email mypost@my-domain.ru -w /​home/​bitrix/​www/​ -d my-domain.ru -d www.my-domain.ru
 +
 +
 +--webroot — так как автоматическая установка для nginx пока не надежна,​ используем этот ключ;
 +--agree-tos — соглашаемся с лицензионным соглашением;​
 +--email mypost@my-domain.ru — указываем свой e-mail. В дальнейшем он может пригодиться для восстановления своего аккаунта;​
 +-w /​home/​bitrix/​www — указываем корневую директорию сайта;
 +-d my-domain.ru — наш домен. так же можно указывать и поддомены,​ например -d site.my-domain.ru.
 +
 +После этого скрипт начнет работу и предложит установить недостающие пакеты. Соглашаемся и ждём.
 +
 +Если всё завершится успешно,​ вы увидите сообщение:​
 +
 +<​file>​
 +IMPORTANT NOTES:
 +- Congratulations! Your certificate and chain have been saved at
 +/​etc/​letsencrypt/​live/​my-domain.ru/​fullchain.pem. Your
 +cert will expire on 2016-08-21. To obtain a new version of the
 +certificate in the future, simply run Certbot again.
 +- If you lose your account credentials,​ you can recover through
 +e-mails sent to mypost@my-domain.ru.
 +- Your account credentials have been saved in your Certbot
 +configuration directory at /​etc/​letsencrypt. You should make a
 +secure backup of this folder now. This configuration directory will
 +also contain certificates and private keys obtained by Certbot so
 +making regular backups of this folder is ideal.
 +- If you like Certbot, please consider supporting our work by:
 +
 +Donating to ISRG / Let's Encrypt: https://​letsencrypt.org/​donate
 +Donating to EFF: https://​eff.org/​donate-le
 +</​file>​
 +
 +Сертификаты установлены,​ осталось только указать nginx'​у,​ где они лежат.
 +
 +**Настройка**
 +
 +Открываем конфигурационный файл ssl.conf:
 +
 +# vim /​etc/​nginx/​bx/​conf/​ssl.conf
 +
 +
 +Если у вас уже были установлены сертификаты,​ удаляем или комментируем строки с ними и вставляем новые:
 +
 +<​file>​
 +ssl_certificate /​etc/​letsencrypt/​live/​my-domain.ru/​fullchain.pem;​
 +ssl_certificate_key /​etc/​letsencrypt/​live/​my-domain.ru/​privkey.pem;​
 +</​file>​
 +
 +Не забываем включить ssl, если этого не было сделано ранее:
 +
 +<​file>​
 +ssl on;
 +keepalive_timeout 70;
 +keepalive_requests 150;
 +ssl_session_cache shared:​SSL:​10m;​
 +ssl_session_timeout 10m;
 +</​file>​
 +
 +После этого перезапускаем nginx:
 +
 +# service nginx reload
 +
 +
 +Если он не выдал никаких ошибок,​ значит всё в порядке. Можно зайти на сайт и посмотреть что получилось.
 +
 +Обновление
 +
 +Сертификат выдается на 90 дней, так что после этого срока нужно будет его обновить. Делается это командой:​
 +
 +# certbot-auto renew
 +
 +===== Обновляем =====
 +/var/local/
 +
 +wget https://​dl.eff.org/​certbot-auto
 +просто вот это
 +<​file>​
 +./​certbot-auto renew 
 +service nginx restart
 +</​file>​
 +
 +а так было раньше
 +<​file>​
 +./​certbot-auto certonly --webroot --agree-tos --email esa@magnes.su -w /​var/​www//​html/​zakaz.cloud/​samart -d zakaz.samart.ru
 +service nginx restart
 +chmod a+x certbot-auto
 +</​file>​
 +
 +
 +Для тех, где бот не работает - сначала сделаем сертификат без проверок well-know, и вставим его после
 +<​file>​
 +./​certbot-auto certonly --webroot --agree-tos --email esa@magnes.su -w /​var/​www//​html/​zakaz.cloud/​www -d zakaz.cloud
 +./​certbot-auto --nginx
 +
 +
 +
 +Заказать wildcard
 +
 +./​certbot-auto -d 3book.ru -d *.3book.ru --manual --preferred-challenges dns-01 --server https://​acme-v02.api.letsencrypt.org/​directory certonly
 +
 +В консоле выведет инфу, которую надо добавить в dns txt запись
 +
 +Меняем на селектеле в dns и проверяем,​ чтоб она обновилась
 +
 +dig -t txt _acme-challenge.3book.ru
 +
 +Запускаем
 +./​certbot-auto на этот домен еще раз - готово,​ теперь осталось перезапустить nginx
 +
 +Тоже на три месяца =(
 +
 +</​file>​
 +
 +
 +