Ubuntu中安装Nginx实现靶场的端口转发及其过程中错误的处理

1、安装Nginx需要的配置文件和库:

sudo apt-get update

sudo apt-get install -y g++ libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev

2、下载Nginx:

wget -c https://nginx.org/download/nginx-1.18.0.tar.gz

3、解压Nginx:

tar -zxvf nginx-1.18.0.tar.gz

4、编译与安装Nginx:

进入解压的目录:

使用./执行configure:

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_sub_module --with-http_gzip_static_module --with-pcre

编译与安装:

make && make install

编译过程中可能会出现如下错误:

原因:是将警告当成了错误处理

Wall 表示打开gcc的所有警告

Werror,它要求gcc将所有的警告当成错误进行处理

解决方法:打开 nginx的安装目录/objs/Makefile,去掉CFLAGS中的- Werror,再重新make

重新make,编译成功

在该文件夹下使用ls -l objs/命令 会出现一个nginx的可执行文件

安装:make install

5、进入到安装nginx目录下的sbin目录,默认路径为:/usr/local/nginx/sbin/

6、在该目录下启动nginx

./nginx

注意:如果存在apache等,可能会导致80端口被占用,因此需要关闭掉占用80端口的进程

bash 复制代码
查看端口进程:netstat -tulnp
关闭进程:kill PID

重新启动nginx:

7、访问IP,出现如下界面:

8、端口转发:

进入与sbin同级目录下的conf目录:

编辑nginx,.conf文件:

注意不能直接单纯的将监听端口改为8000,因为8000端口已经被靶场占用

我们只能通过端口转发来实现,需要修改nginx.conf文件,添加具体内容如下:

proxy_set_header Host $host;

proxy_pass http://localhost:8000;

添加后,当我们访问80端口即可实现向8000端口转发

9、重启nginx:

./nginx -s reload

注意:需要回到/usr/local/nginx/sbin/目录下执行该命令

10、再次访问地址,即可登录靶场:

相关推荐
云宏信息14 小时前
超融合和存算分离怎么选?从性能、可靠性、扩展、成本四个维度讲述如何精准匹配架构选型 | 附企业降本轻量云方案
运维·服务器·架构·云计算
咸鱼梦想家π15 小时前
Linux开发工具(下)
linux·运维·服务器
云飞云共享云桌面16 小时前
机械制造研发部门:一台SolidWorks云主机替代 10 台传统图形工作站
运维·服务器·网络·3d·自动化·制造
j7~16 小时前
【ProtoBuf】(篇一)初识 ProtoBuf
运维·服务器·序列化·protobuf·protobuf的适用特点
丰锋ff16 小时前
用户管理命令
linux·运维·服务器
BcoreOS16 小时前
‌新手必看:Debian 13 虚拟机 SSH 连不上?我是怎么一步步调试成功的
服务器
迪菲赫尔曼16 小时前
【基础篇 08】让VS Code连接服务器:界面在本地,文件保存到远端
运维·服务器·vscode·yolo·论文·教程·ultralyt
东方佑17 小时前
去魅:工具调用、Agent 调用、A2A、MCP、Harness 到底都是什么
服务器·网络·数据库
H.莓飛17 小时前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
Dxy123931021618 小时前
Linux 压缩解压相关命令介绍
linux·运维·服务器