Vesta CP после установки PHP7 перестал работать Roundcubemail

Есть webserver c ОС Centos 7 под управление Vesta CP, решил установить на него PHP 7. Установка прошла успешно, все сайты работают, но пропал доступ к почте через web интерфейс. При попытке подключиться на url https://domain. ru/ webmail в браузере выходит ошибка 404

Ниже рассмотрены решение проблемы, а также возможные ошибки.

Установка roundcubemail

Иду в директорию roundcubemail, /usr/share/roundcubemail и вижу что в ней только папка plugins и больше ничего. Устанавливаю roundcubemail заново

Далее открываем /etc/httpd/conf. d/roundcubemail. conf

Ищем в начале файла строчку Alias /webmail /usr/share/roundcubemail . Если строка есть, то ничего не делаем, если нет, то прописываем eе, у меня файл выглядит так

После чего страница https://domain. ru/ webmail должна открываться. Если же выходит ошибка

То открываем файл /etc/httpd/conf. d/roundcubemail. conf и правим следующую секцию

Не забудьте рестартануть httpd командой

Неудачное соединение с IMAP сервером.

Теперь webmail открывается, но при попытки авторизации появляется ошибка «Неудачное соединение с IMAP сервером». Смотрю логи dovecot

Правим файл /etc/dovecot/conf. d/15-mailboxes. conf

Добавляя параметр inbox = yes

То есть в начале должно быть

После чего все нормально заработало

Ошибка «Неверный запрос! Информация не сохранена.»

Через некоторое время при попытке войти в webmail стала выскакивать ошибка «Неверный запрос! Информация не сохранена.»

При этом в логах ничего нет, попробовал зайти по https, т. е https://domain. ru/webmail/ Ввожу логин пароль, в почту не пускает, но ошибка другая «Неудачная попытка входа.»

В логах dovecot появилась строчка open(/etc/exim/domains/domain. ru/passwd) failed: Permission denied. Уже что то, даю права 777 на файл passwd.

Пытаюсь войти, все работает. Но радоваться как оказалось рано, при попытке отправить письма выскакивает ошибка «451 temporary local problem — please try later». Снова смотрим логи. В файле /var/log/exim/reject. log вижу строчку «failed to open /etc/exim/domains/domain. ru/aliases for linear search: Permission denied». Даю права на этот файл

И о чудо, наконец то все заработало! Конечно давать права 777 на файл паролей не хорошо, прошу в комментариях указать правильные права на эти два файла.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Переходим на протокол HTTPS. SSL сертификаты VestaCP

ssl сертификат vesta

Привет, дорогие читатели, если Вы хоть раз устанавливали панель VestaCP то определённо неоднократно замечали постоянные предупреждения браузера о небезопасности сайта, сегодня речь пойдёт не только о решении данной проблемы, но и о быстрой и практичной ssl сертификации сайтов и о переходе на https. Мы научимся подключать бесплатные ssl сертификаты (Let’s Encrypt) к VestaCP и вашим сайтам, настроим редирект с http на https, решим попутные проблемы.

1. Для чего переходить на https?

Жизнь в сети — это постоянный обмен данными. Когда вы шлёте другу очередной мемас, загружаете страницу, отправляете комментарий, смотрите видео, оплачивать покупки, ваш браузер связывается с сервером и получает от него определённый ответ. Зачастую это происходит через http. При всей распространённости и большом удобстве этого сетевого протокола у него есть достаточно сильный недостаток: абсолютно все ваши данные передаются в открытом виде и никак не защищаются.

Для установки безопасного, защищённого соединения был придуман https сетевой протокол для шифрования передающихся данных. По умолчанию он стоит на абсолютно всех страницах оплаты, поскольку именно тут посетители обычно передают важную информацию.

Если ранее гугл только рекомендовал переходить на https и никаких санкций не вводил, то с недавнего времени он перешёл на серьёзные угрозы и пообещал помечать все сайты с http как ненадёжные. Определённо известно, что уже сейчас гугл в поисковой выдаче сайты с https ставит на порядок выше не сертифицированных сородичей.

Именно чтобы избежать этих санкций и кражи информации стоит переходить на защищённое соединение. Благо, теперь это можно делать бесплатно и достаточно быстро.

