Fabric: ¿Cómo crear una conexión con contraseña?

Creado en 21 may. 2018  ·  4Comentarios  ·  Fuente: fabric/fabric

Esto es cuando mi clave pública está presente en el servidor:

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

Esto es cuando mi clave pública se elimina del 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'

¿Cómo pasar la contraseña a Connection? PD: no pude encontrarlo en la nueva documentación (2.0).

Comentario más útil

Conexión (host = "[email protected]", connect_kwargs = {"contraseña": "111111"})

Todos 4 comentarios

Conexión (host = "[email protected]", connect_kwargs = {"contraseña": "111111"})

Tengo casi 50 servidores con el mismo nombre de usuario y contraseña, ¿cómo puedo hacerlo? todos y cada uno de los servidores y contraseñas que no puedo escribir. Me gustaria saber como hacerlo?

Tengo casi 50 servidores con el mismo nombre de usuario y contraseña, ¿cómo puedo hacerlo? todos y cada uno de los servidores y contraseñas que no puedo escribir. Me gustaria saber como hacerlo?

La mejor forma es utilizar claves ssh.

Si necesita resolver esto, puede agregar a su fabfile.py estas líneas antes de la tarea:

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

Atentamente.

intenté pero obtuve la siguiente excepción: [servidor] Ejecutando la tarea 'uptime'
[servidor] ejecutar: ps -ef | grep httpd | wc-l
c: \ users \ tmou \ appdata \ local \ program \ python \ python37-32 \ lib \ site-packages \ paramiko \ ecdsakey.py: 164: CryptographyDeprecationWarning: Soporte para construcción insegura de público
los números de los datos codificados se eliminarán en una versión futura. Utilice EllipticCurvePublicKey.from_encoded_point
self.ecdsa_curve.curve_class (), pointinfo

Error fatal: se agotó el tiempo de espera para intentar conectarse a c4t18815.itcs.hpe.com (se intentó una vez)

Excepción subyacente:
desconectado

Abortar.

¿Fue útil esta página
0 / 5 - 0 calificaciones