使用Python的paramiko模块代码端为Linux添加系统用户并设置密码

来源:互联网 发布:linux 系统文件夹 编辑:程序博客网 时间:2024/05/29 10:51
#!/usr/bin/env python
# -*- coding: utf-8 -*-


' a test module '


__author__ = 'Michael Du'


import sys
import socket
import paramiko


host = 'your server ip'
port = 22


if __name__ == '__main__':
    print 'connect...'
    ssh = paramiko.SSHClient()
    ssh.load_system_host_keys()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    try:
        ssh.connect(hostname=host, port=port, username='root', password='123456')
    except paramiko.AuthenticationException:
        print 'Auth Failed!'
        sys.exit(1)
    except socket.error:
        print 'Server is unreachable!'
        sys.exit(2)
    else:
        stdin, stdout, stderr = ssh.exec_command('uptime')
        print stdout.readlines()


    # 创建用户user并设置密码为123456
    ssh.exec_command('useradd -p `openssl passwd -1 -salt "some" 123456` user')


    try:
        # 用刚刚新建的用户user连接服务器
        ssh.connect(hostname=host, port=port, username='user', password='123456')
    except paramiko.AuthenticationException:
        print 'Auth Failed!'
        sys.exit(1)
    except socket.error:
        print 'Server is unreachable!'
        sys.exit(2)
    else:
        print 'succeed...'
        stdin, stdout, stderr = ssh.exec_command('free;df -h')
        print stdout.read()
        ssh.close()


    
    
    
0 0