AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-78565

Shadur's questions

Martin Hope
Shadur-don't-feed-the-AI
Asked: 2025-01-22 19:07:16 +0800 CST

haproxy SSL não funciona, alega 'nenhum algoritmo de assinatura adequado'

  • 5

Estou configurando o haproxy para atuar como intermediário entre a internet e vários serviços executados em um cluster k8s isolado.

Já testei com sucesso a conexão com o backend via http simples, mas agora estou tentando manipular o componente SSL lá também e, por algum motivo, não importa o que eu tente, estou recebendo o seguinte nos logs:

Jan 22 11:10:22 jake haproxy[170526]: 95.214.55.185:34832 [22/Jan/2025:11:10:21.968] xanadu-ingress-front/3: SSL handshake failure (error:0A000076:SSL routines::no suitable signature algorithm)

Tentar solucionar problemas via openssl s_clientme dá o seguinte (endereços IP e nomes DNS alterados para proteger o culpado):

shadur@luminosity:~$ openssl s_client --connect teapot.example.com:443 
Connecting to 1.2.3.4 CONNECTED(00000003)
40E7B2BBBA7F0000:error:0A000410:SSL routines:ssl3_read_bytes:ssl/tls alert handshake failure:../ssl/record/rec_layer_s3.c:907:SSL alert number 40
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 335 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
This TLS version forbids renegotiation.
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)

arquivo de configuração do haproxy abaixo:

global
        log /dev/log    local0
        log /dev/log    local1 notice
        chroot /var/lib/haproxy
        stats socket /run/haproxy/admin.sock mode 660 level admin
        stats timeout 30s
        user haproxy
        group haproxy
        daemon

        # Default SSL material locations
        ca-base /etc/ssl/certs
        crt-base /etc/ssl/private


        # generated 2025-01-22, Mozilla Guideline v5.7, HAProxy 3.1.2, OpenSSL 3.4.0, intermediate config
        # https://ssl-config.mozilla.org/#server=haproxy&version=3.1.2&config=intermediate&openssl=3.4.0&guideline=5.7
        # intermediate configuration
        ssl-default-bind-curves X25519:prime256v1:secp384r1
        ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
        ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
        ssl-default-bind-options prefer-client-ciphers ssl-min-ver TLSv1.2 no-tls-tickets

        ssl-default-server-curves X25519:prime256v1:secp384r1
        ssl-default-server-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
        ssl-default-server-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
        ssl-default-server-options ssl-min-ver TLSv1.2 no-tls-tickets

        # curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam
        ssl-dh-param-file /etc/ssl/private/dhparam


defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  50000
        errorfile 400 /etc/haproxy/errors/400.http
        errorfile 403 /etc/haproxy/errors/403.http
        errorfile 408 /etc/haproxy/errors/408.http
        errorfile 500 /etc/haproxy/errors/500.http
        errorfile 502 /etc/haproxy/errors/502.http
        errorfile 503 /etc/haproxy/errors/503.http
        errorfile 504 /etc/haproxy/errors/504.http

crt-store company
  crt-base /etc/ssl/certs/
  key-base /etc/ssl/private/
  load crt "company.com-full.pem" key "company.nl.key" alias "company"
  load crt "company.net-full.pem" key "company.net.key" alias "company.net"

frontend xanadu-ingress-front
  bind 1.2.3.4:80
  bind 1:2:3:4:5:6:7:8:80 transparent
  bind 1.2.3.4:443 ssl crt-list /etc/ssl/crt-lists/company.list alpn h2,http/1.1
  http-request redirect scheme https unless { ssl_fc }
  default_backend xanadu-ingress-back
  option httplog

backend xanadu-ingress-back
  mode http
  server xanadu 172.16.41.80:80 check

Tenho quase certeza de que estou esquecendo de algo muito simples e óbvio, mas não consigo descobrir o que é. Qualquer ajuda seria apreciada.

ssl
  • 1 respostas
  • 55 Views
Martin Hope
Shadur
Asked: 2018-05-29 23:56:26 +0800 CST

Novo usuário incapaz de ver o banco de dados ao qual eles têm acesso no phppgadmin

  • 1

Eu sou principalmente um usuário de linha de comando do PostgreSQL, mas para outros recentemente tive motivos para configurar um frontend PHPPGAdmin.

No entanto, encontrei um problema - enquanto na linha de comando os usuários não têm problemas para fazer login e se conectar ao banco de dados ao qual deveriam ter acesso, no frontend PHPPGAdmin eles não conseguem ver os bancos de dados que não não possui (mas tem acesso de leitura).

