farhanashrafdev/90DaysOfCyberSecurity
This repository contains a 90-day cybersecurity study plan, along with resources and materials for learning various cybersecurity concepts and technologies. The plan is organized into daily tasks, covering topics such as Network+, Security+, Linux, Python, Traffic Analysis, Git, ELK, AWS, Azure, and Hacking. The repository also includes a `LEARN.md
90-Day Cybersecurity Study Plan
📚 Table of Contents
- Introduction
- Goals and Audience
- Start Here
- Daily Breakdown
- Bonus: Landing the Job
- Translations
- Contributors
📘 Introduction
Welcome to the 90 Days of Cybersecurity challenge!
This repository provides a structured, 90-day self-paced study plan designed to help learners build a strong foundation in cybersecurity. Whether you're a beginner looking to break into the field or a professional aiming to sharpen your skills, this roadmap offers a wide range of curated resources, hands-on tasks, and learning materials.
The daily modules cover essential and advanced topics, including:
- Networking fundamentals (Network+)
- Security principles (Security+)
- Linux basics and shell scripting
- Python programming for security tasks
- Traffic analysis and packet inspection
- Version control with Git
- SIEM tools and log analysis using the ELK stack
- Cloud security with GCP, AWS and Azure
- Penetration testing and ethical hacking
- Landing the job: a one-page resume and an AI-assisted job-search pipeline with career-ops
Each day is designed with actionable tasks, tutorials, and reading materials to help you stay on track. For a full list of resources, refer to learn.md.
🎯 Goals and Audience
📌 Goals
The primary goal of this 90-day plan is to help learners:
- Build a solid foundation in core cybersecurity concepts and practices.
- Gain hands-on experience through daily exercises and real-world tools.
- Develop the technical skills necessary for certifications such as CompTIA Network+ and Security+.
- Explore key domains including network security, system hardening, cloud security, scripting, and ethical hacking.
- Cultivate a consistent learning habit over 90 days to support long-term retention and growth.
By the end of this journey, you should feel confident navigating a variety of cybersecurity tools, concepts, and techniques.
👥 Intended Audience
This repository is ideal for:
- Aspiring cybersecurity professionals preparing for entry-level roles or certifications.
- IT professionals transitioning into a security-focused career.
- Students studying computer science, information systems, or network engineering.
- Self-learners seeking a structured and comprehensive study plan.
- Developers and DevOps engineers looking to better understand secure infrastructure and threat detection.
- Anyone curious about how cybersecurity works in real-world environments.
No prior experience is required, though basic familiarity with computers, networks, or programming will be helpful.
🚀 Start Here
New to the plan? Read this first, then jump to Day 1.
- Time budget: aim for 1-2 focused hours a day. The day numbers are a guide, not a deadline; it is fine to spend longer on a topic.
- Follow the order: Days 1-28 (networking, security basics, Linux) are the foundation everything else builds on. Do not skip ahead to hacking.
- Certifications are optional: the Network+ and Security+ playlists teach the concepts you need. You do not have to sit the exams to follow this plan or to get a first job.
- Track your progress: fork this repo (or copy the plan into a notes file) and tick off each day as you finish it.
- Everything is free: if a site puts content behind a paywall, use the alternatives listed in the same section or in
learn.md. - Questions or study buddies: use GitHub Discussions. Issues are for broken links and content fixes.
- Prefer another language? See Translations.
Day 1-7: Network+
- Watch videos from Professor Messer's N10-009 Playlist
- Complete any related practice questions or exercises.
Day 8-14: Security+
Strongly Recommend Professor Messer's:
- Watch the videos from Professor Messer's SY0-701 Playlist
Another Alternative You Can Use:
- Watch Pete Zerger's SY0-701 Playlist
Additional Practice:
- Complete any related practice questions or exercises.
Day 15-28: Linux
- Browse through the Linux Journey tutorials: https://linuxjourney.com/
- Complete Linux Unhatched on Cisco NetAcad: https://www.netacad.com/courses/linux-unhatched
- Complete all Linux Hands-on Labs on LabEx: https://labex.io/free-labs/linux
Day 29-42: Python
- Watch freeCodeCamp's Learn Python - Full Course for Beginners (free, ~4.5 hours)
- Complete Codecademy's Learn Python Track (the free tier covers the basics; later lessons need a subscription): https://codecademy.com/learn/learn-python
- Python.org: https://www.python.org/
- Real Python: https://realpython.com/
- Talk Python to Me: https://talkpython.fm/
- Read "Learn Python the Hard Way": https://learnpythonthehardway.org
- HackerRank Python: https://www.hackerrank.com/domains/python
- LabEx Learn Python by Labs: https://labex.io/free-labs/python
Youtube Course:
Day 43-56: Traffic Analysis
- Take the Wireshark University course: https://www.wireshark.org/#educationalContent
- Follow the Wireshark Tutorial on guru99: https://guru99.com/wireshark-tutorial.html
- Read through the TCPdump Tutorial on DanielMiessler: https://danielmiessler.com/study/tcpdump/
- Read through the Suricata Quickstart guide: https://docs.suricata.io/en/latest/quickstart.html
Youtube:
- Wireshark Tutorial for Beginners series https://www.youtube.com/watch?v=NjvR4LmwcMU&list=PLBf0hzazHTGPgyxeEj_9LBHiqjtNEjsgt&pp=iAQB
- Suricata Network IDS/IPS https://www.youtube.com/watch?v=S0-vsjhPDN0&pp=ygUhIFN1cmljYXRhIElEUy9JUFMgU3lzdGVtIFR1dG9yaWFs
Day 57-63: Git
- Complete Codecademy's Git for Beginners course: https://codecademy.com/learn/learn-git
- Follow the Git Immersion tutorial: http://gitimmersion.com
- Try Git: https://try.github.io
- Use Learn Git Branching for an interactive Git CLI simulator.
Day 64-70: ELK
- Follow the Complete Guide to the ELK Stack on Logz.io: https://logz.io/learn/complete-guide-elk-stack/
- Get started with the Elastic Stack using the official docs: https://www.elastic.co/docs/get-started
Day 71-77: Cloud Platforms
Any one of them works fine.
GCP:
- Explore the GCP Getting Started Resource : https://cloud.google.com/getting-started/
- Google Cloud Platform Documentation: https://cloud.google.com/docs/
- Google Cloud Platform Blog: https://cloud.google.com/blog/
- Google Cloud Platform Community: https://cloud.google.com/community/
- Try hands-on challenges with Google Cloud Skills Boost
AWS
- Explore the AWS Getting Started Resource Center: https://aws.amazon.com/getting-started/
- Browse through the AWS Tutorials: https://aws.amazon.com/tutorials/
- Learn through gamified labs on AWS Cloud Quest
Azure
- Go through Azure Fundamentals: https://learn.microsoft.com/en-us/training/azure/
- Complete the Microsoft Learn Azure labs with sandbox environments
Day 78-84: Review and Practice
- Go back through Days 1-77 and review any weak areas.
- Complete hands-on challenges on TryHackMe: https://tryhackme.com
- Set up a home lab using VirtualBox or VMware to practice what you have learned.
- Try building a small project that combines networking, Linux, Python, and security concepts.
Day 85-90: Hacking
- Try to hack the challenges on Hack the Box: https://hackthebox.com
- Practice on vulnerable machines on Vulnhub: https://vulnhub.com
Youtube:
- Ethical Hacking Part 1: https://www.youtube.com/watch?v=3FNYvj2U0HM&ab_channel=TheCyberMentor
- Ethical Hacking Part 2: https://www.youtube.com/watch?v=sH4JCwjybGs&ab_channel=TheCyberMentor
Day 91-92: One Page Resume
- Use the provided resume template: https://bowtiedcyber.substack.com/p/killer-cyber-resume-part-ii
- Cybersecurity Resume Template: https://www.indeed.com/career-advice/resumes-cover-letters/cybersecurity-resume
- Cybersecurity Resume from Resume-Now: https://www.resume-now.com/templates/cyber-security-resume This template also has sections for skills, certifications, and experience, along with a summary, and a section for education. It also includes a section for technical skills.
- Save a copy of your finished resume as Markdown (
cv.md) as well; you will reuse it with career-ops on Day 93. List the labs, CTF rooms and projects from Days 15-90 as hands-on experience.
Day 93-95: Where and How to Apply
- Search for jobs on Indeed: https://indeed.com
- Look for opportunities on LinkedIn: https://linkedin.com
- Explore entry-level cybersecurity roles and career pathways on CyberSeek: https://www.cyberseek.org/pathway.html
Run your job search with career-ops
career-ops is a free, open-source job-search system that runs inside an AI coding CLI such as Claude Code, Codex, OpenCode, GitHub Copilot CLI or Antigravity CLI (free tier, no API key needed). Paste a job URL and it scores the posting against your cv.md (1-5), generates an ATS-friendly tailored PDF and tracks every application in one place. It never applies for you; you always review and submit.
Before using any AI CLI, redact sensitive personal data in cv.md (for example address/phone) and review the tool/provider’s privacy and data-retention settings before pasting your resume content.
- Set up (Day 93): install Node.js, skim the setup guide, then run
npx @santifer/career-ops init. Good security habit:npxdownloads and runs the latest release, so check the release notes before running it (pin a version with@santifer/career-ops@<version>if you want a reproducible install). Open your AI CLI in the newcareer-opsfolder and follow the onboarding chat. Tell it your target roles (for example SOC analyst, security analyst, junior penetration tester) so the evaluations fit entry-level security jobs. - Evaluate (Day 94): paste 10-20 postings you found on Indeed or LinkedIn. Only apply to roles that score 4.0/5 or higher; treat it as a filter, not a spray-and-pray tool.
- Apply and prepare (Day 95): generate tailored CVs for your shortlist, apply, and use the interview-prep mode to build your STAR stories before the first call.
Translations
- Arabic / العربية
- Chinese / 中文
- French / Francais
- Hindi / हिंदी
- Portuguese / Portugues
- Russian / Русский
- Spanish / Espanol
🎉 Contributors
Thank you for being a part of the 90DaysOfCyberSecurity community! We appreciate everyone who helps improve our content.
Contribution Categories:
- Documentation: Improve or add to the study material and guides.
- Tutorials & Guides: Create or enhance tutorials explaining complex concepts.
- Suggested Resources: Recommend useful tools, articles, books, or other resources.
- Ideas / Topics: Suggest new topics to be added to the learning materials.
- Review & Feedback: Provide feedback on existing materials and suggest improvements.
- Community Support: Answer questions and help others in discussions or issues.
- Tests & Quizzes: Add quizzes, challenges, or tests to check learning progress.
- Real-World Applications: Share real-life examples or case studies of cybersecurity practices.
- Mentoring: Help others with study advice, tips, or hosting study sessions.
Thank you to all contributors for your amazing work! 🎉
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Farhan Ashraf 📖 |
Wanderer479 📖 |
Muhammad Mahad 📖 |
André Oliveira 📖 |
arbenp 📖 🐛 |
paduh 📖 |
Emmanuel Ferdman 🐛 📖 |
King Triton 📖 🌍 |
Mr 🎨 💡 |
Parth Dinesh Mane 💬 |
LUser-12 🤔 |
This project follows the all-contributors specification. Contributions of any kind welcome!