Onde um arquivo-chave SSH deve ser armazenado para estar em conformidade com a FHS?

4

Eu tenho lido a especificação da FHS no link para descobrir onde um (particular ) O arquivo-chave SSH deve ser armazenado para ser usado em um painel de administração do VPS no qual estou trabalhando atualmente. Este arquivo-chave deve estar disponível apenas para o servidor principal (aquele em que é colocado) e será usado para encapsular a comunicação libvirt através do SSH.

Pelo que entendi, isso significa que o arquivo de chaves deve ser armazenado em um subdiretório em /etc , pois é estático e específico do host. Está correto?

    
por Sven Slootweg 17.04.2012 / 00:33

3 respostas

1

O sistema em que estou usa /etc/ssl/certs para certificados e /etc/ssl/private para chaves. A proteção no diretório /etc/ssl/private é 710. A raiz possui o diretório e o grupo só pode acessar as chaves se souber seu nome. O uso cuidadoso de grupos e permissões pode fornecer melhor acesso granular às chaves por usuários não-root.

EDIT: Como @UtahJarhead apontou, o SSH não é SSL (TLS). O SSH normalmente não apresenta problemas quanto à localização das chaves, pois elas são colocadas pelas ferramentas. Ambos os métodos podem ser usados para proteger o acesso. O SSL / TLS usa certificados assinados pela CA (Certficate Authority) armazenados conforme especificado acima.

O SSH usa certificados não assinados. As chaves do servidor (host) estão armazenadas em / etc / ssh e a chave tem permissão 600 permitindo apenas acesso de leitura raiz. Estes são gerados e instalados quando o daemon é instalado. As chaves de cliente / usuário são armazenadas em ~ / ssh (também conhecido como $ HOME / ssh) e todas as ferramentas padrão as colocarão de acordo. Quando uma chave pública é copiada para acesso sem senha, ela também é armazenada em ~ / ssh para o usuário de destino no sistema de destino.

    
por 17.04.2012 / 00:56
1

IMHO :

/etc diria onde encontrar a chave.

/usr/local ou /var tree pode ser a melhor abordagem ou ~/.ssh nos usuários correspondentes.

    
por 17.04.2012 / 00:49
1

uma chave ssh privada pode não ser específica do host. Um único par de chaves ssh pode ser usado para conectar um usuário a um número ilimitado de hosts. As chaves ssh precisam poder ser referenciadas por login. Em sshd_config existe um AuthorizedKeysFile que define a localização de onde as chaves privadas são armazenadas. Se você estiver interessado em mantê-lo em /etc , isso é viável, mas não é "configuração do sistema específica do host", de acordo com as diretrizes da FHS. Parece que cabe melhor na localização padrão em /home/${USER}/.ssh/authorized_keys , uma vez que deve ser exclusivo para cada usuário.

    
por 17.04.2012 / 05:09

Tags