예제 #1
0
파일: user.py 프로젝트: onyx-api/onyx-api
def pwd_chg(arguments):
    if misc.arg_range(arguments):
        exit(" Error! Usage: onyx-api --userpwd username old_pwd")

    import crypt

    username = arguments[0]
    old_pwd = arguments[1]
    gen_pwd = misc.pass_gen()

    if pwd_chk([username, old_pwd], False) is True:
        new_pwd = crypt.crypt(gen_pwd, crypt.mksalt(crypt.METHOD_SHA512))
        print(gen_pwd)
    else:
        print(False)
        return False
예제 #2
0
파일: user.py 프로젝트: onyx-api/onyx-api
def add(username=misc.user_gen(), password=misc.pass_gen()):
    i = 1
    code = 9
    while code == 9:
        code = misc.cmd(["useradd", username, "-p", password, "-s", "/sbin/nologin", "-md", "/home/" + username])

        if code == 0:
            misc.cmd(["chown", "750", "-Rf", "/home/" + username])
            misc.cmd(["gpasswd", "-a", "http", username])
            exit(" Successfully added user: %s with password: %s" % (username, password))
        elif code == 9:
            if i >= 100:
                exit(" --useradd has timed-out after 100 attempts to generate a username.")
            i += 1
        elif code == 12:
            exit(" Couldn't create user's home directory.")
        else:
            exit(" --useradd returned error code: " + str(code))