[英]Python hashed password to use in different script?
好吧,我在任何地方都找不到相同的問題。
我需要在不同時間將腳本ssh插入其他設備,為此,我需要存儲密碼。 我不想使用純文本或base64,但是我可以對密碼進行哈希處理,並且這樣做沒有問題。 問題是我不知道如何將哈希作為密碼發送到設備。 它只是發送哈希值,登錄被拒絕。
這是寫入文件的哈希腳本:
import getpass, hashlib, os
pwf = open('hashes.txt', 'w')
password = getpass.getpass()
hashpass = hashlib.sha256(password).hexdigest()
pfw.write(hashpass)
這是我可以將哈希值從文件中拉出的第二個腳本,但它仍然是哈希值。
hashes = open('hashes.txt', 'r')
for pw in hashes:
passwrd = pw.strip()
password = passwrd
一切都很好,但我無法用哈希登錄。。我確定我在這里做的根本是錯誤的。 請告訴我。
我也忽略了其他的ssh代碼,因為我不認為這是相關的。
加密散列的全部要點是,將其還原為原始密碼是不可行的。 如果您需要發送實際的密碼,則哈希對您不起作用; 您需要使用實際的加密算法-但隨后遇到了類似的問題,即如何存儲用於存儲密碼的加密密鑰。
無論哪種方式,都需要一種將數據安全地存儲在本地系統上的方式,而其他未經授權的用戶則無法訪問這些數據。 通常,這是通過使用基於密鑰的ssh身份驗證並將密鑰存儲在其他用戶無法訪問的權限中來完成的。 這實質上跳過了不必要的加密/解密密碼步驟,而只是將加密密鑰用作ssh的身份驗證機制。
請注意,有一些Python庫是為您正在執行的任務而設計的(將其ssh
遠程系統並自動運行命令) fabric
是其中之一。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.