def main(args):
    if len(args) < 3:
        print('Usage: pki_priv_key.py <device> <devuser> <devpass>')
        return

    try:
        host=args[0]
        username=args[1]
        password=args[2]
        
        dev = Device(host=host,username=username,password=password)
        dev.open()
        with PKI(dev) as pki:
            rsp = pki.get_priv_keys()
            print(rsp)
            #pki.cancel_priv_key_gen()
            pki.gen_priv_key(key_id="DEVKEY",key_size="2048")
            done = False
            while not done:
                status = pki.get_priv_key_gen_status()
                print(status)
                state = status['data']['pki']['private-keys']['generate-status']['state']
                if state in ['inactive', 'complete', 'cancelled', 'failed']:
                  done = True
                else:
                  time.sleep(5)
            rsp = pki.get_priv_keys()
            print(rsp)
            pki.del_priv_key(key_id="DEVKEY")
            rsp = pki.get_priv_keys()
            print(rsp)
    except ConnectError as err:
        print ("Cannot connect to device: {0}".format(err))
        return
def main(args):
    if len(args) < 4:
        print(
            'Usage: delete_cell_firmware.py <device> <devuser> <devpass> <carrier>'
        )
        return

    try:
        host = args[0]
        username = args[1]
        password = args[2]
        carrier = args[3]

        dev = Device(host=host, username=username, password=password)
        dev.open()
        with CellFirmware(dev) as fw:
            rsp = fw.get_versions(ifname='Cell')
            #print(json.dumps(rsp))
            ver = get_carrier_version(rsp, carrier)
            print("CURRENT VERSION: {}".format(json.dumps(ver)))
            id = ver['id']
            fw.delete(ifname='Cell', id=id)
            #fw.restart(ifname='Cell', id=id)
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
def main(host, user, passwd):
    try:
        dev = Device(host=host,username=user,password=passwd)
        dev.open()
        with Config(dev) as cm:
            out = cm.get(format='json')
            print(out)
    except ConnectError as err:
        print ("Cannot connect to device: {0}".format(err))
        return
Exemple #4
0
def main(host, user, passwd):
    try:
        dev = Device(host=host, username=user, password=passwd)
        dev.open()
        with Config(dev) as cm:
            rsp = cm.load(content=config)
            print(rsp)
            rsp = cm.validate()
            print(rsp)
            rsp = cm.commit()
            print(rsp)
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
def main(host, user, passwd):
    try:
        dev = Device(host=host, username=user, password=passwd)
        dev.open()
        with Config(dev) as cm:
            rsp = cm.load(template=ntp_template,
                          template_vars={'ntp_server': '1.1.1.1'})
            print(rsp)
            rsp = cm.validate()
            print(rsp)
            rsp = cm.commit()
            print(rsp)
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
def main(args):
    if len(args) < 7:
        print('Usage: upgrade_cell_firmware.py <device> <devuser> <devpass> <sftphost> <sftpuser> <sftppass> <sftpfilepath>')
        return

    try:
        host=args[0]
        username=args[1]
        password=args[2]
        sftp_host=args[3]
        sftp_username=args[4]
        sftp_password=args[5]
        sftp_filepath=args[6]
        
        dev = Device(host=host,username=username,password=password)
        dev.open()
        with CellFirmware(dev) as fw:
            rsp = fw.get_versions(ifname='Cell')
            #print(json.dumps(rsp))
            carrier = 'VERIZON'
            print("CURRENT VERSION: {}".format(json.dumps(get_carrier_version(rsp, carrier))))
            fw.cancel(ifname='Cell')
            url = 'sftp://{}{}'.format(sftp_host,sftp_filepath)
            fw.load(ifname='Cell', url=url, username=sftp_username, password=sftp_password)
            done = False
            while not done:
                try:
                    rsp = fw.status(ifname='Cell')
                    status = rsp['data']['interfaces-state']['interface']['firmware']['reprogram-status']
                    print("CURRENT STATUS: {}".format(json.dumps(status)))
                    state = status['state']
                    if state in ['complete', 'cancelled', 'failed']:
                        print("OPERATION STATE: {}".format(state))
                        rsp = fw.get_versions(ifname='Cell')
                        print("CURRENT VERSION: {}".format(json.dumps(get_carrier_version(rsp, carrier))))
                        done = True
                    else:
                        time.sleep(5)
                except TimeoutExpiredError as err:
                    print("request timedout")
                    time.sleep(5)
    except ConnectError as err:
        print ("Cannot connect to device: {0}".format(err))
        return
