Инструменты пользователя

Инструменты сайта


wiki:freebsd:certbot

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
wiki:freebsd:certbot [2023/04/10 17:53] – [Получение сертификатов SSL] Dimanwiki:freebsd:certbot [2026/02/05 13:34] (текущий) – [Шаблоны файлов конфига nginx] Diman
Строка 6: Строка 6:
 cd /usr/ports/security/py-certbot-nginx cd /usr/ports/security/py-certbot-nginx
 make install clean make install clean
-<code>+</code>
  
  
Строка 14: Строка 14:
 # Создаем директорию для проверки сертификатов в nginx # Создаем директорию для проверки сертификатов в nginx
 mkdir -p /usr/local/www/.well-known/acme-challenge mkdir -p /usr/local/www/.well-known/acme-challenge
-<code>+</code>
  
-В виртуальном хосте нужного домена создаем новый локейшн+В виртуальном хосте ОС FreeBSD нужного домена создаем новый локейшн
 <code bash> <code bash>
 +# FreeBSD
   location /.well-known/acme-challenge/ {   location /.well-known/acme-challenge/ {
     root /usr/local/www;     root /usr/local/www;
Строка 25: Строка 26:
  
  
 +В виртуальном хосте ОС Debian нужного домена чуть другие пути.
 +
 +<code bash>
 +    # Debian, Ubuntu, etc
 +    location /.well-known/acme-challenge/ {
 +       root /var/www/html;
 +       default_type text/plain;
 +    }
 +</code>
 +
 +Копируем настройки SSL для nginx
 +
 +<code bash>
 +# Debian, Ubuntu
 +cp /usr/lib/python3/dist-packages/certbot_nginx/_internal/tls_configs/options-ssl-nginx.conf \
 + /etc/letsencrypt/options-ssl-nginx.conf
 +</code>
 +
 +<code bash>
 +# FreeBSD
 +openssl dhparam -out /usr/local/etc/letsencrypt/dhparams.pem 2048
 +
 +# Debian, Ubuntu
 +openssl dhparam -out /etc/letsencrypt/ssl-dhparams.pem 2048
 +</code>
 ===== Получение сертификатов SSL ===== ===== Получение сертификатов SSL =====
  
-Выполняем проверку, верификацией через webroot+Получаем сертификат, выполняя certbot
 <code bash> <code bash>
-certbot certonly --webroot -w /usr/local/www/ -d domain.ru --dry-run+# тестируем 
 +certbot certonly --webroot -w /usr/local/nginx -d srv206.vps-server.ru --email support@vps-server.ru  --dry-run  
 + 
 +# если все успешно, то убираем  --dry-run и выполняем еще раз! 
 + 
 </code> </code>
  
 +Если все успешно, то убираем <del> --dry-run</del> и выполняем еще раз!
 +
 +===== Шаблоны файлов конфига nginx =====
 +
 +<file bash domain.conf>
 +server {
 +    server_name ~^www\.(.*)$;
 +    return 301 $scheme://$1$request_uri;
 +}
 +
 +server {
 +  listen 80;
 +  server_name ###domain### www.###domain###;
 +  error_log /var/log/nginx/###domain###-error.log warn;
 +  access_log /var/log/nginx/###domain###.log;
 +  location / {
 +    ###redirect_enable###
 +    return 301 https://$host$request_uri;
 +    root /var/www/html/;
 +    index  index.html index.htm index.nginx-debian.html;
 +  }
 +  location /.well-known/acme-challenge/ {
 +    root /var/www/html/;
 +    default_type text/plain;
 +  }
 +}
 +</file>
 +
 +<file bash domain.ssl.conf>
 +server {
 +  listen 443 ssl;
 +  server_name ###domain### www.###domain###;
 +  error_log /var/log/nginx/###domain###-error.log warn;
 +  access_log /var/log/nginx/###domain###.log;
 +
 +  ssl_certificate /etc/letsencrypt/live/###domain###/fullchain.pem;
 +  ssl_certificate_key /etc/letsencrypt/live/###domain###/privkey.pem;
 +  include /etc/letsencrypt/options-ssl-nginx.conf;
 +  ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
 +
 +  if ($host ~* ^www\.(.*)) {
 +    set $host_without_www $1;
 +    rewrite ^(.*)$ $scheme://$host_without_www$1 permanent;
 +  }
 +
 +  real_ip_header    X-Real-IP;
 +  location / {
 +    proxy_set_header Host $host;
 +    proxy_set_header X-Real-IP $remote_addr;
 +    proxy_set_header X-Forwarded-For $remote_addr;
 +    proxy_pass http://###local_ip###;
 +  }
 +}
  
 +</file>
  
  
wiki/freebsd/certbot.1681149225.txt.gz · Последнее изменение: Diman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki