Versão antiga do servidor SSH em execução após a atualização

-1

Nós temos um servidor Ubuntu rodando 16.04, que é usado para um site do cliente. O cliente recentemente fez uma auditoria de segurança e uma das recomendações foi atualizar nossa versão do OpenSSH para pelo menos a versão 7.4, mas o 16.04 vem pré-instalado com o 7.2. Eu tentei apenas fazer uma atualização direta, mas 7.2 é a última versão disponível, então agora estamos tentando instalar o 7.6 manualmente.

Eu baixei e instalei o 7.6 ok, e parece estar funcionando bem:

sshd 
OpenSSH_7.6p1, OpenSSL 1.0.2g  1 Mar 2016

No entanto, ao se conectar remotamente ou até mesmo executar apenas ssh -v localhost , ele se conecta usando o antigo 7.2:

root@server-new:~# ssh -v localhost
...
debug1: Local version string SSH-2.0-OpenSSH_7.6
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.2p2 
Ubuntu-4ubuntu2.2
debug1: match: OpenSSH_7.2p2 Ubuntu-4ubuntu2.2 pat OpenSSH* compat 0x04000000
...

Este é basicamente o processo pelo qual passei, exceto pelo pacote 7.6: link

O que eu notei é que o diretório de instalação é diferente agora, era /usr/sbin/ssh , mas agora é /usr/local/sbin/ssh

root@server-new:~# which sshd
/usr/local/sbin/sshd
root@server-new:~# which ssh
/usr/local/bin/ssh

Eu atualizei os arquivos /etc/init.d/ssh e /etc/init/ssh.conf para usar o novo caminho, mas mesmo depois de um reinício não parece fazer muita diferença.

O que estamos fazendo de errado? Eu suponho que só precisamos especificar para usar a instalação do SSH na inicialização, mas não consigo ver como.

Encontrei vários outros tópicos, mas nada parece ajudar, por exemplo

link

Atualize o OpenSSH Server em 12.04?

link

Obrigado

    
por Onfire 20.10.2017 / 04:14

1 resposta

2

Esta é a clássica armadilha lógica I-want-LTS-mas-não-quero-LTS.

Uma finalidade de um LTS do Ubuntu é fornecer estabilidade . O Ubuntu faz isso não incrementando as versões do software. Quando você decide usar um LTS, você está se trancando nessas versões sem alterações por dois anos.

(Se não é isso que você quer, então não use um LTS.)

MAS há uma pequena exceção: atualizações de segurança. A equipe de segurança do Ubuntu envia atualizações de segurança sem bater na próxima versão do upstream (o que violaria o LTS, é claro). Em vez disso, eles corrigem o código-fonte.

Assim, quando uma vulnerabilidade no OpenSSH 7.2 é descoberta, duas coisas acontecem:

  1. O site do OpenSSH anuncia que todos devem atualizar imediatamente para o novo OpenSSH 7.3

  2. No entanto, o Ubuntu Security Team envia o OpenSSH 7.2p2-4ubuntu2.2 para você.

De uma perspectiva de segurança, eles são idênticos - todos as mesmas vulnerabilidades são fechadas em ambos. Seu auditor de segurança simplesmente não percebe isso.

Você tem três opções:

  1. Fique com o LTS : Você pode perceber que o auditor está apenas mal informado, fazer uma pesquisa na equipe de segurança do Ubuntu e, no final, não fazer nada ... porque nenhuma ação adicional de segurança é realmente necessário.

  2. Siga o Auditor : Você pode pular do LTS para os lançamentos normais de 6 meses do Ubuntu. Isso pode significar muito trabalho extra a cada seis meses se um upgrade de lançamento alterar seu fluxo de trabalho ou sistemas de produção.

  3. Construa um Frankensystem : é o pior dos dois mundos, mais arriscado e mais difícil de manter. Você pode tentar instalar versões mais novas do OpenSSH de PPAs ou versões mais recentes do Ubuntu em seu LTS antigo. Pode quebrar seu sistema, talvez não. Pode interromper futuras atualizações e atualizações de segurança, talvez não.

por user535733 20.10.2017 / 04:49