403 Ошибка при обновлении Let's Encrypt Certbot с использованием Django и Apache. У меня есть 6 дней на продлениеApache

Ответить Пред. темаСлед. тема
Anonymous
 403 Ошибка при обновлении Let's Encrypt Certbot с использованием Django и Apache. У меня есть 6 дней на продление

Сообщение Anonymous »

При запуске команды обновления certbot я сначала меняю разрешения своего брандмауэра, чтобы разрешить соединения через порт 80, перевожу Cloudflare в режим разработки, а затем запускаю команду обновления. Однако на этот раз я получил ошибку 403 Forbidden при попытке получить доступ к URL-адресу example.com/.well-known/acme-challenge/funnylettersandstuff. Я не помню, чтобы certbot нуждался в этом URL-адресе, но я делаю это только один раз в год только для одного из моих веб-сайтов, потому что по какой-то причине я никогда не получал эту конфигурацию для автоматического продления. Итак, я сейчас пытаюсь выяснить, что вызывает эту ошибку. Я просмотрел файл конфигурации своего виртуального хоста и не вижу причин, по которым это могло произойти. У меня также включен modsecurity, но я сомневаюсь, что проблема в этом, поскольку я не могу найти связанных ошибок в журналах modsecurity. Нужно ли мне что-то делать с Django, чтобы все заработало?

Код: Выделить всё

Certbot failed to authenticate some domains (authenticator: apache). The Certificate Authority reported these problems:
Domain: example.com
Type:   unauthorized
Detail: During secondary validation: 2a06:98c1:3120::1: Invalid response from http:// example.com/.well-known/acme-challenge/funkylettersandnumbers: 403

Код: Выделить всё

sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -t nat -F
sudo iptables -t mangle -F
sudo iptables -F
sudo iptables -X
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 969 -j ACCEPT
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -j DROP
sudo iptables -A FORWARD -j DROP
sudo ip6tables -P INPUT ACCEPT
sudo ip6tables -P FORWARD ACCEPT
sudo ip6tables -P OUTPUT ACCEPT
sudo ip6tables -t nat -F
sudo ip6tables -t mangle -F
sudo ip6tables -F
sudo ip6tables -X
sudo ip6tables -A INPUT -i lo -j ACCEPT
sudo ip6tables -A OUTPUT -o lo -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 969 -j ACCEPT
sudo ip6tables -A INPUT -j DROP
sudo ip6tables -A FORWARD -j DROP

Код: Выделить всё


Deny from all



ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
Alias /static /home/username/example/example/static
Alias /media /home/username/example/example/example/static/example/img

#RewriteEngine on
#RewriteCond %{SERVER_NAME} =example.com [OR]
#RewriteCond %{SERVER_NAME} =www.example.com
#RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]




ServerName example.com
ServerAlias www.example.com
Alias /static /home/username/example/example/static
Alias /media /home/username/example/example/example/static/example/img


Require all granted
AllowOverride All
Options -Indexes -MultiViews +SymLinksIfOwnerMatch


Require all granted
AllowOverride All
Options -Indexes -MultiViews +SymLinksIfOwnerMatch



Require all granted



WSGIDaemonProcess example.com python-home=/home/username/example/example-env python-path=/home/username/example/example
WSGIProcessGroup example.com
WSGIScriptAlias / /home/username/example/example/example/wsgi.py

SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf


Я работал над этим с ChatGPT, и это просто водит меня по кругу. Я пытался предоставить разрешение на этот URL-адрес всеми возможными способами, но меня это очень смущает. ChatGPT сказал, что мне не нужно, чтобы Django управлял этим URL-адресом, поскольку Certbot справится с этим с помощью Apache. Но мне это кажется неправильным. Кажется, мне следует каким-то образом создать этот .well-known/acme-challenge/ в Django, но я не знаю, как заставить Certbot взаимодействовать с ним, чтобы обеспечить задачу.

Подробнее здесь: https://stackoverflow.com/questions/784 ... e-i-have-6
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Apache»