一、为什么选择网络安全?
这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等一系列政策/法规/标准的持续落地,网络安全行业地位、薪资随之水涨船高。
未来3-5年,是安全行业的黄金发展期,提前踏入行业,能享受行业发展红利。
二、为什么说网络安全行业是IT行业最后的红利?
根据腾讯安全发布的《互联网安全报告》,目前中国网络安全人才供应严重匮乏,每年高校安全专业培养人才仅有3万余人,而网络安全岗位缺口已达70万,缺口高达95%。
而且,我们到招聘网站上,搜索【网络安全】【Web安全工程师】【渗透测试】等职位名称,可以看到安全岗位薪酬待遇好,随着工龄和薪酬增长,呈现「越老越吃香」的情况。
选择安全行业有以下4大优势:
01没有年龄限制
在IT行业有很多岗位有35岁年龄焦虑,担心企业是否愿意接问题,而网络安全靠的是解决问题的能力,从业年份越多经验越丰富,就越值钱。
02学历门槛相对宽松
目前网安高校科班出身的很少,一是开设网络安全专业的学校很少,二是即便开设了网安专业由于师资短缺培养的学生也很少,因此现在网安招聘还是以转行为主,并且对年龄、专业、学历的要求定的没有那么死,就业市场相对来说比较宽容。
03整体薪资水平高
络安全的薪资相比其他IT行业起薪待遇更高,起步通常在7k以上,最高可达年薪百万,还有机会获得不菲的兼职收入。
学习网络安全技术的方法无非三种:
第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。
第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。
第三种就是找培训。
那么接下来,我会告诉你一个从事以上真正零基础该从怎么入门web安全
网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。
三、学习路线
一、基础阶段(三个月)
基础阶段的学习时间大约为 3 个月。在这段时间里,你可以系统地学习计算机基础知识、网络基础知识和网络安全概念,为后续的学习打下坚实的基础。
1、学习目标
在基础阶段,你需要建立对网络安全的基本认识,了解网络安全的概念、范畴和重要性。同时,掌握一些基础的计算机知识和网络知识,为后续的学习打下坚实的基础。
2、学习内容
① 计算机基础知识
- 操作系统:熟悉 Windows、Linux 等常见操作系统的基本操作和管理,包括文件系统、用户管理、进程管理等。
- 编程语言:学习一门编程语言,如 Python。Python 在网络安全领域有广泛的应用,可以用于脚本编写、漏洞利用等。
- 数据库知识:了解数据库的基本概念和操作,如 MySQL、Oracle 等。
② 网络基础知识
- 网络协议:掌握 TCP/IP 协议、HTTP 协议、DNS 协议等常见网络协议的原理和工作方式。
- 网络拓扑结构:了解常见的网络拓扑结构,如星型、总线型、环形等。
- IP 地址和子网掩码:熟悉 IP 地址的分类、子网划分和子网掩码的计算方法。
③ 网络安全概念
- 网络安全的定义和范畴:了解网络安全的定义、范畴和重要性。
- 常见的网络攻击方式:了解常见的网络攻击方式,如 DDoS 攻击、SQL 注入攻击、XSS 攻击等。
- 网络安全防护措施:了解常见的网络安全防护措施,如防火墙、入侵检测系统、入侵防御系统等。
3、学习资源
① 书籍
- 《计算机网络》:系统地介绍了计算机网络的基础知识。
- 《Python 编程从入门到实践》:适合初学者学习 Python 编程语言。
- 《网络安全基础》:介绍了网络安全的基本概念和知识。
② 在线课程
- Coursera、Udemy、网易云课堂等平台上有很多计算机基础和网络基础的课程,可以根据自己的需求选择。
③ 技术博客和论坛
- CSDN、博客园、安全客等技术博客和论坛上有很多关于计算机基础和网络基础的文章和讨论,可以从中学习和交流。
二、进阶阶段(6个月)
进阶阶段的学习时间大约为 6 个月。在这段时间里,你需要深入学习网络安全技术,掌握常见的网络安全工具和技术,通过实践操作提高自己的实际动手能力和解决问题的能力。
1、学习目标
在进阶阶段,你需要深入学习网络安全技术,掌握常见的网络安全工具和技术,提高自己的实际动手能力和解决问题的能力。
2、学习内容
① 漏洞扫描
- 漏洞扫描的原理和方法:了解漏洞扫描的原理和工作方式,掌握常见的漏洞扫描工具,如 Nessus、OpenVAS 等。
- 漏洞分类和评估:了解常见的漏洞类型,如 SQL 注入漏洞、XSS 漏洞、文件上传漏洞等,以及漏洞的评估方法和风险等级。
② 渗透测试
- 渗透测试的流程和方法:了解渗透测试的流程和方法,包括信息收集、漏洞扫描、漏洞利用、后渗透等阶段。
- 渗透测试工具:掌握常见的渗透测试工具,如 Metasploit、Burp Suite 等。
③ 密码学
- 密码学基础:了解密码学的基本概念和原理,如加密算法、解密算法、密钥管理等。
- 常见的加密算法:掌握常见的加密算法,如 AES、RSA、DES 等,以及它们的应用场景和优缺点。
④ 网络安全防护
- 网络安全防护体系:了解网络安全防护体系的构成和工作原理,包括防火墙、入侵检测系统、入侵防御系统等。
- 安全策略和管理:了解网络安全策略的制定和管理,包括用户管理、权限管理、访问控制等。
3、学习资源
① 书籍
- 《Web 安全深度剖析》:深入分析了 Web 安全的各个方面。
- 《Metasploit 渗透测试指南》:详细介绍了 Metasploit 渗透测试工具的使用方法。
- 《密码学导论》:系统地介绍了密码学的基础知识。
② 在线课程
- Coursera、Udemy、网易云课堂等平台上有很多网络安全技术的课程,可以根据自己的需求选择。
③ 技术博客和论坛
- CSDN、博客园、安全客等技术博客和论坛上有很多关于网络安全技术的文章和讨论,可以从中学习和交流。
④ 实验环境
- 搭建自己的实验环境,如使用虚拟机搭建渗透测试环境、使用靶场进行漏洞挖掘和修复等。
三、高级阶段(长期学习)
高级阶段的学习时间是长期的。在这个阶段,你需要不断地将所学的知识应用到实际项目中,积累项目经验,同时关注行业动态,持续学习和提升自己的知识和技能。
1、学习目标
在高级阶段,你需要将所学的网络安全知识应用到实际项目中,提高自己的实战能力和项目经验。同时,关注网络安全行业的最新动态和发展趋势,不断学习和更新自己的知识和技能。
2、学习内容
① 参与实际项目
- 寻找网络安全实习机会或参与开源项目,积累实际项目经验。
- 在项目中,运用所学的网络安全知识和技术,解决实际问题,提高自己的实战能力。
② 关注行业动态
- 关注网络安全行业的最新动态和发展趋势,了解最新的网络安全技术和攻击手段。
- 参加网络安全会议、研讨会等活动,与行业内的专家和从业者交流和学习。
③ 持续学习和提升
- 不断学习和更新自己的知识和技能,关注网络安全领域的新技术和新趋势。
- 参加网络安全培训和认证考试,提高自己的专业水平和竞争力。
3、学习资源
① 实习机会和开源项目
- 在招聘网站上寻找网络安全实习机会,或者参与开源的网络安全项目。
② 网络安全会议和研讨会
- 关注网络安全行业的会议和研讨会信息,积极参加这些活动。
③ 培训和认证考试
- 参加网络安全培训课程,如 CISP、CISSP 等认证考试,提高自己的专业水平和竞争力。
总之,自学网络安全需要有系统的学习计划和坚持不懈的努力。通过三个必经阶段的学习,你可以逐步掌握网络安全知识和技能,成为一名优秀的网络安全专业人士。