Eu tentei o seguinte:

GRANT CONNECT ON DATABASE example TO otheruser;
GRANT USAGE ON SCHEMA public TO otheruser;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO otheruser;

Como dito antes, ao usar software ou conexão direta de linha de comando, isso é suficiente para permitir que eles se conectem e SELECIONEM a partir do banco de dados; o problema parece estar com PHPPGAdmin.

Quaisquer sugestões sobre o que posso estar ignorando são bem-vindas.

postgresql
  • 1 respostas
  • 437 Views
Martin Hope
Shadur
Asked: 2018-04-20 00:07:59 +0800 CST

Falha ao analisar corretamente os argumentos de barra com php-fpm/apache

  • 1

Recentemente, configurei um novo servidor de hospedagem na web em funcionamento em um sistema Debian Stretch usando Apache 2.4 e PHP7 via proxy_fcgie php-fpm.

Funcionou bem nos estágios de teste, mas o primeiro cliente está usando um site Moodle que faz uso extensivo dos chamados 'argumentos de barra' (IE, solicitações para, digamos, index.php/these/are/parameters/).

Seguindo as instruções no site do moodle tentei configurar AcceptPathInfopara On, e até tentei desabilitar security_limit_extensionsno PHP, mas até agora nada parece estar funcionando.

As configurações relevantes estão coladas abaixo. Tenho certeza de que perdi algo simples em algum lugar , mas fiquei sem ideias para onde procurar.

(Nota: php normal funciona bem; argumentos de barra não. Ao definir cgi.fix_pathinfocomo 0 pedindo https://www.domain.nl/lib/javascript.php/foo/barresultados em "Nenhum arquivo de entrada especificado"; configurá-lo para 1 resulta em "Nenhum arquivo Javascript válido encontrado", o que pelo menos sugere que o script é chamado mas os argumentos não são passados ​​corretamente para o proxy...)

Apache:

<VirtualHost *:443>
    ServerName www.domain.nl
    ServerAlias domain.nl new.domain.nl

    DocumentRoot /home/webclients/www.domain.nl/public_html/
    Alias /cgi-bin/ /home/webclients/www.domain.nl/cgi-bin/
    CustomLog /var/log/apache2/www.domain.nl/access.log combined
    ErrorLog /home/webclients/www.domain.nl/logs/error.log
    TransferLog /home/webclients/www.domain.nl/logs/access.log

    ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/var/run/php-fpm/domain.sock|fcgi://localhost/home/webclients/www.domain.nl/public_html
    SSLOptions +StdEnvVars

    <IfModule mod_suexec.c>
        SuExecUserGroup domain webclients
    </IfModule>

    <Directory /home/webclients/www.domain.nl/public_html/>
        AllowOverride All
        AcceptPathInfo On
        Require all granted
    </Directory>

    SSLEngine on
    #       LogLevel info
    SSLCertificateFile /etc/ssl/certs/www.domain.nl.pem
    SSLCertificateKeyFile /etc/ssl/private/www.domain.nl.key
    SSLCACertificateFile /etc/ssl/intermediate/intermediate-rapidssl-rsacag1.pem
    # Enable HSTS
    Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"



</VirtualHost>
# vim:syntax=apache

arquivo de pool php-fpm:

[domain]

prefix=/

include=/etc/php/7.0/fpm/pool.d/defaults

php_admin_value[error_log] = /home/webclients/www.domain.nl/logs/php-error.log
php_admin_value[cgi.fix_pathinfo] = 0
security.limit_extensions = 
apache-2.4
  • 1 respostas
  • 1108 Views
Martin Hope
Shadur
Asked: 2017-03-29 09:24:11 +0800 CST

systemd: Concede permissão a um usuário sem privilégios para alterar um serviço específico

  • 43

Estou executando um servidor de jogo privado em uma caixa linux sem cabeça. Como não sou idiota, esse servidor está sendo executado como seu próprio usuário sem privilégios, com os direitos de acesso mínimos necessários para baixar atualizações e modificar o banco de dados mundial.

Também criei um arquivo de unidade systemd para iniciar, parar e reiniciar o servidor corretamente quando necessário (para as referidas atualizações, por exemplo).

No entanto, para realmente ligar systemctlou service <game> start/stop/restartainda preciso fazer login como root ou um sudousuário capaz.

Existe uma maneira de dizer ao systemd que, para o <game>serviço, o usuário não privilegiado gamesrvtem permissão para executar os comandos start/stop/restart?

linux
  • 3 respostas
  • 67567 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve