Configurando SSL para porta personalizada no nginx - letsencrypt

Configurando SSL para porta personalizada no nginx - letsencrypt

Estou tentando ativar o SSL em uma porta personalizada(não 443), executando uma página da web. Procurando por aí, não consegui encontrar muitas informações que ajudassem.

O servidor possui portas inalteráveis, externas: 26143, internas: 80.

Para entrar no servidor (sem SSL) você digitaria example.com:26143, e o sistema veria isso como uma conexão com a porta 80.

Como eu configuraria um certificado (permite criptografar) para habilitar SSL nesta porta?


Pelos testes, parece que tudo o que eu faço só acessa o servidor na porta 80, mesmo que eu configure para 26143

aqui está a configuração habilitada para sites nginx:

server {
    listen 80;
    listen [::]:80;

    root /root/html;

    index index.php;
    server_name _;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
    
        # With php-fpm (or other unix sockets):
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }

    location /.well-known {
        root /var/www/ssl/example.com/;
    }
}

Os comandos que tentei são:

certbot --nginx -d example.com:26143
certbot certonly --standalone --preferred-challanges http -d example.com:26143
certbot certonly --standalone --preferred-challenges http -d example.com
certbot certonly --standalone --preferred-challenges http --http-01-port 26143 -d example.com
certbot certonly --nginx --preferred-challenges http --http-01-port 26143 -d example.com
certbot certonly --noninteractive --agree-tos --cert-name slickstack -d example.com -m [email protected] --webroot -w /root/html
certbot certonly --noninteractive --agree-tos --cert-name slickstack -d example.com:26143 -m [email protected] --webroot -w /root/html
certbot certonly --noninteractive --agree-tos --cert-name slickstack -d example.com --http-01-port 26143 -m [email protected] --webroot -w /root/html
certbot certonly --noninteractive --agree-tos --cert-name slickstack -d example.com --preferred-challenges http --http-01-port 26143 -m [email protected] --webroot -w /root/html

Alguns ajustes anteriores e quarto, o erro mais comum que recebi foi este:

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: example.com
   Type:   unauthorized
   Detail: Invalid response from
   https://example.com/.well-known/acme-challenge/ho73up1dR3KU4V37awccOw2T5xsSILWUM365ZnwVEN4
   [159.81.xxx.xxx]: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML
   2.0//EN\">\n<html><head>\n<title>404 Not
   Found</title>\n</head><body>\n<h1>Not Found</h1>\n<p"

   To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A/AAAA record(s) for that domain
   contain(s) the right IP address.

O 404 éNãodo meu sistema, é de exemplo.com:80, em vez de exemplo.com:26143. Além disso, não tenho acesso para modificar os registros DNS.


Na minha experiência, permite criptografar e SSL tem sido um pouco confuso e, junto com os limites de taxa, não consigo solucionar problemas o suficiente para entender.

Eu sei que deveria ser possível, só não sei como e/ou o que estou fazendo de errado.

Qualquer ajuda seria apreciada

Responder1

Vamos criptografar os desafios http-01, requer a porta 80 para trocar dados de validação. O servidor https nunca é usado. A porta 80 é um requisito difícil. Se isso não for uma opção, o DNS é a única outra maneira.

Existem servidores de teste que você deve usar até ter a configuração correta (menos limite de taxa, ou talvez até nenhum limite), primeiro depois disso você muda para os servidores de produção.

Pergunta semelhante:https://community.letsencrypt.org/t/port-4434-instead-of-443/61349

informação relacionada