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

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


wiki:freebsd:certbot

Это старая версия документа!


Установка плагина certbot nginx для SSL Lets'Encrypt

Установка из портов

cd /usr/ports/security/py-certbot-nginx
make install clean

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

# Создаем директорию для проверки сертификатов в nginx
mkdir -p /usr/local/www/.well-known/acme-challenge

В виртуальном хосте ОС FreeBSD нужного домена создаем новый локейшн

# FreeBSD
  location /.well-known/acme-challenge/ {
    root /usr/local/www;
    default_type text/plain;
  }

В виртуальном хосте ОС Debian нужного домена чуть другие пути.

    # Debian, Ubuntu, etc
    location /.well-known/acme-challenge/ {
       root /var/www/html;
       default_type text/plain;
    }

Копируем настройки SSL для nginx

# Debian, Ubuntu
cp /usr/lib/python3/dist-packages/certbot_nginx/_internal/tls_configs/options-ssl-nginx.conf \
 /etc/letsencrypt/options-ssl-nginx.conf
# FreeBSD
openssl dhparam -out /usr/local/etc/letsencrypt/dhparams.pem 2048
 
# Debian, Ubuntu
openssl dhparam -out /etc/letsencrypt/ssl-dhparams.pem 2048

Получение сертификатов SSL

Получаем сертификат, выполняя certbot

# тестируем
certbot certonly --webroot -w /usr/local/nginx -d srv206.vps-server.ru --email support@vps-server.ru  --dry-run 
 
# если все успешно, то убираем  --dry-run и выполняем еще раз!

Если все успешно, то убираем –dry-run и выполняем еще раз!

Шаблоны файлов конфига nginx

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###;
  }
}
wiki/freebsd/certbot.1770298395.txt.gz · Последнее изменение: Diman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki