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、再次访问地址,即可登录靶场:

相关推荐
Ruiery3 小时前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包3 小时前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
Wang's Blog4 小时前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx
MicrosoftCloud4 小时前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
91刘仁德6 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
Lsetea7 小时前
Nginx加载证书时报SSL_CTX_use_PrivateKey_file失败:私钥配对与权限排查
nginx·https·ssl证书·私钥·证书部署
吴声子夜歌10 小时前
Nginx应用与运维——Nginx负载均衡应用实战(二)
运维·nginx·负载均衡
lisanmengmeng10 小时前
NRPE 添加命令(一)
linux·运维·服务器
树下水月11 小时前
Typora破解
linux·服务器·前端
沫璃染墨12 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理