Heim > Betrieb und Instandhaltung > Nginx > So verhindern Sie den Ablauf eines SSL-Zertifikats in Nginx

So verhindern Sie den Ablauf eines SSL-Zertifikats in Nginx

藏色散人
Freigeben: 2019-08-27 10:50:58
Original
7906 Leute haben es durchsucht

So verhindern Sie den Ablauf eines SSL-Zertifikats in Nginx

Wie verhindert Nginx den Ablauf des SSL-Zertifikats?

nginx konfiguriert kostenlose SSL-Zertifikate und regelmäßige Zertifikatsaktualisierungen

Umgebungsinhalt 6, Zertifikatsausstellung Let's Encrypt

Voraussetzung für die Zertifikatsgenerierung ist dass der Domänenname verfügbar ist, das heißt, er wurde registriert und von DNS in eine bestimmte IP aufgelöst

1 Installieren Sie epel,

>yum install epel-release
Nach dem Login kopieren

2. Laden Sie das Certbot-Zertifikatsgenerierungstool herunter certbot-auto

>wget https://dl.eff.org/certbot-auto --no-check-certificate
Nach dem Login kopieren

3 , Abhängigkeiten von Installationstools

>chmod +x certbot-auto
>./certbot-auto -n
Nach dem Login kopieren

4. Zertifikat generieren

Einzelner Domänenname:

>./certbot-auto certonly --email my@163.com --agree-tos --no-eff-email --webroot -w /usr/local/nginx/html/xue/ -d www.xue37.cn
Nach dem Login kopieren

Hinweis: E-Mail, Website ersetzen Verzeichnis und Domänenname

Mehrere Domänennamen:

>./certbot-auto certonly --email my@163.com --agree-tos --no-eff-email --webroot -w /usr/local/nginx/html/xue/ -d www.xue37.cn -d xue37.cn
Nach dem Login kopieren

Das Zertifikat wird im Verzeichnis /etc/letsencrypt/live/www.xue37.cn/ generiert (nach der Ausführung wird eine Eingabeaufforderung angezeigt den Befehl an der spezifischen generierten Adresse)

5. Zertifikatsverlängerung (da die Gültigkeitsdauer des Zertifikats 90 Tage beträgt)

Das certbot-auto-Tool unterstützt Zertifikatsverlängerungsvorgänge, sodass Sie dies tun können Verwenden Sie die geplante Crontab-Aufgabe, um das Zertifikat regelmäßig automatisch zu verlängern

>0 3 * * * /root/certbot-auto renew --disable-hook-validation --renew-hook "/usr/local/nginx/sbin/nginx -s reload"
Nach dem Login kopieren

Führen Sie die Zertifikatsverlängerung jeden Tag um 3 Uhr durch, und der Crontab-Ausdruck kann Baidu selbst sein

Hinweis:

Sie können es zuerst separat ausführen:

/root/certbot-auto renew --disable-hook-validation --renew-hook "/usr/local/nginx/sbin/nginx -s reload"
Nach dem Login kopieren

Ich werde hier aufgefordert. Die folgenden Zertifikate müssen noch nicht erneuert werden, was bedeutet, dass das Zertifikat nicht abgelaufen ist und keine anderen Fehler vorliegen. Um zu verhindern, dass das Zertifikat zu lange abläuft, können Sie daher den Erweiterungsvorgang jeden Tag festlegen

6. Zertifikatkonfiguration zu Nginx hinzufügen

server
{
listen 443 ssl;
server_name www.xue37.cn;     ##这里是你的域名
ssl_certificate /etc/letsencrypt/live/www.xue37.cn/fullchain.pem;    #前面生成的证书,改一下里面的域名就行
ssl_certificate_key /etc/letsencrypt/live/www.xue37.cn/privkey.pem;   #前面生成的密钥,改一下里面的域名就行
ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
access_log /data/application/logs/xue.access.log main;
location ^~ /bot {
proxy_pass http://xue-server;
include proxy-params.conf;
}
location / {
root html/xue;
index index.html index.htm;
}
location = /50x.html {
root html;
}
}
Nach dem Login kopieren

7. 80 Port 301 auf 443 setzen

Nginx-Konfiguration ändern:

server
{
listen 80;
server_name localhost;
location /.well-known/ {
add_header Content-Type 'text/plain;';
root /usr/local/nginx/html/xue;
}
location / {
return 301 https://www.xue37.cn$request_uri;
}
}
Nach dem Login kopieren

Hinweis: Nginx muss nach der Änderung neu gestartet werden: /usr/local/nginx/sbin/nginx -s reload

Hinweis: Nginx-Konfiguration muss verarbeitet werden

location ~ /\.
{
deny all;
}
Nach dem Login kopieren

Löschen oder kommentieren Sie diese Konfiguration aus oder fügen Sie sie vor dieser Konfiguration hinzu (bitte ignorieren Sie sie, wenn keine solche Konfiguration vorhanden ist)

location ~ /.well-known {
allow all;
}
Nach dem Login kopieren

Weitere technische Artikel zu Nginx finden Sie unter Bitte besuchen Sie die Spalte Tutorial zur Nginx-Nutzungzum Lernen!

Das obige ist der detaillierte Inhalt vonSo verhindern Sie den Ablauf eines SSL-Zertifikats in Nginx. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage