Kaynaktan nginx derlemenin sakıncası yoksa, ngx_http_proxy_connect_module yükleyebilirsiniz . Aşağıdakiler benim için Ahududu Pi'deki Debian 9 "Stretch" te çalıştı (/etc/apt/sources.list'e deb-src URL'lerini ekledikten ve apt-get update yaptıktan sonra):
cd /tmp &&
apt-get source nginx &&
git clone https://github.com/chobits/ngx_http_proxy_connect_module &&
cd nginx-* &&
patch -p1 < ../ngx_http_proxy_connect_module/proxy_connect.patch &&
sudo apt-get install libpcre3-dev &&
./configure --add-module=/tmp/ngx_http_proxy_connect_module &&
make && sudo make install
Ardından düzenleyin /usr/local/nginx/conf/nginx.conf
ve şöyle görünmesini sağlayın (Engellemek istediğiniz, hem SSL hem de SSL olmayan proxy'lerle çalışan bir örnek alan ekledim):
user www-data;
worker_processes auto;
events { }
http {
server_names_hash_bucket_size 128;
server {
listen 8888;
server_name spam.example.com *.spam.example.com;
server_name spam2.example.com *.spam2.example.com;
access_log off;
return 404;
}
server {
listen 8888;
server_name ~.+;
proxy_connect;
proxy_max_temp_file_size 0;
resolver 8.8.8.8;
location / {
proxy_pass http://$http_host;
proxy_set_header Host $http_host;
}
}
}
O zaman koş /usr/local/nginx/sbin/nginx
. Ayrıca nginx
80 numaralı bağlantı noktasında bir üretim web sunucusu çalıştırıyorsanız ve bununla uğraşma riskini almak istemiyorsanız Debian'ın stok paketi ile bir arada bulunacaktır (ancak /usr/local
sürümü açılışta ayrı başlattığınızdan emin olun ); alternatif olarak, daha fazla yapılandırma ile derlediğiniz nginx'ten her iki servisi de çalıştırabilirsiniz. Ancak derlenmiş nginx'inizi güvenlik duvarınızın trafiğe izin verdiği bir bağlantı noktasında çalışacak şekilde ayarlarsanız, Debian paket sistemi artık sizin için yapmayacağından nginx güvenlik güncellemelerini manuel olarak kontrol etmeniz gerekir.