2. Подключаем SSL сертификат к сайту

Благодаря подключенному скрипту «Lets Encrypt» в панели VestaCP, создание и подключение сертификата облегчено до минимума. Для подключения сертификата вводите в панель → перейдите в кладку «WEB» → нажмите кнопку «редактировать» на нужном сайте → в новом окно найдите пункт «Поддержка SSL«, поставьте галочку → поставьте галочку возле «Поддержка Lets Encrypt» →выберите директорию где расположен сайт → сохраните изменения (из-за сложности процедуры сохранение будет происходить несколько дольше обычного). После сохранения можно перезайти на страницу и убиться в появлении кода сертификата. В итого у вас получится такая запись:

Поддержка Lets Encrypt в vesta

Чтобы проверить правильно ли все работает подключитесь к вашему сайту через протокол https://pupi-boy. ru/. Если в строке ввода адреса появился замок — значит, все отлично. Но если замок как бы приоткрыт — это признак, что на вашем сайте есть незащищённый контент (проблема смешанного контента), т. е. информации которая передаёт по не замещённому http. Как с этим бороться будет описано ниже.

3. Подключаем SSL сертификат к панели управления хостингом VestaCP

Как и было обещано сейчас мы разберёмся с самоподписанным сертификатом и предупреждением о небезопасности в панели управления хостингом VestaCP. Прежде чем приступать подключите сертификат к домену, на котором стоит панель, так, как описано выше.

Подключаемся к серверу с SSH и даём новое имя самоподписанному сертификату:

Ставим ярлыки на файлы сертификата домена и перезагружаем панель:

Ждём минутку и проверяем результаты: входим в панель и убеждаемся в присутствии замка и отсутствии предупреждения безопасности.

4. Ставим редирект с http на https

Редирект нужен для того, чтобы перенаправить пользователя с незащищённой страницы на защищённую и предупредить лишние дубли в индексе поисковых машин. Существует множество способов перенаправления посетителя с неугодных страниц. Мы рассмотри 3 способа: через файл. htaccess, через nginx (создание дополнительного шаблона для nginx в VestaCP), редирект в PHP.

4.1 Редирект через файл. htaccess

Редирект всех страниц сайта с http на https (также с https://www на https):

4.2 Создание пользовательского шаблона force-https в VestaCP

Установленный пользовательский шаблон force-https для позволяет ставить редирект одним кликом, что реально удобно. Подключаемся к серверу через SSH и вводим команды:

Теперь можно перейти в раздел «WEB» → «редактировать» → шаблон прокси → выбрать force-https.

4.3 Редирект в PHP

Можно ставить совместно с редиректом в. htaccess или в nginx. В WordPress перейдите в файлы темы → выберите файл функций темы → добавьте код, расположенный ниже, в конец файла до <?php >?>. Проверите работоспособность.

4.4 Редирект через шаблон

  1. Переходим в папку «/home/admin(или др. нужный пользователь)/conf/web/ » от пользователя root (иначе будет ошибка доступа).
  2. Создаем там файл «nginx. ваше доменное имя. conf_custom«, вот пример с моим доменным именем «nginx. pupi-boy. ru. conf_custom».
  3. Вставляем следующее:
  4. Сохраняем. Все редирект готов. В этом файл можно прописывать и другие правила для nginx. К примеру можно ввести такую строку, с помощью которой будет подхватываться конфиг из папки сайта

5.Избавляемся от смешанного содержимого WordPress

1.Первое что надо сделать, даже до постановки редиректа, это перейти в админку блога → «настройки» → «Общее«→ изменить «Адрес WordPress (URL)» и «Адрес сайта (URL)» на https.

2. Изменяем все ссылки на картинки, стили и прочее на вид без указанного протокола «//pupi-boy. ru».

3. Исправляем ссылки в постах либо вручную либо с помощью замены в базе данных.Только сделайте резервную копию, лишним не будет. Переходим в phpMyAdmin → вкладка «SQL» и выполняем команду:

Источники:

https://itproffi. ru/vesta-cp-posle-ustanovki-php7-perestal-rabotat-roundcubemail/

https://pupi-boy. ru/web-server/https-ssl-sertifikaty-vestacp. html

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: