acme.sh быстро реализует выпуск https-сертификата и автоматическое продление

HTTPS

acme.sh быстро реализует выпуск https-сертификата и автоматическое продление

с помощьюacem.shЧтобы быстро внедрить выпуск и обновление ssl-сертификата для всех доменов Let’s Encrypt, по сути, пять минут могут решить проблему.

Основное содержание этой статьи взято из официальной вики acme.sh, и все подчиняется официальным инструкциям:acme wiki

I. Этапы установки

1. Войдите на сервер

Войдите на сервер Linux, я буду использовать Centos в качестве примера для иллюстрации.

ssh xxx@xxx

# 切换root账号
su

2. Установкаacme.sh

yum install socat -y
curl  https://get.acme.sh | sh
cd ~/.acme.sh/

3. Подать заявку на ключ

Перейдите к поставщику услуг по покупке доменного имени и подайте заявку на получение ключа API для последующей проверки записи txt.

DNSPod

После завершения ключевого приложения импортируйте команду следующим образом

# DNSPod
export DP_Id="id"
export DP_Key="key"

Али Клауд

ALY_KEY и ALY_TOKEN: Облако AlibabaКлюч API и официальные документы приложения Secrec.

После заполнения заявки сделайте следующее

export Ali_Key="key"
export Ali_Secret="secret"

godaddy

export GD_Key="key"
export GD_Secret="secret"

разное

Что касается других платформ, как импортировать ключи API, вы можете обратиться к следующим документам, которые здесь не будут объясняться.

4. Генерация сертификата

# 请注意,--dns后面的参数,一般来讲后缀就是上面的导入key的前缀
# 如果不确定,到上面的github连接中去找

# 针对 hhui.top 域名生成通配的证书
./acme.sh --issue --dns dns_ali - d *.hhui.top

После создания сертификат будет.acme.shкаталог, создайте новый*.hhui.top(то есть подстановочное доменное имя, которое мы указали выше) папка, сертификат находится в ней

5. Установите сертификат

Далее устанавливаем наш сертификат в nginx (конечно, можно и tomcat).Кроме установки, следующий скрипт так же добавляет задачу автоматического обновления (как правило, будет автоматически обновляться через 60 дней, а nginx будет принудительно для перезагрузки) Чтобы сделать новый сертификат действительным, вы можете передатьcrontab -eсм. соответствующие запланированные задачи)

./acme.sh  --installcert -d *.hhui.top --key-file /etc/nginx/ssl/key.pem  --fullchain-file /etc/nginx/ssl/cert.pem --reloadcmd     "service nginx force-reload"

6. Конфигурация nginx

Затем настройте nginx для поддержки https.

Ниже приведен пример базовой конфигурации nginx.

server {
    server_name blog.hhui.top;
    root /home/yihui/xxx;
    index index.html;

    gzip on;
    gzip_buffers 32 4K;
    gzip_comp_level 6;
    gzip_min_length 100;
    gzip_types application/javascript text/css text/xml;
    gzip_disable "MSIE [1-6]\."; #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
    gzip_vary on;

    location ~* ^.+\.(ico|gif|jpg|jpeg|png)$ {
        access_log   off;
        expires      1d;
    }

    location ~* ^.+\.(css|js|txt|xml|swf|wav|pptx)$ {
        access_log   off;
        expires      10m;
    }

    location / {
        try_files $uri $uri/ @router;
    }

    location @router {
        rewrite ^.*$ /index.html last;
    }

    listen 443 ssl;
    ssl_certificate /etc/nginx/ssl/cert.pem;
    ssl_certificate_key /etc/nginx/ssl/key.pem;
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 1.1.1.1 valid=60s;
    resolver_timeout 2s;
}

server {
    if ($host = blog.hhui.top) {
        return 301 https://$host$request_uri;
    }

    listen 80;
    server_name blog.hhui.top;
    return 404;
}

II. Другое

1. серый блог:liuyueyi.github.io/hexblog

Серый личный блог, записывающий все посты блога по учебе и работе, приглашаю всех в гости

2. Заявление

Это не так хорошо, как письмо.Вышеупомянутое содержание чисто из семьи.Из-за ограниченных личных способностей неизбежно есть упущения и ошибки.Если вы найдете ошибки или у вас есть лучшие предложения, вы можете критиковать и исправлять их.

3. Сканируйте внимание

серый блог

QrCode