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

相关推荐
吳所畏惧7 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈7 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
维天说8 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zhang~Ling8 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
爱写代码的阿森8 小时前
鸿蒙三方库 | harmony-utils之PreferencesUtil首选项数据监听详解
服务器·华为·harmonyos·鸿蒙·huawei
爱写代码的森8 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
郝亚军9 小时前
使用Vue 3和Nginx打包和部署Vue.js项目的一般步骤
前端·vue.js·nginx
吠品9 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
重生的黑客10 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice