+ Responder ao Tópico



  1. #1

    Padrão Setando senha na utilização do "scp"

    Galera! Boa tarde!

    Estou montando um script para automatizar algumas tarefas e gostaria de uma ajuda e vocês; pois estou tentando utilizar o scp para copiar de um server para outro, porém o mesmo necessita que digite uma senha para eu ter sucesso na finalização da cópia.
    Dúvida:
    --> Vocês sabem se tem jeito e como eu setar a senha na sintaxe do "scp"?, daí facilitaria muito a minha vida.

    Agradeço todas as dicas.
    Abraços.

  2. #2

    Padrão Re: Setando senha na utilização do "scp"

    Você pode exportar um par de chaves (keypair), uma pública e outra privada.
    Você pode gerar as chaves assim:
    Código :
    local$ ssh-keygen -t dsa -f ~/.ssh/key_dsa

    O parâmetro "-t" informa o tipo de criptografia. Neste caso utilizei DSA.
    E o parâmetro "-f" informa onde salvar ambas chaves. Neste caso será no diretório .ssh dentro do HOMEDIR do seu usuário.
    Esse comando pedirá um password, você pode deixá-lo em branco, apenas pressione ENTER.
    Agora vá até o diretório para onde exportou as chaves "cd ~/.ssh". Haverá 2 arquivos, um é a chave pública (key_dsa.pub), e o outro a chave privada (key_dsa)

    Agora você precisa copiar a chave pública para o servidor que você deseja conectar sem password.
    Código :
    local$ scp key_dsa.pub [email]usuario@servidor:~/.ssh/key_dsa.pub[/email]

    Você precisa informar o password desta vez.


    Depois, você precisa adicionar a nova chave pública no arquivo que informa as chaves conhecidas e autorizadas. Pra isto, você precisa logar na máquina que você deseja conectar sem password, via ssh e fazer o seguinte:
    Código :
    remoto$ cd ~/.ssh
    remoto$ cat key_dsa.pub >> authorized_keys2
    remoto$ chmod 640 authorized_keys2
    remoto$ rm key_dsa.pub
    remoto$ exit

    Isto deve funcionar, qualquer dúvida posta aí.
    Abraço.

  3. #3

    Padrão Re: Setando senha na utilização do "scp"

    Ah, esqueci de comentar... Isto fará com que o sshd do servidor não pergunte mais a senha para o usuário da sua máquina. Talvez você não queira isto. O "scp" transfere arquivos via "ssh", portanto assim, o "scp" não pediria mais senha, mas o ssh também não pedirá mais.
    Outra forma de fazer, creio que seja colocando a senha no script. Por exemplo:
    Código :
    echo senha | scp arquivo usuario@servidor:caminho/arquivo

    Acho que funciona também. Mas assim você estará expondo a senha sem criptografia (apesar das permissões do arquivo ou do diretório acima).

  4. #4

    Padrão Re: Setando senha na utilização do "scp"

    ok.. valeu pelas dicas; vou testar as mesmas e posto aqui as novidades.
    obrigado.
    Abraços.

  5. #5

    Padrão Re: Setando senha na utilização do "scp"

    Opa! Boa noite!

    Testei a opção "echo senha | scp arquivo usuario@servidor:caminho/arquivo" mas não funfou, ele continua exigindo que eu digite a senha; alguém tem alguma idéia do que eu posso fazer?

    O que quero fazer:
    Copiar um arquivo ou diretório de um servidor para o outro na rede interna; isto através de script.
    Aceito sugestões e dicas.

    Grato.
    Abraços.