LINUX.ORG.RU

69
Всего сообщений: 935

Как понять на чем тормозит nginx?

Ситуация такая. Докер, из него торчит порт, нжиникс заворачивает запросы на этот порт. Так вот прямой запрос в докер работает на 400 мс быстрее чем запрос через нжиникс.

Попытка крутить ручики (в любые стороны), которые описаны в манах по оптимизациям нжиникса (число обработчиков, использование epoll и т.д.) никак на этой задержке не отражается. Что вполне логично ибо ни проц, ни ио, ни сеть не загружены.

Как понять что является причиной тормозов?

Апдейт. Тормозит ссл, поглядел число пакетов на хендшейке и длину пинга, помножил одно на другое - как раз время задержки.

 , ,

ya-betmen ()

Статика nginx

доброго времени суток , есть вот такой конфиг

server {
    listen *:80 ;
    server_name имя;
        location / { 
             proxy_pass адрес;
        }
        location ~ images\.(gif|jpg|png)$ {
            root рут каталог;
        }
      
 }

в рут каталоге второго локейшина есть 3 разных изображения разных форматов с именем 1,2,3 нужно при отсутствии какого то из изображений в указанном рут каталоге , начать искать его в другом , например где то в /opt ну или даже в /home/user , кто подскажет , есть такая фича в Nginx ? ато чет не нашел норм инфы...

 , ,

echo_ ()

Пакет прокси-сервера tengine для centos7

Собрал пакет taobao nginx - tengine

http://repo.comp-house.ru/base/rhel7/x86_64/tengine-2.2.1-5.el7.centos.x86_64... http://repo.comp-house.ru/base/rhel7/x86_64/tengine-devel-2.2.1-5.el7.centos....

Особенности сборки -

1) собраны все модули, причем модули собраны отдельным so, при этом модуль обработки изображений подтянул к себе несколько иксовых либ.

Причем запуск ldd показал, что ссылки на эти либы прописаны во всех модулях, а не только в модулях обработки изображений, то есть, список связей для всех модулей одинаковый. Из за этого пилить на подпакеты бесполезно, на зависимости это не повлияет. Скорее всего имеет смысл просто отключить сборку этих модулей, ибо ставить такие вещи, как fontconfig и libX11 для nginx не вполне халяльно, но я пока на это не решился.

2) сборка разнесена с nginx по файлам и даже по пользователям. То есть ставить/удалять можно параллельно с nginx.

3) Собран последний релиз, думаю над git master, если там есть что то полезное.

 , , ,

AVL2 ()

nginx и мобильный редирект

Есть сайт на битриксе, попросили сделать редирект c /catalog/ на /catalog_mobile/, но только с мобильных

        set $mobile_rewrite do_not_perform;

        ## chi http_user_agent for mobile / smart phones ##
        if ($http_user_agent ~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino") {
                set $mobile_rewrite perform;
        }

        if ($http_user_agent ~* "^(1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-)") {
                set $mobile_rewrite perform;
        }
        ## redirect to m.example.com ##
        if ($mobile_rewrite = perform) {
                rewrite ^/catalog/ /catalog_mobile/? redirect;
                break;
        }

редирект работает, но после редиректа не заходит в любую позицию и перекидывает опять на /catalog_mobile/

в логах при переходе в позицию

"GET /catalog/plate-vechernee-galina-plokhaya/ HTTP/1.1" 302 154 "https://site.com/catalog_mobile/" "Mozilla/5.0 (Linux; Android 6.0.1; Redmi 4 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36" "-"

"GET /catalog_mobile/ HTTP/1.1" 200 19121 "https://site.com/catalog_mobile/" "Mozilla/5.0 (Linux; Android 6.0.1; Redmi 4 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36" "-"

как это можно исправить?

 , , , ,

Garcia ()

Проксирование запроса в NGINX

