My Account Log in

3 options

Hands-on enterprise automation with python : automate common administrative and security tasks with the most popular language python. / Bassem Aly.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Aly, Bassem, author.
Language:
English
Subjects (All):
Programming languages (Electronic computers).
Physical Description:
1 online resource (229 pages)
Edition:
1st edition
Place of Publication:
Birmingham, England ; Mumbai : Packt, 2018.
System Details:
text file
Summary:
Invent your own Python scripts to automate your infrastructure About This Book Make the most of Python libraries and modules to automate your infrastructure Leverage Python programming to automate server configurations and administration tasks Efficiently develop your Python skill set Who This Book Is For Hands-On Enterprise Automation with Python is for system administrators and DevOps engineers who are looking for an alternative to major automation frameworks such as Puppet and Chef. Basic programming knowledge with Python and Linux shell scripting is necessary. What You Will Learn Understand common automation modules used in Python Develop Python scripts to manage network devices Automate common Linux administration tasks with Ansible and Fabric Managing Linux processes Administrate VMware, OpenStack, and AWS instances with Python Security automation and sharing code on GitHub In Detail 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. Style and approach This book will follow a practical approach to help you script and automate tasks using Python. Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.
Contents:
Cover
Title Page
Copyright and Credits
Packt Upsell
Contributors
Table of Contents
Preface
Chapter 1: Setting Up Our Python Environment
An introduction to Python
Python versions
Why are there two active versions?
Should you only learn Python 3?
Does this mean I can't write code that runs on both Python 2 and Python 3?
Python installation
Installing the PyCharm IDE
Setting up a Python project inside PyCharm
Exploring some nifty PyCharm features
Code debugging
Code refactoring
Installing packages from the GUI
Summary
Chapter 2: Common Libraries Used in Automation
Understanding Python packages
Package search paths
Common Python libraries
Network Python Libraries
System and cloud Python libraries
Accessing module source code
Visualizing Python code
Chapter 3: Setting Up the Network Lab Environment
Technical requirements
When and why to automate the network
Why do we need automation?
Screen scraping versus API automation
Why use Python for network automation?
The future of network automation
Network lab setup
Getting ready - installing EVE-NG
Installation on VMware Workstation
Installation over VMware ESXi
Installation over Red Hat KVM
Accessing EVE-NG
Installing EVE-NG client pack
Loading network images into EVE-NG
Building an enterprise network topology
Adding new nodes
Connecting nodes together
Chapter 4: Using Python to Manage Network Devices
Python and SSH
Paramiko module
Module installation
SSH to the network device
Netmiko module
Vendor support
Installation and verification
Using netmiko for SSH
Configuring devices using netmiko
Exception handling in netmiko
Device auto detect
Using the telnet protocol in Python.
Push configuration using telnetlib
Handling IP addresses and networks with netaddr
Netaddr installation
Exploring netaddr methods
Sample use cases
Backup device configuration
Building the python script
Creating your own access terminal
Reading data from an Excel sheet
More use cases
Chapter 5: Extracting Useful Data from Network Devices
Understanding parsers
Introduction to regular expressions
Creating a regular expression in Python
Configuration auditing using CiscoConfParse
CiscoConfParse library
Supported vendors
CiscoConfParse installation
Working with CiscoConfParse
Visualizing returned data with matplotLib
Matplotlib installation
Hands-on with matplotlib
Visualizing SNMP using matplotlib
Chapter 6: Configuration Generator with Python and Jinja2
What is YAML?
YAML file formatting
Text editor tips
Building a golden configuration with Jinja2
Reading templates from the filesystem
Using Jinja2 loops and conditions
Chapter 7: Parallel Execution of Python Script
How a computer executes your Python script
Python multiprocessing library
Getting started with multiprocessing
Intercommunication between processes
Chapter 8: Preparing a Lab Environment
Getting the Linux operating system
Downloading CentOS
Downloading Ubuntu
Creating an automation machine on a hypervisor
Creating a Linux machine over VMware ESXi
Creating a Linux machine over KVM
Getting started with Cobbler
Understanding how Cobbler works
Installing Cobbler on an automation server
Provisioning servers through Cobbler
Chapter 9: Using the Subprocess Module
The popen() subprocess
Reading stdin, stdout, and stderr
The subprocess call suite
Summary.
Chapter 10: Running System Administration Tasks with Fabric
What is Fabric?
Installation
Fabric operations
Using run operation
Using get operation
Using put operation
Using sudo operation
Using prompt operation
Using reboot operation
Executing your first Fabric file
More about the fab tool
Discover system health using Fabric
Other useful features in Fabric
Fabric roles
Fabric context managers
Chapter 11: Generating System Reports and System Monitoring
Collecting data from Linux
Sending generated data through email
Using the time and date modules
Running the script on a regular basis
Managing users in Ansible
Linux systems
Microsoft Windows
Chapter 12: Interacting with the Database
Installing MySQL on an automation server
Securing the installation
Verifying the database installation
Accessing the MySQL database from Python
Querying the database
Inserting records into the database
Chapter 13: Ansible for System Administration
Ansible terminology
Installing Ansible on Linux
On RHEL and CentOS
Ubuntu
Using Ansible in ad hoc mode
How Ansible actually works
Creating your first playbook
Understanding Ansible conditions, handlers, and loops
Designing conditions
Creating loops in ansible
Trigger tasks with handlers
Working with Ansible facts
Working with the Ansible template
Chapter 14: Creating and Managing VMware Virtual Machines
Setting up the environment
Generating a VMX file using Jinja2
Building the VMX template
Handling Microsoft Excel data
Generating VMX files
VMware Python clients
Installing PyVmomi
First steps with pyvmomi
Changing the virtual machine state
There's more
Using Ansible playbook to manage instances.
Summary
Chapter 15: Interacting with the OpenStack API
Understanding RESTful web services
Installing rdo-OpenStack package
On RHEL 7.4
On CentOS 7.4
Generating answer file
Editing answer file
Run the packstack
Access the OpenStack GUI
Sending requests to the OpenStack keystone
Creating instances from Python
Creating the image
Assigning a flavor
Creating the network and subnet
Launching the instance
Managing OpenStack instances from Ansible
Shade and Ansible installation
Building the Ansible playbook
Running the playbook
Chapter 16: Automating AWS with Boto3
AWS Python modules
Boto3 installation
Managing AWS instances
Instance termination
Automating AWS S3 services
Creating buckets
Uploading a file to a bucket
Deleting a bucket
Chapter 17: Using the Scapy Framework
Understanding Scapy
Installing Scapy
Unix-based systems
Installing in Debian and Ubuntu
Installing in Red Hat/CentOS
Windows and macOS X Support
Generating packets and network streams using Scapy
Capturing and replaying packets
Injecting data inside packets
Packet sniffing
Writing the packets to pcap
Chapter 18: Building a Network Scanner Using Python
Understanding the network scanner
Building a network scanner with Python
Enhancing the code
Scanning the services
Sharing your code on GitHub
Creating an account on GitHub
Creating and pushing your code
Other Books You May Enjoy
Index.
Notes:
Description based on print version record.
ISBN:
9781788992640
1788992644
OCLC:
1043664364

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account