FAQ по сертификатам

Как подключить SSL для домена?

Если вы отказались от установки сертификата при первом запуске, то можете установить позже с помощью команды:

cd /root
curl keitaro.io/enable-ssl.sh > run; bash run -D domain.com

Важно! Если не получилось установить сертификат с первого раза - проверьте, привязан ли домен по А-записи к серверу с трекером. Если все записи на месте, запустите установку повторно через несколько часов, или обратитесь в нашу службу поддержки, мы поможем разобраться.

Установка SSL сразу для нескольких доменов

curl keitaro.io/enable-ssl.sh > run; bash run -D domain.ru,domain2.ru,domain3.ru

Скрипт не будет работать, если сервер не был настроен скриптом автонастройки.

Важно! Если не получилось установить сертификат с первого раза - проверьте, привязан ли домен по А-записи к серверу с трекером. Если все записи на месте, запустите установку повторно через несколько часов, или обратитесь в нашу службу поддержки, мы поможем разобраться.

Как настроить автоматический редирект с http на https?

В файл /etc/nginx/conf.d/local/keitaro/server.inc добавьте строки

set $need_redirect "";
if ($http_x_forwarded_proto != 'https') { set $need_redirect "yes"; }
if ($scheme = 'http') { set $need_redirect "${need_redirect}-yes"; }
if ($server_name ~ '[a-z]') { set $need_redirect "${need_redirect}-yes"; }
if ($need_redirect = "yes-yes-yes") { return 301 https://$server_name$request_uri; }

Это можно сделать, выполнив команду

cat >> /etc/nginx/conf.d/local/keitaro/server.inc <<'END'
set $need_redirect "";
if ($http_x_forwarded_proto != 'https') { set $need_redirect "yes"; }
if ($scheme = 'http') { set $need_redirect "${need_redirect}-yes"; }
if ($server_name ~ '[a-z]') { set $need_redirect "${need_redirect}-yes"; }
if ($need_redirect = "yes-yes-yes") { return 301 https://$server_name$request_uri; }
END

Если файла не существует (при выполнении вышеуказанной команды выдаётся ошибка «bash: /etc/nginx/conf.d/local/keitaro/server.inc: No such file or directory»), значит вам следует сначала обновить конфигурацию сервера. Обратитесь в нашу службу поддержки для того, чтобы мы обновили конфигурацию.

Как подключить SSL для домена, настроенного через CloudFlare?

Когда домен настроен на CloudFlare, то SSL настраивается на самом CloudFlare. У домена нужно включать поддержку SSL на самом CloudFlare.

Ошибка "Во время выпуска сертификата произошла неизвестная ошибка. "

Выполните:

curl -fsSL https://dl.eff.org/certbot-auto > certbot-auto 
chmod a+x ./certbot-auto
./certbot-auto --install-only
mv -f certbot-auto /usr/bin/certbot

Когда спросит Is this ok [y/d/N]: , введите «y».

Теперь попробуйте снова выписать сертификат.

Сертификат выписывается, но в браузере показывает, что невалидный

Если уже подключено больше 100 доменов, необходимо удалить старые, неиспользуемые. Перечислите домены для удаления в первой строке и выполните:

export domains="d1.site d2.site"
for domain in $domains; do echo Deleting $domain; rm -f /etc/nginx/conf.d/$domain.conf /etc/nginx/conf.d/local/$domain.conf; certbot delete --cert-name $domain; done

Сертификат не выписывается, скрипт enable-ssl пишет о неизвестной ошибке

Необходимо обновить утилиту certbot:

curl -sSL https://dl.eff.org/certbot-auto > certbot-auto
chmod a+x ./certbot-auto
./certbot-auto --install-only
mv certbot-auto /usr/bin/certbot-2

Удаление SSL сертификата указанного домена

В том случае если Вам потребуется убрать SSL сертификат с домена Вашего сайта, можете воспользоваться нашим скриптом удаления сертификата. Скрипт принимает доменное имя в качестве параметра. Сертификат SSL Вы можете удалить следующей командой:

curl https://raw.githubusercontent.com/apliteni/centos_provision/current/scripts/delete-ssl.sh > delete-ssl; bash delete-ssl domain.com

Где domain.com - это имя Вашего домена, у которого хотите отозвать и удалить сертификат. Будет произведено удаление сертификатов и их файлов, ключей шифрования сертификата указанного домена, а также файлов конфигурации данных сайтов в nginx (расположенных по пути /etc/nginx/conf.d/).