Всем привет, как настроить NGINX, чтобы при запросе на location /main/dadata/*

Запрос проксировался на другой хост. При условии, что есть такое...

if ($Host = www.host.com) {
   proxy_pass http://host2.com:8080/api/1111/test/*;
}
вылетает ошибка
"proxy_pass" cannot have URI part in location given by regular expression
почитал, что можно через rewrite, но он вместо проксирования делает редирект...

 

ilovemoney ()

Правильная конфигурация сервера

Всем привет! Ситуация такая: Создается сервис что то типа аля ютуба. Который должен выдерживать очень большой трафик. Я планирую взять Ubuntu server 16.04 + ngnix + php7, php-fpm и mysql. Все это будет ставиться на VDS.

Как вы считаете такая конфигурация выдержит большой трафик или будет падать и лагать? Ubuntu выбрал чисто из-за того что всю жизнь на ней. Но чет я сомневаюсь, что она выдержит большой трафик

Если не сложно напишите какую бы так сказать «сборку ПО» использовали бы Вы.

И как бы вы реализовали репликацию всего этого, что бы не особо нагружать основной сервер?

 , , , ,

romanlinux ()

nginx alias php

итак, есть софт написан в далеком 2013 у него вебинтерфейс написанный на php, задача перенести вебинтерфейс с apache на nginx+php-fpm. Интерфейс очень чувствителен к document_root и $request_url если jни не совпадают с магическими значениями начинаются странные рандомные глюки. Первое что я попробовал был префекс локейшен с alias но это не сработало,после долгих чтений интернетов я сделал вложенный локейшен и это сработало отчасти проблема в том что не правильно формируется script_filename, была идея прибить гвоздями но некоторые важные скрипты в поддиректориях конфиг и лог тут https://gist.github.com/kinoher/1d0e12efe873741485e5b06513916931

upd.

fastcgi_split_path_info ^/forum/(.+\.php)(/.+)$;
не сработало

либо я криво написал регулярку

 

kinoher ()

С запущенным memcached - рандомно возникающая ошибка 502

Вот такое дело - веб-сервер с ЦентОСом на борту уж почти 10 лет работал и проблем вообще никаких не было... На днях юзеры стали жаловаться, что на сайте зачастила ошибка 502 - посмотрели логи и правда. На борту nginx+php-fpm, memcached. Все что только мог поперезапускал и даже сервак растартанул для гарантии - 0 эффекта. 502 в логах все больше и больше. Отсановил memcached - ошибки прекратились. Запустил - пошли. В общем - дело в нем.

Вопрос. Как быть? Правильно ли я предполагаю, что первопричина может быть в железе (память например)?

 ,

kklkkl ()

Укоротить путь - Ngnix rewrite?

Схема такая:
- стоит Ngnix в качестве reverse-proxy
- за ним стоит Tomcat

Чтобы зайти в нужную админку приходится вводить длинный путь, который, как, понимаю живёт в мозгах Tomcat(лезть в который пока нет желания): http://adminka_ot_zhelezki/long/very/long/path/index.html
Можно ли без изменений на томкате сделать так, чтобы можно было опускать «long/very/long/path/» и ходить на http://adminka_ot_zhelezki/index.html но для Tomcat чтобы всё выглядело по прежнему?

 

zolden ()

Проксирование запросов

Возникла необходимость. Обращаться с к NGINXу и пробрасывать запрос в другую прокси. Например: server { listen 8081; location /test/ { proxy_pass http://ya.ru/; } Нужно, чтобы NGINX как то посылал запрос через другую прокси. Пытался шаманить с iptables не осилил... Думаю поднять django и посылать запрос к ресурсу через прокси, и отдавать отдавать статику на запрос /test/. Есть ли идеи как можно поступить?

Схема клиент=>NGINX>пул проксей>ресурс.

 

ilovemoney ()

django-ssl-auth KeyError

Всем привет!

Никак не получается запустить тестовое приложение django-ssl-auth вместе с nginx. Постоянно говорит, что KeyError at / 'HTTP_X_SSL_USER_DN'

конфиг nginx:

server {
   server_name     10.72.14.144;
   listen          443;
   ssl on;
   ssl_certificate     /etc/nginx/ssl/django-server/root-ca.crt;
   ssl_certificate_key /etc/nginx/ssl/django-server/root-ca.key;
   ssl_client_certificate /etc/nginx/ssl/django-server/users/diakonov-i.crt;
   ssl_verify_client optional;
   ssl_password_file /etc/nginx/ssl/django-server/global.pass;
   ssl_session_timeout 5m;

   ssl_protocols SSLv3 TLSv1;
   ssl_ciphers DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:EDH-RSA-DES-CBC3-SHA:AES256-SHA:DES-CBC3-SHA:AES128-SHA:RC4-SHA:RC4-MD5;
   ssl_prefer_server_ciphers on;

   access_log      /var/log/nginx/ssl.access.log;
   error_log       /var/log/nginx/ssl.error.log;

   include         /etc/nginx/proxy.conf;
   location / {
        proxy_pass http://127.0.0.1:5000;
        proxy_redirect default;
        fastcgi_param    DN             $ssl_client_s_dn;
        proxy_set_header X-SSL-User-DN  $ssl_client_s_dn;
        fastcgi_param    VERIFIED            $ssl_client_verify;
        proxy_set_header X-SSL-Authenticated $ssl_client_verify;
        include        fastcgi_params;
   }
}

Может доустановить что забыл или флаги не те?

 , , ,

aido ()

Как передавать ip клиентов с frontend на backend в nginx ?

Такая конструкция что-то не работает как нужно (ip в логах от клиентов не появляются):

set_real_ip_from  192.168.1.4;
real_ip_header    X-Forwarded-For;

 

bdfy ()

не работает ssl в nginx

Доброго времени суток , назрел вопрос =) есть задача , с помощью nginx настроить реверс прокси + статику , суть в том что реверс прокси идет на docker containder wordpress -а , задача образовательная но хочу как то это сделать ) так вот , проблема в том что нужно добавить ssl , что я сделал , поднял контейнер и настроил (вроде бы) реверс прокси на него , добавил еще один виртуал хост где настроил статику , но ssl не поднимается (его я сгенерил через утилиту openssl) ниже конфиги:

/etc/nginx/sites-available/testhost.ru

server {
	listen 80 default_server;
	listen [::]:80 default_server;

	# SSL configuration
	listen 443 ssl default_server;
	ssl on;
	ssl_certificate /etc/nginx/ssl/nginx.crt;
	ssl_certificate_key /etc/nginx/ssl/nginx.key;
	root /var/www/testhost.ru/public_html;

	# Add index.php to the list if you are using PHP
	#index index.html index.htm index.nginx-debian.html;

	server_name testhost.ru www.testhost.ru;

	location / {
 		proxy_pass http://localhost:7373;
		
		try_files $uri $uri/ =404;
	}
	#location /static/ {
        #        root /var/www/;
        #        index index.htm index.html;
        #        autoindex on;
        # }
	# pass the PHP scripts to FastCGI server listening on 
        #127.0.0.1:9000

	#
	#location ~ \.php$ {
	#	include snippets/fastcgi-php.conf;
	#
	#	# With php7.0-cgi alone:
	#	fastcgi_pass 127.0.0.1:9000;
	#	# With php7.0-fpm:
	#	fastcgi_pass unix:/run/php/php7.0-fpm.sock;
	#}

	# deny access to .htaccess files, if Apache's document root
	# concurs with nginx's one
	#
	#location ~ /\.ht {
	#	deny all;
	#}
}


# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
#	listen 80;
#	listen [::]:80;
#
#	server_name example.com;
#
#	root /var/www/example.com;
#	index index.html;
#
#	location / {
#		try_files $uri $uri/ =404;
#	}
#}


и поднял контейнеры :

sudo docker run -d -v /docker_files/mysql:/var/lib/mysql --name=data_base1 -e MYSQL_ROOT_PASSWORD=password mysql:5.7

sudo docker run -d --name=mywp11 --link=data_base1 -p 7373:80 -e WORDPRESS_DB_HOST=data_base1 -e WORDPRESS_DB_PASSWORD=password wordpress:4.7

в итоге при переходе на 192.168.1.6 попадаем на мой вордпресс , дальше настроил статический просмотр вот так :


server {
	listen 5656 default_server;
	listen [::]:5656 default_server;

	# SSL configuration
	listen 443 ssl default_server;
	ssl on;
	ssl_certificate /etc/nginx/ssl/nginx.crt;
	ssl_certificate_key /etc/nginx/ssl/nginx.key;
	root /var/www/html/;

	# Add index.php to the list if you are using PHP
	index index.html index.htm index.nginx-debian.html;

	#server_name static.ru www.static.ru;

	#location / {
 	#	proxy_pass http://localhost:7373;
	#	
	#	try_files $uri $uri/ =404;
	#	}
	location / {
                root /var/www/html/;
                index index.htm index.html;
                autoindex on;
         }

}



вроде все работает , но есть один момент , если расcкоментировать мои настройки ssl , то при переходе по ссылке используя скажем так приставку в начале адреса https то подключение всеравно не защищено..... кто подскажет , как хотя бы запустить что бы шифровало и все , или мож у кого есть совет как лучше это сделать ))))

 , , ,

echo_ ()

Простой вопрос по nginx: исключить uri из редиректа

Есть правило, которое перенаправляет с index.php на /

 if ($request_uri ~* "^(.*\/)index\.php$") {
        return 301 $1;
    }

Как мне добавить исключение, чтобы веб-сервер не перенаправлял $host/phpmyadmin/index.php ?

Возможно, что-нибудь можно добавить в это же условие?

Не соображу.

 , ,

Twissel ()

nginx как proxy и http-аторизация

День добрый, комрады! Вопрос в следующем. Можно ли как-то пробросить http-авторизацию через proxy на nginx? Проброс порта его средствами я делаю, все ок работает. Но если с той стороны, куда пробрасываю, веб-сервер (именно он, а не код сайта) просит авторизацию, то она не проходит.

З.Ы.: Не спрашивайте почему я не использую iptables? В моем случае, его использовать нельзя.

 , ,

lasthappy ()

Nginx и относительные пути в директориях

Есть корень, а в корне есть несколько директорий. Естественно, относительные пути в них не работают, т.е. код вида

<link rel='shortcut icon' type='image/x-icon' href='/images/favicon.ico' />

всегда обращается к корню. А мне надо, чтобы обращался к нужной директории, в которой лежит сайтик (без бэкенда). Это вообще реализуемо?

Менять пути в коде - плохой вариант, ибо менять надо много где, придётся тянуть дополнительную ветку git, а директорий таких планируется множество.

 

InterVi ()

Too many open

NGINX в логах пишет

socket() failed (24: Too many open files) while connecting to upstream


Хотя
ulimit -n
65535


Тестирую так: открываю 400 http конектов на nginx
lsof -n | wc -l
20344


Хз что ему ещё надо, стоит ли ещё увеличивать или не в этом дело?

 , , ,

gobot ()

Редирект с любого поддомена на основной домен

Доброго дня.
Имеется настроенный конфиг NGINX

server {
listen 80;
server_name my-site.ru;
#access_log /var/log/nginx/access.log;
location ~* \.(jpg|jpeg|gif|png|ico)$ {
root /var/www/respo.my-site/admin/;
index index.html index.php;
#access_log off;
expires 30d;
}
location ~ /\.ht {
deny all;
}

location / {
root /var/www/snd1-mb/;
proxy_pass http://127.0.0.1:81/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header Host $host;
proxy_connect_timeout 60;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_redirect off;
proxy_set_header Connection close;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
}
}
то есть все картинки он вытаскивает из одной директории, а если просто ссылка, то перенаправляет в другую директорию. Этот код работает, все нормально. Сейчас есть такая необходимость сделать редирект (перенаправление) с абсолютно любого поддомена на основной домен. Причем, чтобы структура работы осталась прежней. Прошу помощи, как правильно это сделать? Через NGINX или .HTACCEESS ? Если через NGINX то надо как то сделать так, чтобы он проверял условие, если есть поддомен, то редирект, а если нет.....
Типа
if(server_name == (.+).my-site.ru){
return ( или rewrite)      301 http://my-site.ru$request_uri;
}

 , ,

rafaello ()

Собрать установочный пакет

Всем доброго времени суток.

Встала задача обновить nginx на группе серверов, нужно добавить модуль и openssl обновить. На тестовом сервере, скачав исходники, всё собрал, ошибки при сборке победил и всё завелось. Результат достигнут. Путем исследования интернета набрел в одной статье на хабре, что можно собрать, в моём случае, .rpm пакет из исходников.

Установил checkinstall, использовал сие статью. Далее, как я понял, что всё довольно тривиально:

./configure --prefix=/etc/nginx .....

make

checkinstall --install=no

Получил на выходе nginx-1.12.0-1.x86_64.rpm и довольный сделал откат тестовой на тот момент когда еще не надругался над ней своими манипуляциями.

Теперю же пытаюсь установить.

rpm -Uvh /tmp/111/nginx-1.12.0-1.x86_64.rpm 
Подготовка...     ########################################### [100%]

Казалось бы, что всё хорошо. Но, нет. nginx, как служба, перестал существовать.

/etc/nginx/*файлики на месте
/usr/sbin/nginx на месте
/etc/init.d/nginx благополучно испарился

Собственно, подскажите, я как-то не так собрал установочный пакет или же как-то не так его ставлю?

 , ,

hanharr ()

nginx reverse proxy + iptables

Здравствуйте. Есть две тачки А и Б, сидят они в одной локальной сети, обе смотрят в интернет. Т.е. на каждой по 2 сетевых интерфейса.

А
eth0 ии.ии.10.10
eth1 лл.лл.лл.111
где ии. лл. ip интернет и локал

Б
eth0 ии.ии.20.20
eth1 лл.лл.лл.222

шлюзы на тачках .10.1 и .20.1 соответственно

Сейчас реализована схема проброса пакетов через FORWARD в iptables, соответственно nginx не участвует. Кому интересно, схемка

## RESET table nat and filter (deafult)
/sbin/iptables -t nat -F
/sbin/iptables -F
/sbin/iptables -X

## ACCEPT
# allow eth1 lan
/sbin/iptables -A INPUT -i eth1 -j ACCEPT
# allow eth0 internet
/sbin/iptables -A INPUT -i eth0 -p icmp -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# allow loopback
/sbin/iptables -A INPUT -i lo -j ACCEPT
# allow http, https, ssh, any interface
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 443 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 8185 -j ACCEPT


# Пакеты с нужного адреса заворачиваем на компьютер
/sbin/iptables -t nat -A PREROUTING -p tcp ! --dport 22 -d ии.ии.10.10 -i eth0 \
-j DNAT --to-destination лл.лл.лл.222

# Получаем интернет в локалке
/sbin/iptables -t nat -A POSTROUTING -s лл.лл.1.0/24 -o eth0 \
-j SNAT --to-source ии.ии.10.10

# Меняем адрес источника на локальный
/sbin/iptables -t nat -A POSTROUTING -d лл.лл.лл.222 -p tcp \
-m tcp  -j SNAT --to-source лл.лл.лл.111

# Разрешаем соединение для новых, прошедших проверку, пакетов
/sbin/iptables -A FORWARD -p tcp -m conntrack --ctstate NEW \
-m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
/sbin/iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

# Разрешаем протоколы для FORWARD
/sbin/iptables -A FORWARD -p tcp -m tcp --dport 8185  -j ACCEPT
/sbin/iptables -A FORWARD -p tcp -m tcp --dport 443 -j ACCEPT
/sbin/iptables -A FORWARD -p tcp -m tcp --dport 80 -j ACCEPT

# Установки по умолчанию
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP

Задумка такая: Пользователь из интернета > site.com > тачка A > iptables+nginx > тачка Б

по умолчанию, не работает

## RESET table nat and filter (deafult)
/sbin/iptables -t nat -F
/sbin/iptables -F
/sbin/iptables -X

## ACCEPT
# allow eth1 lan
/sbin/iptables -A INPUT -i eth1 -j ACCEPT
# allow eth0 internet
/sbin/iptables -A INPUT -i eth0 -p icmp -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# allow loopback
/sbin/iptables -A INPUT -i lo -j ACCEPT
# allow http, https, ssh, any interface
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 443 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 8185 -j ACCEPT

Также пробовал добавлять строчку

/sbin/iptables -t nat -A PREROUTING -p tcp ! --dport 22 -d ии.ии.10.10 -i eth0 \
-j DNAT --to-destination лл.лл.лл.222

Конфиг nginx:

upstream backend {
		server лл.лл.лл.222:443;
}

    ## HTTP > HTTPS
server {

		listen 80;

		server_name site.com;
		#return 301 https://$server_name$request_uri;
		return 301 https://site.com;

		access_log /var/log/nginx/site_access.log;
		error_log /var/log/nginx/site_error.log;
}

server {

		listen 443 ssl;

        server_name site.com;

    ## SSL
	ssl_certificate			/etc/nginx/crt/site.com.crt;
	ssl_certificate_key		/etc/nginx/crt/site.com.key;
	ssl_session_cache		shared:SSL:10m;
        ssl_session_timeout		10m;
        ssl_verify_client		off;
        ssl_protocols			TLSv1.2;
        ssl_ciphers			RC4:HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;

        location / {

    ## backend site
			proxy_pass https://backend;

    ## тут пробовал играться
#		    proxy_redirect<---->off;
#		    proxy_set_header<-->Host<-->		site.com;
#		    proxy_set_header<-->X-Real-IP<----->$remote_addr;
#		    proxy_set_header<-->X-Forwared-For<>$proxy_add_x_forwarded_for;
#		    proxy_ssl_session_reuse off;
		}

    ## LOGS
        access_log /var/log/nginx/site_ssl_access.log;
        error_log /var/log/nginx/site_ssl_error.log error;
}

 , ,

imsystem ()