Exemple #7
0
def main(args):
    if len(args) < 7:
        print(
            'Usage: pki_fw.py <device> <devuser> <devpass> <sftphost> <sftpuser> <sftppass> <sftpfilepath>'
        )
        return

    try:
        host = args[0]
        username = args[1]
        password = args[2]
        sftp_host = args[3]
        sftp_username = args[4]
        sftp_password = args[5]
        sftp_filepath = args[6]

        dev = Device(host=host, username=username, password=password)
        dev.open()
        with PKI(dev) as pki:
            rsp = pki.get_fw_certs()
            print(rsp)
            url = 'sftp://{}{}'.format(sftp_host, sftp_filepath)
            pki.import_fw_cert(cert_id="GEMDS-FW",
                               url=url,
                               username=sftp_username,
                               password=sftp_password)
            done = False
            while not done:
                status = pki.get_fw_cert_import_status()
                print(status)
                state = status['data']['pki']['firmware-certs'][
                    'import-status']['state']
                if state in ['inactive', 'complete', 'cancelled', 'failed']:
                    done = True
                else:
                    time.sleep(5)
            rsp = pki.get_fw_certs()
            print(rsp)
            #pki.del_fw_cert(cert_id="GEMDS-FW")
            #rsp = pki.get_fw_certs()
            #print(rsp)
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
def main(args):
    if len(args) < 7:
        print(
            'Usage: upgrade_firmware.py <device> <devuser> <devpass> <sftphost> <sftpuser> <sftppass> <sftpfilepath>'
        )
        return

    try:
        host = args[0]
        username = args[1]
        password = args[2]
        sftp_host = args[3]
        sftp_username = args[4]
        sftp_password = args[5]
        sftp_filepath = args[6]

        dev = Device(host=host, username=username, password=password)
        dev.open()
        with Firmware(dev) as fw:
            rsp = fw.get_versions()
            print(rsp)
            fw.cancel()
            url = 'sftp://{}{}'.format(sftp_host, sftp_filepath)
            fw.load(url=url, username=sftp_username, password=sftp_password)
            done = False
            while not done:
                status = fw.status()
                print(status)
                state = status['data']['system']['firmware'][
                    'reprogram-status']['state']
                if state in ['complete', 'cancelled', 'failed']:
                    done = True
                else:
                    time.sleep(5)
        with System(dev) as sys:
            #sys.restart()
            #sys.restart(location=1)
            sys.restart(type='inactive')
            #sys.restart(version='6.7.8-M1')
            #sys.restart(version='6.1.2')
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
Exemple #9
0
def main(host, user, passwd):
    try:
        dev = Device(host=host, username=user, password=passwd)
        dev.open()
        with Status(dev) as st:
            uptime = """/system/uptime/seconds"""

            # JSON
            out = st.get(filter=('xpath', uptime), format='json')
            print(out)

            # ODICT
            #out = st.get(filter=('xpath',uptime),format='odict')
            #print(out)

            # XML
            #out = st.get(filter=('xpath',uptime))
            #print(out)

    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
Exemple #10
0
def main(host, user, passwd, ifname):
    try:
        dev = Device(host=host, username=user, password=passwd)
        dev.open()
        with Status(dev) as st:
            ipv4 = """/interfaces-state/interface[name='{}']/ipv4/address""".format(
                ifname)

            # JSON
            out = st.get(filter=('xpath', ipv4), format='json')
            print(out)

            # ODICT
            #out = st.get(filter=('xpath',uptime),format='odict')
            #print(out)

            # XML
            #out = st.get(filter=('xpath',uptime))
            #print(out)

    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return
