В этом руководстве мы хотели бы показать вам еще один способ легко получить и продлить бесплатный сертификат SSL / TLS от Let’s Encrypt с помощью скрипта acme.sh на Ubuntu 20.04.
Скачать acme.sh
Скачать acme.sh из Интернета
Выполните любую из двух команд, показанных ниже, чтобы загрузить и выполнить скрипт acme.sh.
$ curl https://get.acme.sh | sh
или
$ wget -O - https://get.acme.sh | sh
$ wget -O - https://get.acme.sh | sh --2021-02-16 11:55:47-- https://get.acme.sh/ Resolving get.acme.sh (get.acme.sh)… 2606:4700:3032::6815:223e, 2606:4700:3031::ac43:c710, 172.67.199.16, … Connecting to get.acme.sh (get.acme.sh)|2606:4700:3032::6815:223e|:443… connected. HTTP request sent, awaiting response… 200 OK Length: unspecified Saving to: ‘STDOUT’ [ <=> ] 937 --.-KB/s in 0s 2021-02-16 11:55:47 (11.8 MB/s) - written to stdout [937] % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 204k 100 204k 0 0 3350k 0 --:--:-- --:--:-- --:--:-- 3350k [Tue 16 Feb 2021 11:55:47 AM UTC] Installing from online archive. [Tue 16 Feb 2021 11:55:47 AM UTC] Downloading https://github.com/acmesh-official/acme.sh/archive/master.tar.gz [Tue 16 Feb 2021 11:55:47 AM UTC] Extracting master.tar.gz [Tue 16 Feb 2021 11:55:47 AM UTC] It is recommended to install socat first. [Tue 16 Feb 2021 11:55:47 AM UTC] We use socat for standalone server if you use standalone mode. [Tue 16 Feb 2021 11:55:47 AM UTC] If you don't use standalone mode, just ignore this warning. [Tue 16 Feb 2021 11:55:47 AM UTC] Installing to /home/shola/.acme.sh [Tue 16 Feb 2021 11:55:47 AM UTC] Installed to /home/shola/.acme.sh/acme.sh [Tue 16 Feb 2021 12:05:54 PM UTC] Installing alias to '/home/shola/.bashrc' [Tue 16 Feb 2021 12:05:54 PM UTC] OK, Close and reopen your terminal to start using acme.sh [Tue 16 Feb 2021 11:55:47 AM UTC] Installing cron job 47 0 * * * "/home/shola/.acme.sh"/acme.sh --cron --home "/home/shola/.acme.sh" > /dev/null [Tue 16 Feb 2021 11:55:47 AM UTC] Good, bash is found, so change the shebang to use bash as preferred. [Tue 16 Feb 2021 11:55:48 AM UTC] OK [Tue 16 Feb 2021 11:55:48 AM UTC] Install success!
Клонировать проект acme.sh
Или выполните следующие команды по одной в каждой строке, чтобы клонировать проект acme.sh git и выполнить скрипт:
$ git clone https://github.com/acmesh-official/acme.sh.git $ cd acme.sh $ ./acme.sh --install
$ acme.sh -h
Как создать сертификат
Чтобы сгенерировать единый сертификат для одного домена, выполните команду, показанную ниже.
Замените yourdomain.com своим зарегистрированным доменом.
Кроме того, замените /var/www/yourdomain.com на корневую папку веб-сайта вашего домена, если это необходимо.
$ acme.sh --issue -d yourdomain.com -w /var/www/yourdomain.com
$ acme.sh --issue -d yourdomain.com -d www.yourdomain.com -d test.yourdomain.com -w /var/www/yourdomain.com
Установка сертификата на NGINX с помощью acme
$ acme.sh --install-cert -d yourdomain.com --key-file /path/to/keyfile/in/nginx/key.pem --fullchain-file /path/to/fullchain/nginx/cert.pem --reloadcmd "service nginx force-reload"
Продление сертификата
Сертификаты будут храниться в ~/.acme.sh/yourdomain.com и будут автоматически обновляться каждые 60 дней.
Но вы также можете вручную обновить сертификат, если захотите.
Выполните команду:
$ acme.sh --renew -d yourdomain.com --force
$ acme.sh --remove -d yourdomain.com
Обновление acme.sh
Рекомендуется использовать последнюю версию acme.sh.
Выполните команду показанную ниже, чтобы убедиться, что acme.sh обновляется автоматически.
$ acme.sh --upgrade --auto-upgrade
$ acme.sh --upgrade --auto-upgrade 0
$ acme.sh --upgrade