nut (UPS) e certificados SSL

4

Hoje instalei nut no meu servidor Ubuntu (Ubuntu 14.04 LTS).

$ uname -a
Linux boson 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

O no-break está conectado a outro servidor (chamado de nêutron), então eu uso nut-client para manter as guias no estado do no-break.

Quando faço sudo upsc [email protected] , obtenho:

Init SSL without certificate database
battery.charge: 15
battery.charge.low: 10
battery.charge.warning: 50
battery.date: not set
battery.mfr.date: 2012/11/27
:

A primeira linha da saída diz respeito a mim. Eu não vi isso em outras instalações de nut em servidores baseados em Debian.

O que posso fazer para me livrar dessa linha?

EDIT: Este "Init SSL sem banco de dados de certificados" é extremamente irritante porque não faz parte da saída de upsc e, portanto, não posso grep it out.

EDIT (2): Para esclarecer, o servidor (Synology) (que fala diretamente com o UPS) não está configurado com SSL ou certificados . Outros clientes (Debian / Raspbian) na rede não possuem o problema acima. Nenhum certificado SSL está instalado (até onde eu posso descobrir) .

find / |grep cert_db no servidor ou nos clientes não produz resultados.

    
por Mausy5043 18.05.2014 / 12:40

3 respostas

5

Seu problema é devido ao novo backend do NSS, que foi adicionado em 2.7.1 ( Mudanças de 2.6.5 para 2.7.1 . O cliente tenta primeiro entrar em contato com o tcp / 3943 com um comando STARTTLS e obtém ERR FEATURE-NOT-CONFIGURED a partir do upsd, então ele mostra esse aviso.

A justificativa para essa mudança é que você está transmitindo senhas em texto sem formatação e os desenvolvedores adicionaram suporte a certificado SSL para evitar isso. O cliente está sendo barulhento, afinal.

A mensagem de erro é na verdade do cliente, mas você não pode excluí-la com um grep porque está vindo da saída de erro (stderr).

A maneira mais fácil de resolver seu problema é canalizá-lo corretamente:

upsc [email protected] 2>&1 | grep -v '^Init SSL'

ou se você estiver usando apenas uma parte da saída para, por exemplo, um grafo RRD e você estava recebendo lixo na saída do cron, basta adicionar o 2 > & 1 e será uma linha normal:

upsc [email protected] 2>&1 | grep 'battery.charge:' | awk ...

A maneira não tão fácil de consertar isso é realmente configurar os certificados SSL e o resto das coisas, como descrito em 9. Notas sobre como proteger o NUT | Configurando o SSL | Uso de back-end do NSS .

    
por Ender 27.12.2014 / 01:01
2

Basta fazer um redirecionamento de saída adequado para filtrar a mensagem de aviso:

upsc [email protected] > /dev/stdout 2> /dev/null
    
por lifeofguenter 26.11.2015 / 21:17
1

Você deve sublinhar onde localizar o banco de dados de certificados e também informar o certificado que os clientes usarão e a senha para descriptografar a chave privada associada à sua chave (pública) editando o arquivo upsd.conf:

  1. CERTPATH / usr / local / ups / etc / cert_db
  2. CERTIDENT 'nome do certificado' 'senha do banco de dados'
por user284234 28.05.2014 / 18:00