Nginx TCP转发(AlmaLinux)

背景是指一个事件或情况发生的环境或背景。

如果想在Almalinux中使用dnf安装的nginx来实现TCP端口转发(流转发)的功能,则需要从源代码进行构建。

前提——環境

OS:AlmaLinux 9.1
本作業はrootユーザで行う
クローズドの環境ではないこと
ファイアーウォールおよびSELinuxは考慮しないものとする
受信ポートを8000/tcp、転送先を192.168.1.1の10000/tcpとする

安装包

安装所需的软件包

dnf -y install wget tar gcc pcre-devel zlib-devel

关于安装软件包

パッケージ用途wgetnginxの公式ページからソースコードをDLするためtarソースコード(tar.gz)を展開するためgccソースコードをビルドする場合に必要pcre-develソースコードをビルドする場合に必要zlib-develソースコードをビルドする場合に必要

下载nginx

下载网站

使用wget进行下载。

需要下载的版本是针对稳定版本。

wget http://nginx.org/download/nginx-1.22.1.tar.gz

建立

展开

tar zxvf nginx-1.22.1.tar.gz

先展开移动

cd nginx-1.22.1

为了编译,创建一个名为”Makefile”的文件。

./configure --with-stream --without-stream_geo_module --without-stream_map_module

编译和安装

make && make install

前往安装目录

cd /usr/local/nginx/
ls -l

["ls-l"の結果]
drwxr-xr-x 3 root root 4096  1月 13 01:13 conf
drwxr-xr-x 2 root root 4096  1月 13 00:07 html
drwxr-xr-x 2 root root 4096  1月 14 00:45 logs
drwxr-xr-x 2 root root 4096  1月 13 00:07 sbin

TCP转发(流)的设置

编辑配置文件

cd conf
cp -p nginx.conf nginx.conf.org
vi nginx.conf

当编辑界面显示时,请将以下内容添加到最后一行。

stream {
   upstream testserver {
      server 192.168.100.1:10000;
   }

   server {
      listen       0.0.0.0:8000;
      proxy_pass   testserver;
   }
}

启动Nginx。

cd /usr/local/nginx/sbin
nginx -c /usr/local/nginx/conf/nginx.conf

确认端口

ss -nate | grep ":8000" | grep LISTEN

确认显示「0.0.0.0:8000」。

bannerAds