Nmap for Penetration Testing: From Beginner to Advanced