Fabric: パスワードで接続を作成するにはどうすればよいですか?

作成日 2018年05月21日  ·  4コメント  ·  ソース: fabric/fabric

これは、私の公開鍵がサーバーに存在する場合です。

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

これは、私の公開鍵がサーバーから削除されたときです。

>>> 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'

Connectionにパスワードを渡す方法は? PS:新しいドキュメント(2.0)では見つかりませんでした。

最も参考になるコメント

Connection(host = "[email protected]"、connect_kwargs = {"password": "111111"})

全てのコメント4件

Connection(host = "[email protected]"、connect_kwargs = {"password": "111111"})

同じユーザー名とパスワードを持つサーバーが50台近くありますが、どうすればよいですか? 私が入力できないすべてのサーバーとパスワード。 やり方を知りたいのですが?

同じユーザー名とパスワードを持つサーバーが50台近くありますが、どうすればよいですか? 私が入力できないすべてのサーバーとパスワード。 やり方を知りたいのですが?

最良の方法は、sshキーを使用することです。

これを解決する必要がある場合は、タスクの前にfabfile.pyに次の行を追加できます。

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

よろしくお願いします。

試行しましたが、次の例外が発生しました:[サーバー]タスク 'uptime'を実行しています
[サーバー]実行:ps -ef | grep httpd | wc-l
c:\ users \ tmou \ appdata \ local \ programs \ python \ python37-32 \ lib \ site-packages \ paramiko \ ecdsakey.py:164:CryptographyDeprecationWarning:パブリックの安全でない構築のサポート
エンコードされたデータの数値は、将来のバージョンで削除される予定です。 EllipticCurvePublicKey.from_encoded_pointを使用してください
self.ecdsa_curve.curve_class()、pointinfo

致命的なエラー:c4t18815.itcs.hpe.comに接続しようとしてタイムアウトしました(1回試行しました)

根本的な例外:
タイムアウトしました

中絶。

このページは役に立ちましたか?
0 / 5 - 0 評価