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 / computer / Perguntas / 1658654
Accepted
c_anirudh
c_anirudh
Asked: 2021-06-24 22:19:52 +0800 CST2021-06-24 22:19:52 +0800 CST 2021-06-24 22:19:52 +0800 CST

Como funciona a autenticação baseada em chave SFTP? Diferença entre chaves SSH e SFTP

  • 772

Recentemente li em algum lugar que:

As chaves SSH são para criptografia, enquanto as chaves SFTP são para autenticação.

Considere, temos uma máquina cliente Ce um servidor SFTP S. Para estabelecer uma conexão SSH (usando chaves públicas/privadas), o cliente cria o par de chaves PU c e PR c . A chave pública PU c é adicionada ao authorized_keysarquivo no servidor S, e o cliente C usa sua chave privada PR c para estabelecer a conexão.

No entanto, li que para SFTP, o par de chaves é criado no servidor em relação a um usuário e a chave privada é compartilhada com o cliente para que ele autentique a conexão SFTP. Ou seja, o servidor S cria PUs e PRs e a chave privada PRs é fornecida ao cliente C para autenticar sua conexão SFTP. Esse entendimento está correto?

Se sim, entendo que a configuração da conexão SSH ocorre em 3 etapas:

  1. Verificação do servidor pelo cliente (verificação de chave de host).
  2. Geração de uma chave de sessão para criptografar toda a comunicação.
  3. Autenticação do cliente.

Como o cliente autentica sua sessão SFTP (com a chave privada que obteve antes do servidor) na etapa 3?

ssh linux
  • 1 1 respostas
  • 4338 Views

1 respostas

  • Voted
  1. Best Answer
    user1686
    2021-06-24T22:32:43+08:002021-06-24T22:32:43+08:00

    Não existe "autenticação de chave SFTP", nem existe uma "chave SFTP".

    O SFTP sempre usa o SSH padrão como transporte – as diferenças só começam depois que você se autentica com sucesso (o cliente então solicita uma sessão interativa ou uma sessão de subsistema 'sftp'). Em outras palavras, o SFTP funciona exatamente da mesma maneira que o Git-over-SSH ou o Rsync-over-SSH.

    Finalmente, as chaves SSH não são usadas para criptografia; todos eles são usados ​​apenas para autenticação (em ambas as direções). Portanto, a frase que você leu e citou é falsa em todos os sentidos possíveis.

    Existem , no entanto, dois pares de chaves usados ​​para autenticação – um pertencente ao servidor (criado durante a instalação) cuja chave pública é verificada pelo cliente e outro pertencente ao cliente, cuja chave pública é verificada pelo servidor.

    O processo geral para SFTP e SSH interativo é:

    1. Troca de chave de sessão: O cliente e o servidor usam (geralmente) Diffie-Hellman para negociar as chaves de criptografia simétricas.
    2. Verificação da chave do host: o servidor se autentica usando sua chave privada para assinar alguns dados, que o cliente verifica em relação ao seu arquivo known_hosts. (Os dados assinados incluem a chave de sessão negociada anteriormente e outros parâmetros, evitando ataques MitM.)
    3. Autenticação do usuário: o cliente se autentica usando sua chave privada para assinar alguns dados, que o servidor verifica em seu arquivo authorized_keys. (Nesta fase, os dados são apenas um desafio aleatório.)
    4. Configuração da sessão: O cliente abre vários canais para interagir com o servidor (como um canal de "encaminhamento de agente", um canal de "encaminhamento TCP", um canal de "sessão de shell interativa", um canal de "comando de shell não interativo" ou um canal de canal "subsistema sftp").

    O cliente pode até abrir várias sessões na mesma conexão - clientes que suportam multiplexação, como OpenSSH ou Tunnelier, permitirão que você autentique apenas uma vez e, em seguida, execute vários shells interativos e/ou transferências SFTP na mesma conexão.

    (Além disso, é muito provável que eu esteja misturando a ordem relativa de 'sessões' SSH versus 'canais', mas pelo menos você tem uma ideia aproximada.)

    Observe que o cliente na etapa 3 pode se autenticar de outras maneiras (como Kerberos ou uma senha simples) em vez de precisar usar um par de chaves. Isso ainda é exatamente o mesmo para SFTP e SSH interativo.

    • 8

relate perguntas

  • Exigir autenticação LDAP *e* autenticação ssh

  • Carregar chave “ec256.pem”: formato inválido é lançado ao tentar gerar chave pública a partir de chave privada

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

  • Por que chown 600 id_rsa corrige problemas de permissões?

Sidebar

Stats

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

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 Por que uma conexão de Internet gigabit/s via cabo (coaxial) não oferece velocidades simétricas como fibra? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

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