Как да кандидатствате за Let's Encrypt? Let's Encrypt Безплатен SSL сертификат Принцип и Урок за инсталиране

Как да кандидатствате за Let's Encrypt?

Let’s Encrypt SSL Certificate Принцип и урок за инсталиране

Какво е SSL? Чен Уейлян обсъди това в предишната си статия „ Каква е разликата между HTTP и HTTPS? Подробно обяснение на процеса на SSL криптиране “.

Освен сайтовете за електронна търговия , които трябва да закупят SSL сертификати с високо ниво на криптиране, специалистите по нови медии , които използват уебсайтове за популяризиране на своите официални акаунти в WeChat, могат да инсталират безплатни криптирани SSL сертификати. Това може да помогне за SEO и да подобри класирането на уебсайта по ключови думи в търсачките.

Как да кандидатствате за Let's Encrypt? Let's Encrypt Безплатен SSL сертификат Принцип и Урок за инсталиране

Let's Encrypt има собствен работен процес ( https://certbot.eff.org/ ). Потребителите на Linux могат да се обърнат към този работен процес и да следват това ръководство.

Първо изтеглете инструмента certbot-auto, след което стартирайте инсталационните зависимости на инструмента.

wget https://dl.eff.org/certbot-auto --no-check-certificate
chmod +x ./certbot-auto
./certbot-auto -n

Генериране на SSL сертификат

След това, като вземем за пример името на домейна на блога на Чен Вейлианг , моля, променете го според вашите нужди и изпълнете следната команда чрез SSH.

Не забравяйте да промените командата:

  1. пощенска кутия
  2. сървърен път
  3. име на домейн на уебсайт

Единична директория с един домейн, генерирайте сертификат:

./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com

Единична директория с множество домейни, генериране на сертификат: (т.е. множество имена на домейни, една директория, използване на един и същ сертификат)

./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com -d img.chenweiliang.com

Генерираният SSL сертификат ще бъде записан в:/etc/letsencrypt/live/www.chenweiliang.com/ Под съдържанието.


Множество имена на домейни и множество директории, генериране на сертификат: (т.е. множество имена на домейни, множество директории, използване на един и същ сертификат)

./certbot-auto certonly --email [email protected] --agree-tos --no-eff-email --webroot -w /home/admin/web/chenweiliang.com/public_html -d www.chenweiliang.com -d img.chenweiliang.com -w /home/eloha/public_html/site/etufo.org -d www.etufo.org -d img.etufo.org

След като сертификатът Let's Encrypt бъде инсталиран успешно, в SSH ще се появи следното подканващо съобщение:

Важни забележки:
– Честито!Вашият сертификат и глain са запазени на:
/etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem
Вашият ключов файл е запазен на:
/etc/letsencrypt/live/www.chenweiliang.com/privkey.pem
Вашият сертификат ще изтече на 2018-02-26. За да получите нов или променен
версия на този сертификат в бъдеще, просто стартирайте certbot-auto
За неинтерактивно подновяване на *всички* ваши сертификати, стартирайте
"certbot-автоматично подновяване"
- Ако ви харесва Certbot, моля, обмислете поддръжката на нашата работа чрез:
Дарение на ISRG / Let's Encrypt: https://letsencrypt.org/donate
Дарения за EFF: https://eff.org/donate-le

Подновяване на SSL сертификат

Подновяването на сертификата също е много удобно, като се използва crontab за автоматично подновяване. За някои версии на Debian, които нямат инсталиран crontab, можете първо да го инсталирате ръчно.

apt-get install cron

Следните команди за nginx и apache се въвеждат във файла /etc/crontab , което означава, че те се подновяват на всеки 10 дни и е достатъчен 90-дневен период на валидност.

Nginx crontab файл, моля, добавете:

0 3 */10 * * /root/certbot-auto renew --renew-hook "/etc/init.d/nginx reload"

Apache crontab файл, моля, добавете:

0 3 */10 * * /root/certbot-auto renew --renew-hook "service httpd restart"

SSL сертификат Apache конфигурация

Сега трябва да направим промени в конфигурацията на Apache.

Съвети:

  • ако използватеCWP контролен панел, в Добавете име на домейн отметнете Автоматично генериране на SSL сертификат, той автоматично ще конфигурира SSL сертификата за Apache.
  • Ако направите повече от следните стъпки, може да възникне грешка след рестартиране на Apache.
  • Ако има грешка, изтрийте конфигурацията, която сте добавили ръчно.

Редактирайте файла httpd.conf ▼

/usr/local/apache/conf/httpd.conf

Намерете ▼

