Fabric: Como criar conexão com senha?

Criado em 21 mai. 2018  ·  4Comentários  ·  Fonte: fabric/fabric

É quando minha chave pública está presente no servidor:

>>> c = Connection(host=ip, user='root', port=22)
>>> c.run('uname -s')
Linux
<Result cmd='uname -s' exited=0>

É quando minha chave pública é removida do servidor:

>>> c = Connection(host=ip, user='root', port=22)
>>> c.run('uname -s')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<decorator-gen-3>", line 2, in run
  File "/usr/local/lib/python2.7/dist-packages/fabric/connection.py", line 23, in opens
    self.open()
  File "/usr/local/lib/python2.7/dist-packages/fabric/connection.py", line 488, in open
    self.client.connect(**kwargs)
  File "/usr/local/lib/python2.7/dist-packages/paramiko/client.py", line 424, in connect
    passphrase,
  File "/usr/local/lib/python2.7/dist-packages/paramiko/client.py", line 691, in _auth
    self._transport.auth_publickey(username, key))
  File "/usr/local/lib/python2.7/dist-packages/paramiko/transport.py", line 1450, in auth_publickey
    return self.auth_handler.wait_for_response(my_event)
  File "/usr/local/lib/python2.7/dist-packages/paramiko/auth_handler.py", line 212, in wait_for_response
    raise e
AttributeError: '_RSAPrivateKey' object has no attribute 'sign'

Como passar senha para o Connection? PS: Não consegui encontrar na nova documentação (2.0).

Comentários muito úteis

Conexão (host = "[email protected]", connect_kwargs = {"senha": "111111"})

Todos 4 comentários

Conexão (host = "[email protected]", connect_kwargs = {"senha": "111111"})

Tenho quase 50 servidores com o mesmo nome de usuário e senha e como posso fazer isso? cada servidor e senha que não consigo digitar. Gostaria de saber como fazer?

Tenho quase 50 servidores com o mesmo nome de usuário e senha e como posso fazer isso? cada servidor e senha que não consigo digitar. Gostaria de saber como fazer?

A melhor maneira é usar as chaves ssh.

Se precisar resolver isso, você pode adicionar ao seu fabfile.py estas linhas antes da tarefa:

env.user = "username"
env.password = "bestpasswordever"

Atenciosamente.

tentei, mas obteve a seguinte exceção: [servidor] Executando tarefa 'tempo de atividade'
[servidor] execute: ps -ef | grep httpd | wc-l
c: \ users \ tmou \ appdata \ local \ programs \ python \ python37-32 \ lib \ site-packages \ paramiko \ ecdsakey.py: 164: CryptographyDeprecationWarning: Suporte para construção insegura de público
números de dados codificados serão removidos em uma versão futura. Use EllipticCurvePublicKey.from_encoded_point
self.ecdsa_curve.curve_class (), pointinfo

Erro fatal: tempo limite esgotado ao tentar conectar-se a c4t18815.itcs.hpe.com (tentativa 1 vez)

Exceção subjacente:
tempo esgotado

Abortando.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Grazfather picture Grazfather  ·  4Comentários

bitprophet picture bitprophet  ·  6Comentários

SamuelMarks picture SamuelMarks  ·  3Comentários

yuvadm picture yuvadm  ·  5Comentários

jamesob picture jamesob  ·  3Comentários