【Linux & Nginx】Linux下安装Nginx与版本升级(nginx-1.24.0)
网安导师小李 2024-06-13 11:37:03 阅读 99
Linux下安装Nginx与版本升级【nginx-1.24.0】
六、Nginx环境准备 6.1.Nginx版本6.2.获取Nginx源码6.3.准备服务器系统 6.3.1.环境准备6.3.2.确认centos的内核6.3.3.确保centos能联网6.3.4.确认关闭防火墙6.3.5.确认停用selinux 七、Nginx安装方式【源码安装和yum安装】 7.1.Nginx源码安装需要提前准备 7.1.1.GCC编译器7.1.2.PCRE7.1.3.zlib7.1.4.OpenSSL7.1.5.警告时缺少安装包 7.2.方案一:Nginx的源码安装 7.2.1.进入官网查找需要下载版本的链接地址,然后使用wget命令进行下载7.2.2.将下载的资源进行包管理7.2.3.解压缩7.2.4.进入资源文件中,发现configure7.2.5.指定编译参数,编译Nginx复杂安装7.2.6.编译&安装7.2.7.启动Nginx7.2.8.测试 7.3.方案二:yum安装【默认安装最新版】 7.3.1.官方安装步骤7.3.2.安装yum-utils工具7.3.3.添加yum源文件7.3.4.查看是否安装成功7.3.5.使用yum进行安装7.3.6.查看nginx的安装位置7.3.7.启动测试 7.4.卸载nginx 7.4.1.步骤一:需要将nginx的进程关闭7.4.2.步骤二:将安装的nginx进行删除7.4.3.步骤三:将安装包之前编译的环境清除掉 八、Nginx目录结构分析 8.1.Nginx目录结构8.2.nginx所有配置文件目录8.3.nginx.conf8.4.Nginx基础配置文件nginx.conf 解读 九、Nginx服务器版本升级和新增模块 9.1.环境准备 9.1.1.先准备两个版本的Nginx分别是 1.22.1和1.24.09.1.2.使用Nginx源码安装的方式将1.22.1版本安装成功并正确访问9.1.3.将Nginx1.24.0进行参数配置和编译,不需要进行安装。 9.2.方案一:使用Nginx服务信号进行升级 9.2.1.将1.22.1版本的sbin目录下的nginx进行备份9.2.2.将Nginx1.24.0安装目录编译后的objs目录下的nginx文件,拷贝到原来`/usr/local/nginx/sbin`目录下9.2.3.发送信号USR2给Nginx的1.22.1版本对应的master进程9.2.4.发送信号QUIT给Nginx的1.22.1版本对应的master进程 9.3.方案二:使用Nginx安装目录的make upgrade命令完成升级 9.3.1.将1.22.1版本的sbin目录下的nginx进行备份9.3.2.将Nginx1.24.0安装目录编译后的objs目录下的nginx文件,拷贝到原来`/usr/local/nginx/sbin`目录下9.3.3.进入到安装目录,执行`make upgrade`9.3.4.查看是否更新成功 十、Nginx安装成系统服务 10.1.创建脚本10.2.服务脚本内容10.3.进行权限设置10.4.开机启动 endl六、Nginx环境准备
6.1.Nginx版本
Nginx的官方网站为: http://nginx.org
Nginx的官方下载网站为http://nginx.org/en/download.html
6.2.获取Nginx源码
http://nginx.org/download/
打开上述网站,就可以查看到Nginx的所有版本,选中自己需要的版本进行下载。
6.3.准备服务器系统
6.3.1.环境准备
FinalShell SSH工具官网:http://www.hostbuf.com/
FinalShell SSH工具官网下载:http://www.hostbuf.com/t/988.html
Centos官网:https://www.centos.org/download/
MobaXterm官网:https://mobaxterm.mobatek.net/
MobaXterm官网下载:https://mobaxterm.mobatek.net/download.html
6.3.2.确认centos的内核
准备一个内核为2.6及以上版本的操作系统,因为linux2.6及以上内核才支持epoll,而Nginx需要解决高并发压力问题是需要用到epoll
# 查询linux的内核版本uname -a
6.3.3.确保centos能联网
ping www.baidu.com
6.3.4.确认关闭防火墙
关闭的方式有如下两种:
# 关闭运行的防火墙,系统重新启动后,防火墙将重新打开systemctl stop firewalld# 永久关闭防火墙,,系统重新启动后,防火墙依然关闭 systemctl disable firewalld# 查看防火墙状态 systemctl status firewalld
6.3.5.确认停用selinux
selinux(security-enhanced linux),美国安全局对于强制访问控制的实现,在linux2.6内核以后的版本中,selinux已经成功内核中的一部分。可以说selinux是linux史上最杰出的新安全子系统之一。虽然有了selinux,我们的系统会更安全,但是对于我们的学习Nginx的历程中,会多很多设置,所以这块建议大家将selinux进行关闭。
# 查看状态sestatus
如果查看不是disabled状态,我们可以通过修改配置文件来进行设置,修改SELINUX=disabled,然后重启下系统即可生效。
vim /etc/selinux/config# 重启系统reboot
七、Nginx安装方式【源码安装和yum安装】
7.1.Nginx源码安装需要提前准备
7.1.1.GCC编译器
Nginx是使用C语言编写的程序,因此想要运行Nginx就需要安装一个编译工具。
GCC就是一个开源的编译器集合,用于处理各种各样的语言,其中就包含了C语言。
# 安装gccyum install -y gcc# 查看gcc是否安装成功gcc --version
7.1.2.PCRE
Nginx在编译过程中需要使用到PCRE库(perl Compatible Regular Expressoin 兼容正则表达式库),因为在Nginx的Rewrite模块和http核心模块都会使用到PCRE正则表达式语法。
# 安装 PCRE库yum install -y pcre pcre-develrpm -qa pcre pcre-devel
7.1.3.zlib
zlib库提供了开发人员的压缩算法,在Nginx的各个模块中需要使用gzip压缩,所以我们也需要提前安装其库及源代码zlib和zlib-devel
yum install -y zlib zlib-develrpm -qa zlib zlib-devel
7.1.4.OpenSSL
OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包进行安全通信,并且避免被窃听。
SSL:Secure Sockets Layer安全套接协议的缩写,可以在Internet上提供秘密性传输,其目标是保证两个应用间通信的保密性和可靠性
。-
在Nginx中,如果服务器需要提供安全网页时就需要用到OpenSSL库,所以我们需要对OpenSSL的库文件及它的开发安装包进行一个安装。
yum install -y openssl openssl-develrpm -qa openssl openssl-devel
上述命令,一个个来的话比较麻烦,我们也可以通过一条命令来进行安装
# 一条命令来进行全部安装yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-develgcc --versionrpm -qa pcre pcre-devel zlib zlib-devel openssl openssl-devel
7.1.5.警告时缺少安装包
安装gcc
yum -y install gcc
checking for OS + Linux 3.10.0-693.el7.x86_64 x86_64 checking for C compiler ... not found ./configure: error: C compiler cc is not found
安装perl库
yum install -y pcer-devl
./configure: error: the HTTP rewrite module requires the PCRE library.You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option.
安装zlib库
yum install -y zlib zlib-devel
./configure: error: the HTTP gzip module requires the zlib library.You can either disable the module by using --without-http_gzip_module option, or install the zlib library into the system, or build the zlib library statically from the source with nginx by using --with-zlib=<path> option.
7.2.方案一:Nginx的源码安装
7.2.1.进入官网查找需要下载版本的链接地址,然后使用wget命令进行下载
yum -y install wgetwget http://nginx.org/download/nginx-1.24.0.tar.gz
7.2.2.将下载的资源进行包管理
mkdir -p /app/nginx/coremv nginx-1.24.0.tar.gz /app/nginx/core
7.2.3.解压缩
cd /app/nginx/coretar -zxvf nginx-1.24.0.tar.gz
7.2.4.进入资源文件中,发现configure
cd /app/nginx/core/nginx-1.24.0
7.2.5.指定编译参数,编译Nginx复杂安装
./configure --prefix=/usr/local/nginx \--sbin-path=/usr/local/nginx/sbin/nginx \--modules-path=/usr/local/nginx/modules \--conf-path=/usr/local/nginx/conf/nginx.conf \--error-log-path=/usr/local/nginx/logs/error.log \--http-log-path=/usr/local/nginx/logs/access.log \--pid-path=/usr/local/nginx/logs/nginx.pid \--lock-path=/usr/local/nginx/logs/nginx.lock \--with-http_gzip_static_module \--with-http_ssl_module \--with-stream
7.2.6.编译&安装
make & make install
7.2.7.启动Nginx
进入安装好的目录 /usr/local/nginx/sbin
cd /usr/local/nginx/sbin./nginx -V 查看版本详细信息./nginx 启动./nginx -s stop 快速停止./nginx -s quit 优雅关闭,在退出前完成已经接受的连接请求./nginx -s reload 重新加载配置
7.2.8.测试
7.3.方案二:yum安装【默认安装最新版】
官网:http://nginx.org/en/docs/install.html
RHEL and derivatives:http://nginx.org/en/linux_packages.html#RHEL
使用源码进行简单安装,我们会发现安装的过程比较繁琐,需要提前准备GCC编译器、PCRE兼容正则表达式库、zlib压缩库、OpenSSL安全通信的软件库包,然后才能进行Nginx的安装。
7.3.1.官方安装步骤
RHEL and derivatives:http://nginx.org/en/linux_packages.html#RHEL
RHEL and derivatives
This section applies to Red Hat Enterprise Linux and its derivatives such as CentOS, Oracle Linux, Rocky Linux, AlmaLinux.
Install the prerequisites:
sudo yum install yum-utils
To set up the yum repository, create the file named /etc/yum.repos.d/nginx.repo
with the following contents:
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true[nginx-mainline]name=nginx mainline repobaseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/gpgcheck=1enabled=0gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true
By default, the repository for stable nginx packages is used. If you would like to use mainline nginx packages, run the following command:
# 切换成主线版本,暂时不需要sudo yum-config-manager --enable nginx-mainline
To install nginx, run the following command:
sudo yum install nginx
When prompted to accept the GPG key, verify that the fingerprint matches 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
, and if so, accept it.
7.3.2.安装yum-utils工具
sudo yum install -y yum-utils
7.3.3.添加yum源文件
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true[nginx-mainline]name=nginx mainline repobaseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/gpgcheck=1enabled=0gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true
7.3.4.查看是否安装成功
yum list | grep nginx
7.3.5.使用yum进行安装
yum -y install nginx
7.3.6.查看nginx的安装位置
whereis nginx
7.3.7.启动测试
cd /usr/sbin./nginx
7.4.卸载nginx
7.4.1.步骤一:需要将nginx的进程关闭
# 先看下nginx是否在运行中ps aux | grep nginx# 如果在运行中,则停止./nginx -s stop 或者直接杀死进程 pkill nginx或 kill -9 进程号
7.4.2.步骤二:将安装的nginx进行删除
cd ~# 找到所有nginx有关文件find / -name nginx*# 删除有关nginx的文件(linux中一切都文件)rm -rf /usr/local/nginx
7.4.3.步骤三:将安装包之前编译的环境清除掉
cd /app/nginx/core/nginx-1.24.0make clean# 卸载nginx的有关依赖yum remove nginx
八、Nginx目录结构分析
8.1.Nginx目录结构
# 安装tree工具展示目录结构yum -y install tree# 查看centos系统上的文件目录结构tree /usr/local/nginx# 显示所有文件和目录tree /usr/local/nginx -a
8.2.nginx所有配置文件目录
[root@192 sbin]# tree /usr/local/nginx/usr/local/nginx├── client_body_temp├── conf # 用来存放配置文件相关的│ ├── fastcgi.conf # fastcgi相关配置文件│ ├── fastcgi.conf.default # fastcgi.conf的备份文件│ ├── fastcgi_params # fastcgi的参数文件│ ├── fastcgi_params.default # fastcgi的参数备份文件│ ├── koi-utf │ ├── koi-win│ ├── mime.types # 媒体类型,记录的是HTTP协议中的Content-Type的值和文件后缀名的对应关系│ ├── mime.types.default # mime.types的备份文件│ ├── nginx.conf # 这个是Nginx的核心配置文件│ ├── nginx.conf.default # nginx.conf的备份文件│ ├── scgi_params # scgi的参数文件│ ├── scgi_params.default # scgi的参数备份文件│ ├── uwsgi_params # uwsgi的参数文件│ ├── uwsgi_params.default # uwsgi的参数备份文件│ └── win-utf # koi-utf、koi-win、win-utf这三个文件都是与编码转换映射相关的配置文件,用来将一种编码转换成另一种编码├── fastcgi_temp├── html # 存放nginx自带的两个静态的html页面│ ├── 50x.html # 访问失败后的失败页面│ └── index.html # 成功访问的默认首页├── logs # 记录入门的文件,当nginx服务器启动后,这里面会有 access.log error.log 和nginx.pid三个文件出现│ ├── access.log # 访问日志│ ├── error.log # 错误日志│ └── nginx.pid # nginx进程的PID├── proxy_temp├── sbin # nginx的主程序│ └── nginx # nginx是用来控制Nginx的启动和停止等相关的命令├── scgi_temp└── uwsgi_temp
# 查看Nginx的PIDmore /usr/local/nginx/logs/nginx.pid# 查看日志tail -f /usr/local/nginx/logs/access.logtail -f /usr/local/nginx/logs/error.log
8.3.nginx.conf
Nginx的核心配置文件默认是放在/usr/local/nginx/conf/nginx.conf
vi /usr/local/nginx/conf/nginx.conf
worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }}
8.4.Nginx基础配置文件nginx.conf 解读
# 指令名指令值; #全局块,主要设置Nginx服务器整体运行的配置指令worker_processes 1; # 默认为1,表示开启一个业务进程# events块,主要设置,Nginx服务器与用户的网络连接,这一部分对Nginx服务器的性能影响较大events { # 事件驱动模块accept_mutex on; #设置Nginx网络连接序列化,防止多个进程对连接的争抢multi_accept on; #设置Nginx的worker进程是否可以同时接收多个网络请求worker_connections 1024; # 设置Nginx单个worker进程最大的连接数use epoll; #设置Nginx使用的事件驱动模型,使用epoll函数来优化Ngin}# http块,是Nginx服务器配置中的重要部分,代理、缓存、日志记录、第三方模块配置... http { include mime.types; # 引入http mime类型 default_type application/octet-stream; # 如果mime类型没有匹配上,默认使用二进制流的方式传输 sendfile on; # 使用limux的sendfile(socket,file,len)高效网络传输,也就是数据0拷贝 tcp_nopush on; # 主要是用来提升网络包的传输效率 tcp_nodelay on; # 提高网络包传输的实时性 keepalive_timeout 65; include nginx_gzip.conf;# server块,是Nginx配置和虚拟主机vhost相关的内容 server { # 虚拟主机配置 listen 80; # 监听端口号80 server_name localhost; # 域名、主机名 # location块,基于Nginx服务器接收请求字符串与location后面的值进行匹配,对特定请求进行处理 location / { # 匹配路径 root html; # 文件根目录 index index.html index.htm; # 默认页名称 } error_page 500 502 503 504 /50x.html; # 报编码错误对应页面 location = /50x.html { root html; } }}
nginx_gzip.conf
# Gzip压缩功能的实例配置gzip on; #开启gzip功能gzip_types *; #压缩源文件类型,根据具体的访问资源类型设定gzip_comp_level 6; #gzip压缩级别gzip_min_length 1024; #进行压缩响应页面的最小长度,content-lengthgzip_buffers 4 16K; #缓存空间大小gzip_http_version 1.1; #指定压缩响应所需要的最低HTTP请求版本gzip_vary on; #往头信息中添加压缩标识gzip_disable "MSIE [1-6]\."; #对IE6以下的版本都不进行压缩gzip_proxied off; #nginx作为反向代理压缩服务端返回数据的条件
gzip on;gzip_types *;gzip_comp_level 6;gzip_min_length 1024;gzip_buffers 4 16K;gzip_http_version 1.1;gzip_vary on;gzip_disable "MSIE [1-6]\.";gzip_proxied off;
九、Nginx服务器版本升级和新增模块
需求:Nginx的版本最开始使用的是nginx-1.22.1,由于服务升级,需要将Nginx的版本升级到nginx-1.24.0,要求Nginx不能中断提供服务。
为了应对上述的需求,这里我们给大家提供两种解决方案:
方案一:使用Nginx服务信号完成Nginx的升级
方案二:使用Nginx安装目录的make命令完成升级
9.1.环境准备
9.1.1.先准备两个版本的Nginx分别是 1.22.1和1.24.0
9.1.2.使用Nginx源码安装的方式将1.22.1版本安装成功并正确访问
# 进入安装目录,指定编译参数,按照自己需求./configure --prefix=/usr/local/nginx \--sbin-path=/usr/local/nginx/sbin/nginx \--modules-path=/usr/local/nginx/modules \--conf-path=/usr/local/nginx/conf/nginx.conf \--error-log-path=/usr/local/nginx/logs/error.log \--http-log-path=/usr/local/nginx/logs/access.log \--pid-path=/usr/local/nginx/logs/nginx.pid \--lock-path=/usr/local/nginx/logs/nginx.lock \--with-http_gzip_static_module \--with-http_ssl_module \--with-stream
make && make install
9.1.3.将Nginx1.24.0进行参数配置和编译,不需要进行安装。
# 进入安装目录,指定编译参数,按照自己需求./configure --prefix=/usr/local/nginx \--sbin-path=/usr/local/nginx/sbin/nginx \--modules-path=/usr/local/nginx/modules \--conf-path=/usr/local/nginx/conf/nginx.conf \--error-log-path=/usr/local/nginx/logs/error.log \--http-log-path=/usr/local/nginx/logs/access.log \--pid-path=/usr/local/nginx/logs/nginx.pid \--lock-path=/usr/local/nginx/logs/nginx.lock \--with-http_gzip_static_module \--with-http_ssl_module \--with-stream
# 不需要进行安装,直接makemake
9.2.方案一:使用Nginx服务信号进行升级
9.2.1.将1.22.1版本的sbin目录下的nginx进行备份
cd /usr/local/nginx/sbinmv nginx nginxold
9.2.2.将Nginx1.24.0安装目录编译后的objs目录下的nginx文件,拷贝到原来/usr/local/nginx/sbin
目录下
cd /nginx/core/nginx-1.24.0/objscp nginx /usr/local/nginx/sbin
9.2.3.发送信号USR2给Nginx的1.22.1版本对应的master进程
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
9.2.4.发送信号QUIT给Nginx的1.22.1版本对应的master进程
kill -QUIT `more /usr/local/logs/nginx.pid.oldbin`
9.3.方案二:使用Nginx安装目录的make upgrade命令完成升级
9.3.1.将1.22.1版本的sbin目录下的nginx进行备份
cd /usr/local/nginx/sbinmv nginx nginxold
9.3.2.将Nginx1.24.0安装目录编译后的objs目录下的nginx文件,拷贝到原来/usr/local/nginx/sbin
目录下
cd /nginx/core/nginx-1.24.0/objscp nginx /usr/local/nginx/sbin
9.3.3.进入到安装目录,执行make upgrade
make upgrade
9.3.4.查看是否更新成功
cd /usr/local/nginx/sbin./nginx -v
十、Nginx安装成系统服务
10.1.创建脚本
vi /usr/lib/systemd/system/nginx.service
10.2.服务脚本内容
[Unit]Description=nginx web serviceDocumentation=http://nginx.org/en/docs/After=network.target[Service]Type=forkingPIDFile=/usr/local/nginx/logs/nginx.pidExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.confExecStart=/usr/local/nginx/sbin/nginxExecReload=/usr/local/nginx/sbin/nginx -s reloadExecStop=/usr/local/nginx/sbin/nginx -s stopPrivateTmp=true[Install]WantedBy=default.target
[Unit]:服务的说明Description:描述服务After:描述服务类别[Service]服务运行参数的设置Type=forking是后台运行的形式ExecStartpre是检查配置文件ExecStart为服务的具体运行命令ExecReload为重启命令ExecStop为停止命令PrivateTmp=True表示给服务分配独立的临时空间注意:[Service]的启动、重启、停止命令全部要求使用绝对路径[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
10.3.进行权限设置
chmod 755 /usr/lib/systemd/system/nginx.service
10.4.开机启动
# 重新加载系统服务systemctl daemon-reload# 启动服务systemctl start nginx#停止systemctl stop nginx#重启systemctl restart nginx#重新加载配置文件systemctl reload nginx# 查看nginx状态systemctl status nginx# 开机启动systemctl enable nginx.service# 查看nginx是否启动ps -ef | grep nginx
接下来我将给各位同学划分一张学习计划表!
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
阶段三:顶级网络安全工程师
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉【整整282G!】网络安全&黑客技术小白到大神全套资料,免费分享!
学习资料分享
当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。