
Estou tentando configurar um arquivo em lote para uma transação automatizada, mas meus testes falharam até agora.
Tenho a chave pública do servidor onde é feita a conexão. Ele foi salvo como um arquivo .pkk e importado para o WinSCP.
Eu registrei os resultados em um arquivo de texto e é o seguinte:
Username: 4m4nseth (Password: No, Key File: No)
O arquivo-chave está lá, mas o WinSCP, por algum motivo, não o detecta.
Se estiver executando como um arquivo em lote, recebo a seguinte mensagem:
Nome da sessão: 4m4nseth@Endereço IP Nome do host: Endereço IP (Porta: 22) Nome de usuário: 4m4nseth (Senha: Não, Arquivo chave: Não) Túnel: Sem Protocolo de Transferência: SFTP (SCP) Tipo de ping: -, Intervalo de ping: 30 seg; Tempo limite: 15 seg.
Mas o seguinte se estiver rodando no WinSCP
Nome da sessão: 4m4nseth@ipaddress Nome do host: ipaddress (Porta: 22) Nome de usuário: 4m4nseth (Senha: Não, Arquivo chave: Sim) Túnel: Sem protocolo de transferência: SFTP (SCP)
Como você pode ver, o arquivo-chave é salvo, mas quando executado como comando em lote, ele não é reconhecido.
Responder1
Acredito que você tenha a chave pública e a chave privada ao contrário.
Se você estiver usando o WinSCP para copiar informações para (ou de) um servidor, será necessário gerar uma chave pública/privada na caixa que executa o WinSCP, configurar o WinSCP com a chave privada e colocar a chave pública no local apropriado no servidor ( No Linux em ~username/.ssh/authorized_keys
Embora isso pareça contra-intuitivo para mim no início (há muito tempo!!), na verdade faz todo o sentido se você trabalhar com a lógica. Pensar nisso da seguinte maneira pode ajudar -
- Uma chave privada deve ser privada, ou seja, apenas algo que você deve saber.
- Se o servidor pertencer a outra pessoa, você não vai querer dar a eles algo que só
você deveria saber, então não quer dar a eles sua chave privada. - Por outro lado, se você fornecer a eles sua chave pública e o sistema estiver comprometido e outra pessoa adicionar sua chave pública à configuração deles, isso significa apenas que você pode acessar o sistema deles, você não perdeu nada. Se, por outro lado, você tivesse que fornecer sua chave privada, você perderia o controle sobre ela.