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

相关推荐
Justin_191 小时前
Linux-Shell编程之sed和awk
linux·运维·服务器
半桔2 小时前
【Linux手册】消息队列从原理到模式:底层逻辑、接口实战与责任链模式的设计艺术
java·linux·运维·服务器
华纳云IDC服务商3 小时前
Linux服务器的系统安全强化超详细教程
linux·服务器·系统安全
衍余未了3 小时前
k8s镜像推送到阿里云,使用ctr推送镜像到阿里云
linux·运维·服务器
Forever_Hopeful3 小时前
【C 语言生成指定范围随机数(整数 + 小数):原理、实现与避坑指南】
服务器·c语言·开发语言
yiqiqukanhaiba3 小时前
Linux编程笔记1-概念&数据类型&输入输出
linux·运维·服务器
乌萨奇也要立志学C++3 小时前
【Linux】进程概念(一):从冯诺依曼体系到 PCB 的进程核心解析
linux·运维·服务器
游九尘3 小时前
服务器都是用的iis, 前端部署后报跨域,不是用同一个服务器 是前端项目的服务器做Nginx转发,还是后端项目的服务器做Nginx转发?
服务器·前端·nginx
三坛海会大神5553 小时前
nginx中配置https详解:配置SSL/TLS证书
nginx·https·ssl
tangweiguo030519874 小时前
Django REST Framework 构建安卓应用后端API:从开发到部署的完整实战指南
服务器·后端·python·django