Listen 443
  • (премахнете предходния номер на коментар #)

или добавете порт за слушане 443 ▼

Listen 443

SSH проверка на порт за слушане на Apache ▼

grep ^Listen /usr/local/apache/conf/httpd.conf

Намерете ▼

mod_ssl
  • (премахнете предходния номер на коментар #)

или добавете ▼

LoadModule ssl_module modules/mod_ssl.so

Намерете ▼

httpd-ssl
  • (премахнете предходния номер на коментар #)

След това SSH изпълнете следната команда (забележете, че трябва да промените пътя към вашия собствен):

at >/usr/local/apache/conf/extra/httpd-ssl.conf<<EOF
Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProxyCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLHonorCipherOrder on
SSLProtocol all -SSLv2 -SSLv3
SSLProxyProtocol all -SSLv2 -SSLv3
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:/usr/local/apache/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
SSLMutex "file:/usr/local/apache/logs/ssl_mutex"
EOF

След това, в края на конфигурацията на Apache за уебсайта, който създадохте, под </VirtualHost>.

Добавете конфигурационния файл на секцията SSL (забележка за премахване на коментара и промяна на пътя към ваш собствен):

<VirtualHost *:443>
DocumentRoot /home/admin/web/chenweiliang.com/public_html //网站目录
ServerName www.chenweiliang.com:443 //域名
ServerAdmin [email protected] //邮箱
ErrorLog "/var/log/www.chenweiliang.com-error_log" //错误日志
CustomLog "/var/log/www.chenweiliang.com-access_log" common //访问日志
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/www.chenweiliang.com/fullchain.pem //之前生成的证书
SSLCertificateKeyFile /etc/letsencrypt/live/www.chenweiliang.com/privkey.pem //之前生成的密钥
<Directory "/home/admin/web/chenweiliang.com/public_html"> //网站目录
SetOutputFilter DEFLATE
Options FollowSymLinks
AllowOverride All
suPHP_UserGroup eloha eloha //用户组(有些服务器配置需要,有些可能不需要,出错请删除此行)
Order allow,deny
Allow from all
DirectoryIndex index.html index.phps
</Directory>
</VirtualHost>

Накрая рестартирайте Apache върху него:

service httpd restart

Apache принудително пренасочва HTTP към HTTPS

  • Много уеб заявки винаги могат да се изпълняват само с SSL.
  • Трябва да сме сигурни, че всеки път, когато използваме SSL, уебсайтът трябва да бъде достъпен чрез SSL.
  • Ако някой потребител се опита да осъществи достъп до уебсайта с не-SSL URL, той трябва да бъде пренасочен към SSL уебсайта.
  • Пренасочване към SSL URL с помощта на Apache mod_rewrite модул.
  • Като например използване на LAMP инсталационен пакет с едно щракване, вградена автоматична инсталация на SSL сертификат и принудително пренасочване към HTTPS, пренасочване към HTTPSВ сила, не е необходимо да добавяте HTTPS пренасочване.

Добавете правило за пренасочване

  • В конфигурационния файл на Apache редактирайте виртуалния хост на уебсайта и добавете следните настройки.
  • Можете също да добавите същите настройки към корена на документа на вашия уебсайт във вашия .htaccess файл.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Ако просто искате да посочите определен URL адрес за пренасочване към HTTPS:

RewriteEngine On
RewriteRule ^message$ https://www.etufo.org/message [R=301,L]
  • Ако някой се опита да получи достъп съобщение , страницата ще премине към https и потребителят ще има достъп до URL адреса само с SSL.

Рестартирайте Apache, за да влезе в сила файлът .htaccess:

service httpd restart

注意 事项

  • Моля, променете горния имейл адрес на вашия имейл адрес.
  • Моля, не забравяйте да промените горепосоченото име на домейн на уебсайт с име на домейн на вашия уебсайт.

Проблем с местоположението на правилото за пренасочване

Когато поставяте правила за пренасочване под псевдостатични правила, често ще се сблъскате с проблема, че HTTP не може да пренасочи целия сайт към HTTPS.

Първоначално копирахме кода за пренасочване в .htaccess и той ще се показва в следните случаи ▼

Правилото за пренасочване [L] е показано по-горе.

  • [L] показва, че текущото правило е последното правило, спрете да анализирате следните правила за пренаписване.
  • Така че при достъп до пренасочената страница със статия [L] спира следното правило, така че правилото за пренасочване не работи.

Когато осъществяваме достъп до начална страница с HTTP протокол, искаме да задействаме пренасочване на URL адрес, заобикаляйки правилата за пренаписване на URL адреси, за да изпълним правилата за пренасочване, така че целият сайт да може да бъде пренасочен от HTTP към HTTPS.

Не поставяйте правилата за пренасочване на HTTPS под правилата [L] ; поставете ги над правилата [L] . ▼

Псевдостатичните правила за SSL пренасочване [L] са по-долу.

Разширено четене:

Надяваме се, че статията „Как да кандидатствате за Let's Encrypt? Принципи и ръководство за инсталиране на безплатни SSL сертификати от Let's Encrypt“, споделена в блога на Чен Вейлианг ( https://www.chenweiliang.com/ ), ще ви бъде полезна.

Чувствайте се свободни да споделите линка към тази статия: https://www.chenweiliang.com/cwl-512.html

За да отключите още скрити трикове🔑, заповядайте в нашия Telegram канал!

Споделете и харесайте, ако ви харесва! Вашите споделяния и харесвания са нашата постоянна мотивация!

 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Преминете към Top