Введение
Протокол автоматической среды управления сертификатами (ACME) — это протокол связи для автоматизации взаимодействия между центрами сертификации и веб-серверами пользователей. Acme — это скрипт, написанный на языке Shell (Unix), без каких-либо зависимостей от Python или официального клиента Let’s Encrypt. Он не требует доступа root или sudoer.
Установку Acme можно выполнить в основных дистрибутивах Linux, таких как Ubuntu, CentOS, Debian, Archlinux, OpenSUSE, Fedora и многих других.
Установить Акме
Мы можем установить Acme с помощью git, клонируя официальный проект: Из терминала дайте эту команду:
git clone https://github.com/Neilpang/acme.sh.git
Войдите в новую папку:
cd./acme.sh
Запустите скрипт:
./acme.sh --install
Этот сценарий также автоматически создает ежедневный cron для проверки и, возможно, обновления сертификатов.
После установки перезапустите терминал.
Установите Acme с помощью curl или wget Вы также можете установить acme с помощью команды curl:
curl https://get.acme.sh | sh
Или через команду wget:
wget -O - https://get.acme.sh | sh
Как получить SSL-сертификаты
Для получения SSL-сертификатов необходимо указать доменное имя и webroot (т.е. корневую директорию веб-сервера), убедиться, что у вас есть права на запись в эту папку.
Затем дайте следующую команду:
acme.sh --issue -d esempio.it -w /home/wwwroot/esempio.it
Или же
acme.sh --issue -d esempio.it -w /home/username/public_html
Или же
acme.sh --issue -d esempio.it -w /var/www/html
Чтобы получить SSL-сертификаты для нескольких доменов одновременно:
acme.sh --issue -d esempio.it -d www.esempio.it -d cp.esempio.it -w /var/www/esempio.it
Сертификаты будут создаваться в следующей папке и обновляться каждые 60 дней:
~/.acme.sh/esempio.it/
Как установить сертификаты в Apache или Nginx
После создания SSL-сертификатов с помощью описанных выше команд их можно установить для разных веб-серверов, таких как Apache и Nginx. Не используйте напрямую сертификаты внутри папки ~/.acme.sh/example.it/, структура папок со временем может измениться.
Чтобы установить сертификаты в Apache:
acme.sh --install-cert -d esempio.it \
--cert-file /path/to/certfile/in/apache/cert.pem \
--key-file /path/to/keyfile/in/apache/key.pem \
--fullchain-file /path/to/fullchain/certfile/apache/fullchain.pem \
--reloadcmd "service apache2 force-reload"
Чтобы установить сертификаты в Nginx:
acme.sh --install-cert -d esempio.it \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd "service nginx force-reload"
Установите или скопируйте сертификат в корневую папку Apache или Nginx.
По умолчанию сертификат будет обновляться каждые 60 дней. После обновления сертификата служба Apache/Nginx будет автоматически перезапущена командой:
service apache2 force-reload
Или же:
service nginx force-reload
Acme — режим Apache
Вам нужно войти в систему как root или как пользователь sudo.
Если вы используете веб-сервер Apache, рекомендуется использовать режим Webroot.
В этом режиме никакие файлы не записываются в корневую веб-папку.
acme.sh --issue --apache -d esempio.it -d www.esempio.it -d cp.esempio.it
Режим Apache предназначен только для выдачи сертификата, он не изменит файлы конфигурации Apache. Вам нужно будет настроить файлы конфигурации вашего веб-сайта вручную.
Acme — режим Nginx
Вам нужно войти в систему как root или как пользователь sudo.
Если вы используете веб-сервер Nginx, рекомендуется использовать режим Webroot.
Автоматически настройте сервер nginx для проверки домена, а затем восстановите конфигурацию nginx до исходной версии.
Следовательно, конфигурация не изменится.
acme.sh --issue --nginx -d esempio.it -d www.esempio.it -d cp.esempio.it
Режим Nginx предназначен только для выдачи сертификата, он не изменит файлы конфигурации nginx. Вам нужно будет настроить файлы конфигурации вручную.
Acme — автономный режим
Если вы не используете веб-сервер и хотите получить SSL-сертификаты, используйте автономный режим: Из терминала:
acme.sh --issue -d esempio.it --standalone
Как получить Wildcard SSL-сертификаты
Один Wildcard SSL-сертификат распространяется на все поддомены основного домена.
Чтобы получить Wildcard-сертификат:
acme.sh --issue -d esempio.it -d '*.esempio.it' --dns dns_cf
Как обновить SSL-сертификаты
Обновление SSL-сертификатов будет выполнено автоматически, однако можно принудительно выполнить обновление с помощью следующей команды:
acme.sh --renew -d esempio.it --force
Как остановить обновление SSL-сертификатов
Чтобы остановить автоматическое обновление сертификатов, дайте следующую команду из терминала:
acme.sh --remove -d esempio.it
Как обновить acme.sh
Acme.sh находится в постоянном развитии и обновлении, настоятельно рекомендуется обновлять его, когда это возможно, с терминала:
acme.sh --upgrade
Чтобы включить автоматическое обновление:
acme.sh --upgrade --auto-upgrade
Отключить автоматическое обновление:
acme.sh --upgrade --auto-upgrade 0
Для получения дополнительной информации перейдите по следующей ссылке.
Установка и настройка завершены.