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

相关推荐
梁正雄1 小时前
6、prometheus资源规划
运维·服务器·服务发现·prometheus·监控
晨曦之旅1 小时前
零成本体验云计算!阿贝云免费服务器深度测评
运维·服务器·云计算
不懂音乐的欣赏者2 小时前
Windows 下 ROS/ROS2 开发环境最优解:WSL 比直接安装、虚拟机、双系统更优雅!
linux·windows·ubuntu·ros·wsl·ros2·双系统
神仙别闹3 小时前
基于C语言 HTTP 服务器客户端的实验
服务器·c语言·http
初听于你3 小时前
运维高级故障排除与恢复-SysRq
运维·服务器·安全
無识4 小时前
Linux-第四章web服务
linux·运维·服务器
rit84324995 小时前
在Ubuntu上配置Nginx实现开机自启功能
数据库·nginx·ubuntu
爱吃橘的橘猫5 小时前
如何解决VMware虚拟机中Linux系统终端不显示ens33 inet IP地址的问题
linux·运维·服务器·虚拟机
无聊的小坏坏5 小时前
Select 服务器实战教学:从 Socket 封装到多客户端并发
服务器·select·io多路复用
一勺菠萝丶5 小时前
芋道后端部署后总自己挂?从 Nginx 报错到 OOM Kill 的完整排查与修复(2核2G 服务器实战)
服务器·chrome·nginx