Python for Network Defenders
This course was created for novice programmers or those new to Python and designed for a very hands-on instructional experience. You will learn the foundations of Python, including modules, classes, functions, object types, numeric types, strings, lists and dictionaries, statements, and more. The objective of this course is to equip you with skills you can immediately leverage to build powerful Python scripts. This course is a great starting point for security analysts seeking to automate repetitive or complex analytic tasks.
Training at a glance
Level
Beginner
Duration
5 Days
Experience
1 year: Python Programming
Average Salary
$108,002
Labs
No
Level
Beginner
Duration
5 Days
Experience
1 year: Python Programming
Average Salary
$108,002
Labs
No
Training Details
Get Practical Experience That Well Over 95% Of Python for Network Defenders Job Openings Require.
Our training doesn’t consist of a set of video lectures followed by unguided work assignments, as is the case with all other Python for Network Defenders training programs.
Instead, our proprietary Artificial Intelligence-based training platform delivers you bite-sized knowledge that is immediately followed by hands-on exercises, during which the platform watches your every step and helps you with contextual help, hints, and templates, as needed; and you have a personal tutor and coach who help you every step of the way.
Capstone Exercise
A programming assignment that includes the use of data structures, file and user I/O, condition/branching statements, functions and exception handling.
After successfully completing this course, students will be able to:
- Understand the foundational concepts of scripting and the Python language
- Use control statements, branching, and looping to establish flow in a script
- Employ modules and libraries to optimize code writing
- Ingest and analyze file inputs using input/output libraries and regular expressions
- Handle errors and exceptions gracefully
- Create simple graphical user interfaces
- Use simple networking functions such as creating sockets and sending email programmatically
Lesson 1: Reviewing Python Essentials
- Version Controlling Code
- Up and running with Python (installing on various platforms)
- Lists
- Dictionaries
- File Input and Output
- Functions
- Methods
- Review of the Standard Library
- Using pip and pypi.org
Lesson 2: Python and Data Translation
- JSON
- Reading from files
- Reading from API
- YAML
- Reading from files CSV
- Reading from files
- Excel
- Using pyexcel library
- Using pandas library
Lesson 3: Python and RESful APIs
- RESTful APIs decoded
- Reading attachments
- API keying
- Passing credentials securely
- Standard Library Solution
- 3rd party library solutions
Lesson 4: Automating SMTP and Extended SMTP (Email)
- SMTP
- Extended SMTP
- Automating Email solutions
- Setting headers and creating a body
- Attachments
- Google Gmail considerations
- Microsoft considerations
Lesson 5: Python and Telnet
- RFC 854 ‐ Telnet Protocol
- Standard Library Solution
Lesson 6: Python and SSH
- Standard Library Solution
- Paramiko
- SSH Agents
- Key exchange and authorization
- Securing dealing with passwords
- Configuration
- SFTP
- Passing commands and capturing responses
- Parsing remote logs
Lesson 7: Automating Switches and Routers with Python
- Netmiko
- Push / Pull Configuration
- Retrieve information about devices
- Manage the devices configuration
- Connecting and Running a Command on a Networking Device
- Enable & Global Config Mode
- Configure a Networking Device from a File
- Configuration Backup using Netmiko
- VLAN & VXLAN management
- BGP & OSPF Management
- Solutions for HSRP, VRRP, and GLBP
Lesson 8: Automating Networks with Python NAPALM
- Installation
- Tutorials
- Validating deployments
- Supported Devices
- Command Line Tool
- NetworkDriver
- YANG
- napalm‐logs
- Integrations
Lesson 9: Python and Network Captures
- Wireshark
- TCPDump
- Decoding network captures with Python
- *.pcap files
- *.pcap‐ng files
- Parsing network captures
- Regular Expression Library
Lesson 10: Optimizations and Security
- Multiprocessing and Multithreading
- Examples of running in parallel
- Cost and Benefit Considerations
- Secure hashes and digests
- MD5, SHA, and OpenSSL Options
- Encrypting content
- Considerations for credentials
- Securely passing input
Lesson 11: Overview of Ansible (optional)
- Relationship of Ansible and Python
- Overview and Installing
- Where YAML fits
- Modules for Cisco, Juniper, Arista, and other major vendors
- shell, raw, copy, file, apt, service, cli_command, cli_config
- Constructing the playbook
- Applications of Python versus Ansible
This course was created for novice programmers or those new to Python and designed for a very hands-on instructional experience.
- A broad understanding of computer systems
- Knowledge of networking fundamentals and the TCP/IP protocol suite
- No previous programming experience is required
Upcoming Classes
We Offer More Than Just Python Training
Our successful training results keep our corporate and military clients returning. That’s because we provide everything you need to succeed. This is true for all of our courses.
Strategic Planning & Project Management
From Lean Six Sigma to Project Management Institute Project Management Professional, Agile and SCRUM, we offer the best-in-class strategic planning and project management training available. Work closely with our seasoned multi-decade project managers.
IT & Cybersecurity
ATA is the leading OffSec and Hack the Box US training provider, and a CompTIA and EC-Council award-winning training partner. We offer the best offensive and defensive cyber training to keep your team ahead of the technology skills curve.
Leadership & Management
Let us teach your team the high-level traits and micro-level tools & strategies of effective 21st-century leadership. Empower your team to play to each others’ strengths, inspire others and build a culture that values communication, authenticity, and community.