Skip to main content

ATBSWP - A Lesson in Python (Part 1)

Hello Everyone,

I have decided to mark my journey going through the information referenced over at Automate the Boring Stuff with Python through this blog so I can keep track of items that I have learned and things that I may re-learn through this. For everyone's reference, the documentation that I am following is through this website or directly from the vendor.

Chapter 0 - Basically helps you setup Python3 on your PC. In this case I am using a variant of Debian to install it on. It also explains how to properly troubleshoot an error, and how to look up problems online.

Chapter 1 - Explains how math works in Python using Idle. Basically the only thing that I did not know, mainly because I did not use it often is that % is Modulus/Remainder. It reads from Left to Right, and checks quotes and {}()'s accordingly. Difference between Strings, Integers and Floating Point Numbers (aaa, 1 or 2 or 3, and 1.242). You also need to have single quotes at the beginning and end of strings such as 'Hello World!' . You will also not be able to add Strings and Integers together, and text Concatenation takes the literal text and adds them together, so if there is no spaces in your 'text' then it wont add it in. If you use Multiplication with Integers and Strings, it'll create a literal concatenation of the amount multiplied. Storing variables is simple.

Important Code Notes:
variable = input()     #This allows you to call out specific input from the user and is useful if needing to prompt for text.
#Commenting          #As you have probably guessed by now, I have programmed in Python and other languages before as (#) is used as the universal code of Commenting out code. Another common one is // but that is for other programming languages. 
print()   #Prints text that is in the () on the screen
len() #Counts the length of the items in the ()
str(), int(), float() #Allows you to change the type of the item, assuming it makes sense.

Chapter 2 - Boolean and Comparison is covered in this chapter. This also covers "And", "Or" and finally "Not". It also explains block statements (cleaning your code up). It covers 'If', 'Elif' 'Else' statements. 'While' allows loops and how to use 'Break' to break out of a 'While' loop. 'For' is also covered so that you can do certain pieces of code up to a certain value using 'i'. It also shows how to use 'import' to import specific python code such as Random or sys. Finally using 'sys.exit()' you can explicitly escape out of your whole script of code early.

Chapter 3 and on will be covered within another Part.

Comments

Popular posts from this blog

Fortigate to USG B2B

Building Site-to-Site B2B from Unifi USG to Fortigate (500D or other models) Fortigate Configuration 1. Build a New VPN Tunnel using Custom VPN Tunnel (No Template) 2. Under Network, point to the Public Side IP of the USG (Public IP, not WAN interface) 3. Leave everything else default (NAT-T Enabled, DPD Disabled..ect) 4. Authentication, use PSK and IKEv1 with Main 5. Phase 1 Purposal, set algorithms to AES128 and SHA1, with DH 14. 6. Phase 2 Purposal, set Local Address and Remote address to 0.0.0.0/0.0.0.0 and 0.0.0.0/0.0.0.0 respectively. 7. Set Encryption to AES128/Sha1, Replay Detection and PFS enabled, along with DH14. Enable Autokey Keep Alive, and Auto-Negotiate, and save changes. 8. Build a Static Route pointing to the Far-End Destination/Segment you want to reach. 9. Build a Policy Stating which Segments can hit the Far-End Destination/B2B USG Configuration 1. This is assuming that USG is already registered to the Unifi Controller. 2. Go t

How to setup a Host-Check for Fortigate SSL VPN

This document outlines how to setup a host-check for a Fortigate SSL VPN (Web only): config vpn ssl web portal edit "portalname" set web-mode enable set host-check custom set host-check-policy "Microsoft-Windows-Firewall" set os-check-enable set ip-pools "PoolName" set split-tunneling disable set page-layout double-column set theme orange config os-check-list "windows-7" set action check-up-to-date set latest-patch-level 1 end  config vpn ssl web host-check-software edit "Microsoft-Windows-Firewall" config check-item-list edit 1 set target "HKLM\\SYSTEM\\CurrentControlSet\\Services\\SharedAccess\\Parameters\\FirewallPolicy\\StandardProfile:EnableFirewall==1" set type registry next edit 2 set target "HKLM\\SYSTEM\\CurrentControlSet\\Services\\SharedAccess\\Parameters\\FirewallPolicy\\PublicProfile:EnableFirewall==1" set type registry next edit 3 set target "HKLM\\SYSTEM\\CurrentControlSet\\S

Implementing 802.1X - Windows 2012R2 + Cisco 4500 Switches

Implementing 802.1X Using Windows Server 2012R2 & Cisco 4500 Series Switches Overview: This document is to outline how the configuration between Windows Server 2012 R2’s NPS Services and Cisco 4500 Series switches has been implemented. High Level Diagram:   Requirements: Windows Server 2012 R2 with NPS Server installed Windows Server 2012 R2 with CA Services Windows AD Environment Cisco 4500 Series Switches Windows 7-10 Clients to connect NPS Configuration: 1. This assumes the above requirement that the NPS Service has already been installed on Windows Server 2012 R2 2. Disable all existing Policies under Connection Request Policies and Network Policies as you will be making your own, except one that states “Catch All” with the below parameters: 3. You will then need to add in a new Radius Client to have Policies built around. Friendly Name will be used going forward for the Policies for referencing the document. 4. Once completed, re