A melhor codificação de autenticação atual para SSH2? Alguns só são permitidos / não permitidos? Como saber qual cifra é uma chave existente?

1
  • Eu sou um novato no Linux. Eu planejo geralmente usando o OpenSSH
  • Passei algumas horas & Eu não consigo encontrar a resposta rapidamente
  • Eu li brevemente alguns sobre IETF, no entanto, vou ser honesto o seu caminho muito profundo e amp; Eu me perco no texto
  • Pesquisei este site para os seguintes & não encontrei uma resposta rapidamente: SSH RSA ruim, protocolo openssh 2, autenticação SSH2, entre outros esqueci
  • Eu pesquisei este site , que diz que o SSH2 usa apenas o DSA (como faz este site ). Também diz que o SSH2 usa apenas chaves de hosts; enquanto o SSH1 usa server & chaves de host; que me confunde um pouco
  • Esta página do Ubuntu sugere que o DSA é menos seguro & Sugere usar o RSA; nada é dito sobre o SSH2
  • A man page para sshd_config do openbsd (que links do site do openssh para) sob HostKey diz RSA1 é apenas para SSH1; no entanto RSA, dsa ou ecdsa é para SSH2
  • Acredito que após a montagem desta pergunta, o SSH2 pode ser cunhado especificamente pela SSH Communications Security para sua implementação do Secure Shell Protocol 2. Como observado acima, quando falo de SSH, pretendo usar apenas o OpenSSH

Como saber qual cifra uma chave existente é

Eu tenho uma chave de trabalho que criei com as opções padrão (não inseri nenhum argumento) em 'OpenSSH_5.5p1 Debian-4ubuntu6, OpenSSL 0.9.8o 01 Jun 2010'. Eu posso dizer seu RSA de várias coisas (o nome do arquivo, as primeiras linhas na chave .pub, na chave privada); único lugar que eu posso confirmar a força de bit (eu acho que é chamado) é quando eu criei mostrou o randomart no topo mostrou 2048. Como eu sei se o seu RSA1 ou RSA2, ou regular RSA

Por favor, defina-me como quero a maneira mais segura de fazer ssh:)

    
por gregg 22.02.2013 / 20:53

2 respostas

2

TLDR: Use chaves RSA de 2048 bits.

A menos que você esteja usando um antigo cliente ou servidor SSH, você usará a versão 2 do protocolo.

Embora os algoritmos DSA e RSA sejam comparáveis em termos de força, as chaves DSA só podem ser de 1024 bits quando usadas pelo SSH, enquanto as chaves RSA não são limitadas. Chaves de 1024 bits estão se tornando inseguras com o poder de computação disponível hoje, e assim você quer pelo menos 2048 bits, o que significa RSA. (Também costumava haver problemas de patentes com o RSA que faziam com que o DSA fosse recomendado, mas esse não é mais o caso).

Praticamente todos os servidores aceitarão chaves DSA e RSA. (Algumas chaves específicas estão na lista negra devido a um erro do Debian , mas não há cDIFs não permitidos.) ECDSA é o novo entusiasmo, mas nem todos os servidores o suportam ainda e, portanto, não é amplamente utilizável. Uma vez que isso mude, o ECDSA será provavelmente o caminho a seguir.

Geralmente, você pode informar o tipo de chave pelo nome do arquivo, que geralmente é id_dsa , id_rsa ou id_ecdsa . O comando file também pode inspecionar os contêineres para determinar o tipo:

% file id_rsa
id_rsa: PEM RSA private key

Para determinar o tamanho da chave, você pode usar o comando openssl :

% openssl rsa -in id_rsa -noout -text | head -n1
Enter pass phrase for id_rsa:
Private-Key: (4096 bit)
% openssl dsa -in id_dsa -noout -text | head -n1
read DSA key
Private-Key: (1024 bit)
    
por 22.02.2013 / 21:39
0

A menos que você esteja preocupado em espionar alguém com os recursos da NSA, isso realmente não importa. Sim, alguns algoritmos ou comprimentos de chave têm vulnerabilidades teóricas que podem ser exploradas, mas na prática é muito improvável que sejam explorados contra você a menos que você esteja ocultando dados extremamente valiosos e, em qualquer caso, como "Linux newbie" você está quase certo de ter falhas de segurança muito piores do que isso.

    
por 26.02.2013 / 17:52