@@ -39,99 +39,99 @@ echo "Install reqs..." && apt-get -y install wget zip unzip build-essential libs
3939echo " Install reqs..." && apt-get install -y libtool pkg-config make cmake automake autoconf > /dev/null 2>&1
4040echo " Install reqs..." && apt-get install -y libyajl-dev ssdeep zlib1g-dev libxslt1-dev libgd-dev libgeoip-dev liblmdb-dev libfuzzy-dev libmaxminddb-dev libcurl4-openssl-dev libxml2 libxml2-dev libpcre3-dev mercurial libpcre2-dev libc-ares-dev libre2-dev rsync > /dev/null 2>&1
4141# ====================================================================================
42- mkdir -p $GITHUB_WORKSPACE /nginx_source
43- mkdir -p $GITHUB_WORKSPACE /nginx_mods
42+ mkdir -p $NGX_WORK_FOLDER /nginx_source
43+ mkdir -p $NGX_WORK_FOLDER /nginx_mods
4444# ====================================================================================
45- if [ ! -d " $GITHUB_WORKSPACE /nginx_source/nginx-${NGINX_VERSION} " ]; then
46- cd $GITHUB_WORKSPACE /nginx_source; echo " Downloading Nginx v${NGINX_VERSION} ..." ; wget https://nginx.org/download/nginx-${NGINX_VERSION} .tar.gz > /dev/null 2>&1 ; tar xf nginx-${NGINX_VERSION} .tar.gz && rm -Rf nginx-${NGINX_VERSION} .tar.gz
45+ if [ ! -d " $NGX_WORK_FOLDER /nginx_source/nginx-${NGINX_VERSION} " ]; then
46+ cd $NGX_WORK_FOLDER /nginx_source; echo " Downloading Nginx v${NGINX_VERSION} ..." ; wget https://nginx.org/download/nginx-${NGINX_VERSION} .tar.gz > /dev/null 2>&1 ; tar xf nginx-${NGINX_VERSION} .tar.gz && rm -Rf nginx-${NGINX_VERSION} .tar.gz
4747else
4848 echo " nginx-${NGINX_VERSION} already exists, skipping download."
4949fi
5050# ====================================================================================
5151# BORINGSSL
5252
53- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/boringssl" ]; then
54- cd $GITHUB_WORKSPACE /nginx_mods; git clone https://boringssl.googlesource.com/boringssl > /dev/null 2>&1
55- cd $GITHUB_WORKSPACE /nginx_mods/boringssl; mkdir -p build; cd build; cmake .. > /dev/null 2>&1 ; echo " Building BoringSSL..." && make -j$CORES > /dev/null 2>&1
56- mkdir -p " $GITHUB_WORKSPACE /nginx_mods/boringssl/.openssl/lib"
57- cd " $GITHUB_WORKSPACE /nginx_mods/boringssl/.openssl" ; ln -s ../include include
58- cd " $GITHUB_WORKSPACE /nginx_mods/boringssl" ; cp " build/libcrypto.a" " .openssl/lib" ; cp " build/libssl.a" " .openssl/lib"
53+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/boringssl" ]; then
54+ cd $NGX_WORK_FOLDER /nginx_mods; git clone https://boringssl.googlesource.com/boringssl > /dev/null 2>&1
55+ cd $NGX_WORK_FOLDER /nginx_mods/boringssl; mkdir -p build; cd build; cmake .. > /dev/null 2>&1 ; echo " Building BoringSSL..." && make -j$CORES > /dev/null 2>&1
56+ mkdir -p " $NGX_WORK_FOLDER /nginx_mods/boringssl/.openssl/lib"
57+ cd " $NGX_WORK_FOLDER /nginx_mods/boringssl/.openssl" ; ln -s ../include include
58+ cd " $NGX_WORK_FOLDER /nginx_mods/boringssl" ; cp " build/libcrypto.a" " .openssl/lib" ; cp " build/libssl.a" " .openssl/lib"
5959else
6060 echo " BoringSSL already exists, skipping download."
6161fi
6262# ====================================================================================
6363# ZLIB
64- # cd $GITHUB_WORKSPACE /nginx_mods && echo "Downloading ZLIB..." && wget http://zlib.net/current/zlib.tar.gz > /dev/null 2>&1
65- # cd $GITHUB_WORKSPACE /nginx_mods && tar xf zlib.tar.gz; rm -Rf zlib.tar.gz; mv zlib-* zlib
66- # cd $GITHUB_WORKSPACE /nginx_mods/zlib && CFLAGS=-fPIC CXXFLAGS=-fPIC CPPFLAGS="-fPIC" ./configure > /dev/null 2>&1; make -j$CORES > /dev/null 2>&1; make install > /dev/null 2>&1
67- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/zlib" ]; then
68- cd $GITHUB_WORKSPACE /nginx_mods && echo " Downloading ZLIB..." && git clone https://github.com/cloudflare/zlib.git > /dev/null 2>&1
69- cd $GITHUB_WORKSPACE /nginx_mods/zlib && CFLAGS=-fPIC CXXFLAGS=-fPIC CPPFLAGS=" -fPIC" ./configure > /dev/null 2>&1 ; make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
64+ # cd $NGX_WORK_FOLDER /nginx_mods && echo "Downloading ZLIB..." && wget http://zlib.net/current/zlib.tar.gz > /dev/null 2>&1
65+ # cd $NGX_WORK_FOLDER /nginx_mods && tar xf zlib.tar.gz; rm -Rf zlib.tar.gz; mv zlib-* zlib
66+ # cd $NGX_WORK_FOLDER /nginx_mods/zlib && CFLAGS=-fPIC CXXFLAGS=-fPIC CPPFLAGS="-fPIC" ./configure > /dev/null 2>&1; make -j$CORES > /dev/null 2>&1; make install > /dev/null 2>&1
67+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/zlib" ]; then
68+ cd $NGX_WORK_FOLDER /nginx_mods && echo " Downloading ZLIB..." && git clone https://github.com/cloudflare/zlib.git > /dev/null 2>&1
69+ cd $NGX_WORK_FOLDER /nginx_mods/zlib && CFLAGS=-fPIC CXXFLAGS=-fPIC CPPFLAGS=" -fPIC" ./configure > /dev/null 2>&1 ; make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
7070else
7171 echo " ZLIB already exists, skipping download."
7272fi
7373# ====================================================================================
7474# SYSTEM_MODSECURITY
75- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/ModSecurity" ]; then
76- cd $GITHUB_WORKSPACE /nginx_mods; echo " Downloading ModSecurity..." && git clone --depth 1 -b v3/master --single-branch https://github.com/SpiderLabs/ModSecurity.git > /dev/null 2>&1
77- cd $GITHUB_WORKSPACE /nginx_mods/ModSecurity; git submodule init > /dev/null 2>&1 ; git submodule update > /dev/null 2>&1 ; ./build.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building ModSecurity..." && make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
75+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/ModSecurity" ]; then
76+ cd $NGX_WORK_FOLDER /nginx_mods; echo " Downloading ModSecurity..." && git clone --depth 1 -b v3/master --single-branch https://github.com/SpiderLabs/ModSecurity.git > /dev/null 2>&1
77+ cd $NGX_WORK_FOLDER /nginx_mods/ModSecurity; git submodule init > /dev/null 2>&1 ; git submodule update > /dev/null 2>&1 ; ./build.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building ModSecurity..." && make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
7878else
7979 echo " ModSecurity already exists, skipping download."
8080fi
8181# ====================================================================================
8282# SYSTEM_PCRE
83- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} " ]; then
84- cd $GITHUB_WORKSPACE /nginx_mods && echo " Downloading ZLIB..." && wget https://github.com/PCRE2Project/pcre2/archive/refs/tags/pcre2-${SYSTEM_PCRE} .tar.gz > /dev/null 2>&1
85- cd $GITHUB_WORKSPACE /nginx_mods && tar xf pcre2-${SYSTEM_PCRE} .tar.gz; rm -Rf pcre2-${SYSTEM_PCRE} .tar.gz
86- cd $GITHUB_WORKSPACE /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} && ./autogen.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building PCRE2..." && make -j$CORES > /dev/null 2>&1
83+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} " ]; then
84+ cd $NGX_WORK_FOLDER /nginx_mods && echo " Downloading ZLIB..." && wget https://github.com/PCRE2Project/pcre2/archive/refs/tags/pcre2-${SYSTEM_PCRE} .tar.gz > /dev/null 2>&1
85+ cd $NGX_WORK_FOLDER /nginx_mods && tar xf pcre2-${SYSTEM_PCRE} .tar.gz; rm -Rf pcre2-${SYSTEM_PCRE} .tar.gz
86+ cd $NGX_WORK_FOLDER /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} && ./autogen.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building PCRE2..." && make -j$CORES > /dev/null 2>&1
8787else
8888 echo " PCRE2 already exists, skipping download."
8989fi
9090# ====================================================================================
9191# LibInjection
92- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} " ]; then
93- cd $GITHUB_WORKSPACE /nginx_mods && echo " Downloading LibInjection..." && git clone https://github.com/libinjection/libinjection.git > /dev/null 2>&1
94- cd $GITHUB_WORKSPACE /nginx_mods/libinjection && ./autogen.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building LibInjection..." && make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
92+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} " ]; then
93+ cd $NGX_WORK_FOLDER /nginx_mods && echo " Downloading LibInjection..." && git clone https://github.com/libinjection/libinjection.git > /dev/null 2>&1
94+ cd $NGX_WORK_FOLDER /nginx_mods/libinjection && ./autogen.sh > /dev/null 2>&1 ; ./configure > /dev/null 2>&1 ; echo " Building LibInjection..." && make -j$CORES > /dev/null 2>&1 ; make install > /dev/null 2>&1
9595else
9696 echo " LibInjection already exists, skipping download."
9797fi
9898# ====================================================================================
9999# NGX_MOD_MODSECURITY
100- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/ModSecurity-nginx-${NGX_MOD_MODSECURITY} " ]; then
101- cd $GITHUB_WORKSPACE /nginx_mods/; echo " Downloading NgxModSec v${NGX_MOD_MODSECURITY} ..." && wget https://github.com/SpiderLabs/ModSecurity-nginx/archive/refs/tags/v${NGX_MOD_MODSECURITY} .tar.gz > /dev/null 2>&1 ; tar xf v${NGX_MOD_MODSECURITY} .tar.gz; rm -Rf v${NGX_MOD_MODSECURITY} .tar.gz
100+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/ModSecurity-nginx-${NGX_MOD_MODSECURITY} " ]; then
101+ cd $NGX_WORK_FOLDER /nginx_mods/; echo " Downloading NgxModSec v${NGX_MOD_MODSECURITY} ..." && wget https://github.com/SpiderLabs/ModSecurity-nginx/archive/refs/tags/v${NGX_MOD_MODSECURITY} .tar.gz > /dev/null 2>&1 ; tar xf v${NGX_MOD_MODSECURITY} .tar.gz; rm -Rf v${NGX_MOD_MODSECURITY} .tar.gz
102102else
103103 echo " ngx_modsecurity already exists, skipping download."
104104fi
105105# ====================================================================================
106106# NGX_MOD_HEADERS_MORE
107- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/headers-more-nginx-module-${NGX_MOD_HEADERS_MORE} " ]; then
108- cd $GITHUB_WORKSPACE /nginx_mods/; echo " Downloading Headers v${NGX_MOD_HEADERS_MORE} ..." && wget https://github.com/openresty/headers-more-nginx-module/archive/refs/tags/v${NGX_MOD_HEADERS_MORE} .tar.gz > /dev/null 2>&1 ; tar xf v${NGX_MOD_HEADERS_MORE} .tar.gz; rm -Rf v${NGX_MOD_HEADERS_MORE} .tar.gz
107+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/headers-more-nginx-module-${NGX_MOD_HEADERS_MORE} " ]; then
108+ cd $NGX_WORK_FOLDER /nginx_mods/; echo " Downloading Headers v${NGX_MOD_HEADERS_MORE} ..." && wget https://github.com/openresty/headers-more-nginx-module/archive/refs/tags/v${NGX_MOD_HEADERS_MORE} .tar.gz > /dev/null 2>&1 ; tar xf v${NGX_MOD_HEADERS_MORE} .tar.gz; rm -Rf v${NGX_MOD_HEADERS_MORE} .tar.gz
109109else
110110 echo " ngx_headers_more already exists, skipping download."
111111fi
112112# ====================================================================================
113113# Brotli
114- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/ngx_brotli" ]; then
115- cd $GITHUB_WORKSPACE /nginx_mods/; echo " Downloading Brotli..." && git clone https://github.com/google/ngx_brotli.git > /dev/null 2>&1 ; cd $GITHUB_WORKSPACE /nginx_mods/ngx_brotli && git submodule update --init > /dev/null 2>&1
114+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/ngx_brotli" ]; then
115+ cd $NGX_WORK_FOLDER /nginx_mods/; echo " Downloading Brotli..." && git clone https://github.com/google/ngx_brotli.git > /dev/null 2>&1 ; cd $NGX_WORK_FOLDER /nginx_mods/ngx_brotli && git submodule update --init > /dev/null 2>&1
116116else
117117 echo " ngx_brotli already exists, skipping download."
118118fi
119119# ====================================================================================
120120# NGX_MOD_GEOIP2
121- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/ngx_http_geoip2_module-${NGX_MOD_GEOIP2} " ]; then
122- cd $GITHUB_WORKSPACE /nginx_mods/; echo " Downloading GEOIP2 v${NGX_MOD_GEOIP2} ..." && wget https://github.com/leev/ngx_http_geoip2_module/archive/refs/tags/${NGX_MOD_GEOIP2} .tar.gz > /dev/null 2>&1 ; tar xf ${NGX_MOD_GEOIP2} .tar.gz; rm -Rf ${NGX_MOD_GEOIP2} .tar.gz
121+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/ngx_http_geoip2_module-${NGX_MOD_GEOIP2} " ]; then
122+ cd $NGX_WORK_FOLDER /nginx_mods/; echo " Downloading GEOIP2 v${NGX_MOD_GEOIP2} ..." && wget https://github.com/leev/ngx_http_geoip2_module/archive/refs/tags/${NGX_MOD_GEOIP2} .tar.gz > /dev/null 2>&1 ; tar xf ${NGX_MOD_GEOIP2} .tar.gz; rm -Rf ${NGX_MOD_GEOIP2} .tar.gz
123123else
124124 echo " ngx_geoip2 already exists, skipping download."
125125fi
126126# ====================================================================================
127127# Naxsi
128- if [ ! -d " $GITHUB_WORKSPACE /nginx_mods/naxsi/naxsi_src" ]; then
129- cd $GITHUB_WORKSPACE /nginx_mods/; echo " Downloading Naxsi..." && git clone --recurse-submodules https://github.com/wargio/naxsi.git naxsi > /dev/null 2>&1
128+ if [ ! -d " $NGX_WORK_FOLDER /nginx_mods/naxsi/naxsi_src" ]; then
129+ cd $NGX_WORK_FOLDER /nginx_mods/; echo " Downloading Naxsi..." && git clone --recurse-submodules https://github.com/wargio/naxsi.git naxsi > /dev/null 2>&1
130130else
131131 echo " ngx_naxsi already exists, skipping download."
132132fi
133133# ====================================================================================
134- echo " Building Nginx v${NGINX_VERSION} ..." && cd $GITHUB_WORKSPACE /nginx_source/nginx-${NGINX_VERSION} && CFLAGS=-fPIC CXXFLAGS=-fPIC ./configure --with-compat \
134+ echo " Building Nginx v${NGINX_VERSION} ..." && cd $NGX_WORK_FOLDER /nginx_source/nginx-${NGINX_VERSION} && CFLAGS=-fPIC CXXFLAGS=-fPIC ./configure --with-compat \
135135 --user=raweb \
136136 --group=raweb \
137137 --build=" Raweb Webserver v$NGINX_VERSION " \
@@ -147,10 +147,10 @@ echo "Building Nginx v${NGINX_VERSION}..." && cd $GITHUB_WORKSPACE/nginx_source/
147147 --http-fastcgi-temp-path=/var/tmp/raweb/body/fastcgi \
148148 --http-uwsgi-temp-path=/var/tmp/raweb/body/uwsgi \
149149 --http-scgi-temp-path=/var/tmp/raweb/body/scgi \
150- --with-openssl=$GITHUB_WORKSPACE /nginx_mods/boringssl \
150+ --with-openssl=$NGX_WORK_FOLDER /nginx_mods/boringssl \
151151 --with-pcre \
152- --with-pcre=$GITHUB_WORKSPACE /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} \
153- --with-zlib=$GITHUB_WORKSPACE /nginx_mods/zlib \
152+ --with-pcre=$NGX_WORK_FOLDER /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} \
153+ --with-zlib=$NGX_WORK_FOLDER /nginx_mods/zlib \
154154 --with-poll_module \
155155 --with-threads \
156156 --with-file-aio \
@@ -180,15 +180,15 @@ echo "Building Nginx v${NGINX_VERSION}..." && cd $GITHUB_WORKSPACE/nginx_source/
180180 --with-stream_realip_module \
181181 --with-stream_geoip_module \
182182 --with-stream_ssl_preread_module \
183- --add-module=$GITHUB_WORKSPACE /nginx_mods/ngx_http_geoip2_module-${NGX_MOD_GEOIP2} \
184- --add-module=$GITHUB_WORKSPACE /nginx_mods/headers-more-nginx-module-${NGX_MOD_HEADERS_MORE} \
185- --add-module=$GITHUB_WORKSPACE /nginx_mods/ModSecurity-nginx-${NGX_MOD_MODSECURITY} \
186- --add-module=$GITHUB_WORKSPACE /nginx_mods/naxsi/naxsi_src \
187- --add-module=$GITHUB_WORKSPACE /nginx_mods/ngx_brotli \
188- --with-cc-opt=" -O3 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC -I $GITHUB_WORKSPACE /nginx_mods/boringssl/.openssl/include/" \
189- --with-ld-opt=" -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie -L $GITHUB_WORKSPACE /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} /.libs -lpcre2-8 -L/lib/x86_64-linux-gnu -lpcre -L $GITHUB_WORKSPACE /nginx_mods/boringssl/.openssl/lib/ -lstdc++" > /dev/null 2>&1
190- touch $GITHUB_WORKSPACE /nginx_mods/boringssl/.openssl/include/openssl/ssl.h
191- make -j$CORES > /dev/null 2>&1 ; make install; make clean > /dev/null 2>&1
183+ --add-module=$NGX_WORK_FOLDER /nginx_mods/ngx_http_geoip2_module-${NGX_MOD_GEOIP2} \
184+ --add-module=$NGX_WORK_FOLDER /nginx_mods/headers-more-nginx-module-${NGX_MOD_HEADERS_MORE} \
185+ --add-module=$NGX_WORK_FOLDER /nginx_mods/ModSecurity-nginx-${NGX_MOD_MODSECURITY} \
186+ --add-module=$NGX_WORK_FOLDER /nginx_mods/naxsi/naxsi_src \
187+ --add-module=$NGX_WORK_FOLDER /nginx_mods/ngx_brotli \
188+ --with-cc-opt=" -O3 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC -I $NGX_WORK_FOLDER /nginx_mods/boringssl/.openssl/include/" \
189+ --with-ld-opt=" -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie -L $NGX_WORK_FOLDER /nginx_mods/pcre2-pcre2-${SYSTEM_PCRE} /.libs -lpcre2-8 -L/lib/x86_64-linux-gnu -lpcre -L $NGX_WORK_FOLDER /nginx_mods/boringssl/.openssl/lib/ -lstdc++"
190+ touch $NGX_WORK_FOLDER /nginx_mods/boringssl/.openssl/include/openssl/ssl.h
191+ make -j$CORES ; make install; make clean > /dev/null 2>&1
192192 unset NGINX
193193# ====================================================================================
194194DEB_BUILD_DIR=" $GITHUB_WORKSPACE /debbuild"
0 commit comments