Book Image

Hands-On Enterprise Automation with Python

By : Bassem Aly
Book Image

Hands-On Enterprise Automation with Python

By: Bassem Aly

Overview of this book

Hands-On Enterprise Automation with Python starts by covering the set up of a Python environment to perform automation tasks, as well as the modules, libraries, and tools you will be using. We’ll explore examples of network automation tasks using simple Python programs and Ansible. Next, we will walk you through automating administration tasks with Python Fabric, where you will learn to perform server configuration and administration, along with system administration tasks such as user management, database management, and process management. As you progress through this book, you’ll automate several testing services with Python scripts and perform automation tasks on virtual machines and cloud infrastructure with Python. In the concluding chapters, you will cover Python-based offensive security tools and learn how to automate your security tasks. By the end of this book, you will have mastered the skills of automating several system administration tasks with Python.
Table of Contents (20 chapters)

Generating packets and network streams using Scapy

As we mentioned before, Scapy has its own DSL language, which is integrated with python. Also, you can access the Scapy console directly and start to send and receive packets directly from the Linux shell:

sudo scapy
The output of the preceding command is as follows:

Notice there are a couple of warning messages about some missing optional packages, such as matplotlib and PyX, but this should be fine and won't affect the Scapy core functions.

We can start first by checking the supported protocols inside scapy. Run the ls() function to list all supported protocols:

>>> ls()

The output is quite lengthy and will span multiple pages if posted here, so you can take a quick look on the Terminal instead to check it.

Now let's develop hello world application and run it using SCAPY. The program will send a simple ICMP...