freeztp | An Open-Source Zero-Touch Provisioning System for Cisco IOS

 by   PackeTsar Python Version: Current License: GPL-3.0

kandi X-RAY | freeztp Summary

kandi X-RAY | freeztp Summary

freeztp is a Python library. freeztp has no bugs, it has no vulnerabilities, it has a Strong Copyleft License and it has low support. However freeztp build file is not available. You can download it from GitHub.

FreeZTP v1.5.0 adds integration for Microsoft Power Automate via webhooks. Power Automate contains a trigger called "When a HTTP request is received", which generates an Azure webhook. Data sent from FreeZTP is JSON formatted text and includes a ZTP host identifier, message type (status), message text (HTML), generated config text, and a filename. Host ID and Status provide data for Power Automate conditions. Message text provides data to deliver to MS Teams. Config text and filename provide data for SharePoint storage.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              freeztp has a low active ecosystem.
              It has 164 star(s) with 27 fork(s). There are 22 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 11 open issues and 67 have been closed. On average issues are closed in 55 days. There are 1 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of freeztp is current.

            kandi-Quality Quality

              freeztp has 0 bugs and 0 code smells.

            kandi-Security Security

              freeztp has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              freeztp code analysis shows 0 unresolved vulnerabilities.
              There are 1 security hotspots that need review.

            kandi-License License

              freeztp is licensed under the GPL-3.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              freeztp releases are not available. You will need to build from source code and install.
              freeztp has no build file. You will be need to create the build yourself to build the component from source.
              Installation instructions, examples and code snippets are available.
              It has 3944 lines of code, 193 functions and 1 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed freeztp and discovered the below as its top functions. This is intended to give you an instant insight into freeztp implemented functionality, and help decide if they suit your requirements.
            • Main interpreter
            • Concatenate a list
            • Resolve the keystore id to a keystore
            • Return the default keystore ID
            • Setup Spark integration
            • Decode the response
            • Make a GET request
            • Process a message
            • Make a POST request
            • The SNMP query worker
            • Get object identity
            • Send a message
            • Get the destination
            • End the transfer
            • Publish a config file
            • Load the external templates
            • Log data to the logger
            • Return a ztp_dyn_file instance
            • Send DAT packet
            • Load integration objects
            • Setup the configuration
            • Maintain the cache
            • Start the TftpContext server
            • Poll IPCTalker
            • Handle an ACK packet
            • Detect the package manager
            Get all kandi verified functions for this library.

            freeztp Key Features

            No Key Features are available at this moment for freeztp.

            freeztp Examples and Code Snippets

            No Code Snippets are available at this moment for freeztp.

            Community Discussions

            No Community Discussions are available at this moment for freeztp.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install freeztp

            The installation of FreeZTP is quick and easy using the built-in installer. Click the picture on the right to watch a quick 7 minute video on the installation, initial configuration, and first switch deployment with FreeZTP. Make sure you are logged in as root or are able to sudo su to install and operate FreeZTP.
            Install OS with appropriate IP and OS settings and update to latest patches (recommended). Check out the below links for easy Post-Install processes for OS's supported by FreeZTP. CentOS 7: CentOS Minimal Server - Post-Install Setup Make sure to install Git for a CentOS install sudo yum install git -y Install Python2 PIP sudo yum install python2-pip CentOS 8: Make sure to install Git for a CentOS install sudo yum install git -y Install Python2 PIP sudo yum install python2-pip Create python Symlink sudo ln -s /usr/bin/python2.7 /usr/bin/python Create pip Symlink sudo ln -s /usr/bin/pip2 /usr/bin/pip Ubuntu 16: Ubuntu Minimal Server - Post-Install Setup Make sure to install python-pip and git for Ubuntu sudo apt install -y python-pip sudo apt-get install -y git Ubuntu 18 or 20: Install Git and Curl Clients apt install git apt install curl Install Python2 and create a symlink for it sudo apt install python2 Use sudo apt-get install python-pip on Ubuntu 18 sudo ln -s /usr/bin/python2.7 /usr/bin/python Install PIP for Python2 curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py sudo python get-pip.py Raspbian: Raspbian Minimal Server - Post-Install Setup Make sure to install python-pip and git for Raspbian sudo apt install -y python-pip sudo apt-get install -y git
            Download the FreeZTP repository using Git git clone https://github.com/packetsar/freeztp.git
            Change to the directory where the FreeZTP main code file (ztp.py) is stored: cd freeztp
            Run the FreeZTP program in install mode to perform the installation: sudo python ztp.py install. Make sure the machine has internet access as this process will download and install several packages for this to happen. FreeZTP will perform the install of the packages and services for full operation. The installation will also install a CLI completion (helper) script. You will need to logout and log back into your SSH session to activate this completion script.
            The ZTP server comes with an [almost] fully functional default configuration, ready to serve out a basic config to switches. You can view the configuration (after installation) by issuing the command ztp show config.
            Configure DHCPD using the ZTP commands During installation, ZTP will install the DHCPD service, detect the network interfaces in Linux, and configure DHCPD scopes for each of the interfaces. The created DHCPD scopes will be inactive to serve DHCPD as they will have no addresses available to lease. If you want to use the automatically generated DHCPD scope (the new switches will be on the same VLAN as one of FreeZTPs interfaces), you just need to specify a first and last address for the lease range. After configured, you will need to commit the ZTP DHCPD configuration. Committing the DHCPD configuration (ztp request dhcpd-commit) automatically compiles/saves the DHCP configuration and restarts the DHCPD service. Below is example of how to do this. ztp set dhcpd INTERFACE-ETH0 first-address 192.168.1.100 ztp set dhcpd INTERFACE-ETH0 last-address 192.168.1.200 # ztp request dhcpd-commit If the switches will not be on the same VLAN, then create a new scope (you can use the existing scope configuration commands as a reference). There are other basic DHCPD options included in the scope settings like dns-servers, domain-name, and gateway which can be set as needed. Make sure to do a ztp request dhcpd-commit after any changes to DHCPD configurations.
            Start configuring switches! FreeZTP comes with a default configuration which is ready to configure switches. A default-keystore is configured which will hand out a basic (non-individualized) config to a newly booted switch. There are a few example templates, keystores, associations, and an ID array already in the default config which you can reference. Feel free to modify them to do what you want, or blow them away and customize everything. Once you have the ZTP configuration set, restart the ZTP service (ztp service restart) for your changes to take effect. Boot up a switch (with a blank configuration) and watch it grab a DHCP address and contact ZTP for image upgrades and configurations. Be patient when the switch boots up as it sometimes takes a few (1-3) minutes after the "press RETURN to get started" message to begin the AutoInstall process. You can watch for action in ZTP by checking the DHCP leases (ztp show dhcpd leases) and watching the active logs (ztp show log tail). You can also see the history of devices which have gone through the provisioning process using ztp show provisioning.

            Support

            If you would like to help out by contributing code or reporting issues, please do!. Visit the GitHub page (https://github.com/packetsar/freeztp) and either report an issue or fork the project, commit some changes, and submit a pull request.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/PackeTsar/freeztp.git

          • CLI

            gh repo clone PackeTsar/freeztp

          • sshUrl

            git@github.com:PackeTsar/freeztp.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link