2016-04-08 4 views
1

J'ai un utilitaire python avec lequel j'ai réussi à gérer nos fichiers/etc/smbpasswd et/etc/samba/smbpasswd depuis plus de 12 ans. Il est temps de le mettre à jour avec Python 3!paquet python3 et smbpasswd

J'ai trouvé que la dernière smbpasswd s'installe en Python3, mais ne se charge pas.

Quelle est la meilleure façon de résoudre cela en utilisant la compatibilité smbpasswd? Je ne cherche pas à remplacer le système de travail avec tdbsam!

Répondre

1

Même avec la mise à jour du paquet en 2011, python 3 était sorti depuis quelques années, donc j'ai supposé que c'était du code mort.

Il y a une solution facile, installez passlib avec pip et créer un fichier fichier smbpasswd.py avec le contenu suivant:

import passlib.hash 

def lmhash(s): 
    return passlib.hash.lmhash.encrypt(s).upper() 

def nthash(s): 
    return passlib.hash.nthash.encrypt(s).upper()