Exemple #11
0
def main(args):
    if len(args) < 3:
        print('Usage: pki_scep.py <device> <devuser> <devpass>')
        return

    try:
        host = args[0]
        username = args[1]
        password = args[2]

        dev = Device(host=host, username=username, password=password)
        dev.open()
        with Config(dev) as cm:
            # Configure certificate server
            print("CONFIGURING CERT SERVER...")
            cfg = cert_server_config.format(
                "CERT-SERVER", "10.15.60.39/certsrv/mscep/mscep.dll", "md5",
                "des_cbc")
            rsp = cm.load(content=cfg)
            print(rsp)
            rsp = cm.validate()
            print(rsp)
            # Configure CA server
            print("CONFIGURING CA CERT SERVER...")
            cfg = ca_server_config.format("CA-SERVER",
                                          "5E2F7B923EDA99A7ADB814A0E3FFF657")
            rsp = cm.load(content=cfg)
            print(rsp)
            rsp = cm.validate()
            print(rsp)
            # Configure Certificate Info
            print("CONFIGURING CERT INFO...")
            cfg = cert_info_config.format("CERT-INFO", "US", "NY", "Rochester",
                                          "GEMDS", "ENGG", "DEVICE-1",
                                          "*****@*****.**")
            rsp = cm.load(content=cfg)
            print(rsp)
            rsp = cm.validate()
            print(rsp)
            # Commit configuration
            print("COMMITING CONFIG...")
            rsp = cm.commit()
            print(rsp)
        with PKI(dev) as pki:
            rsp = pki.get_priv_keys()
            print(rsp)
            # Generate private key
            print("GENERATING PRIVATE KEY...")
            #pki.cancel_priv_key_gen()
            pki.gen_priv_key(key_id="DEVKEY", key_size="2048")
            done = False
            while not done:
                status = pki.get_priv_key_gen_status()
                print(status)
                state = status['data']['pki']['private-keys'][
                    'generate-status']['state']
                if state in ['inactive', 'complete', 'cancelled', 'failed']:
                    done = True
                else:
                    time.sleep(5)
            rsp = pki.get_priv_keys()
            print(rsp)
            rsp = pki.get_ca_certs()
            print(rsp)
            print("IMPORT CA CERTS...")
            pki.import_ca_cert_scep(cert_id="CACERT",
                                    cert_server_id="CERT-SERVER",
                                    ca_server_id="CA-SERVER")
            done = False
            while not done:
                status = pki.get_ca_cert_import_status()
                print(status)
                state = status['data']['pki']['ca-certs']['import-status'][
                    'state']
                if state in ['inactive', 'complete', 'cancelled', 'failed']:
                    done = True
                else:
                    time.sleep(5)
            rsp = pki.get_ca_certs()
            print(rsp)
            #pki.del_ca_cert(cert_id="CACERT")
            #rsp = pki.get_ca_certs()
            #print(rsp)

            rsp = pki.get_client_certs()
            print(rsp)
            print("IMPORT CLIENT CERTS...")
            pki.import_client_cert_scep(cert_id="DEVCERT",
                                        cert_server_id="CERT-SERVER",
                                        ca_server_id="CA-SERVER",
                                        cert_info_id="CERT-INFO",
                                        cacert_id="CACERT",
                                        key_id="DEVKEY",
                                        otp="4B7AC2AFC101104F06C88A174C88CD52")
            done = False
            while not done:
                status = pki.get_client_cert_import_status()
                print(status)
                state = status['data']['pki']['client-certs']['import-status'][
                    'state']
                if state in ['inactive', 'complete', 'cancelled', 'failed']:
                    done = True
                else:
                    time.sleep(5)
            rsp = pki.get_client_certs()
            print(rsp)
            #pki.del_ca_cert(cert_id="CACERT")
            #rsp = pki.get_ca_certs()
            #print(rsp)
    except ConnectError as err:
        print("Cannot connect to device: {0}".format(err))
        return