Technical requirements
The following tools should be installed and available in your environment:
- Python 2.7.1x
- PyCharm Community or Pro Edition
- EVE-NG topology; please refer to Chapter 3, Setting up the Network Lab Environment, for how to install and configure the emulator
You can find the full scripts developed in this chapter at the following GitHub URL: https://github.com/TheNetworker/EnterpriseAutomation.git.
Python and SSH
Unlike telnet, SSH provides a secure channel to exchange data between client and server. The tunnel created between the client and the device is encrypted with different security mechanisms that make it hard for anyone to decrypt the communication. The SSH protocol is the first choice for network engineers who need to securely administrate network nodes.
Python can communicate with network devices using the SSH protocol by utilizing a popular library called Paramiko that supports authentication, key handling (DSA, RSA, ECDSA, and ED25519), and other SSH features such as...