
Juriy
05.09.2016
11:51:43
ну, явно не так
http://nginx.org/ru/docs/http/ngx_http_realip_module.html

Paul
05.09.2016
11:52:23
убираем proxy_protocol и клиент, подключающийс к прокси получает 400 мгновенно

Google

Paul
05.09.2016
11:53:19
еще раз. У меня задача - сделать именно прокси. Клиент использует прокси, чтобы подключится к удаленному хосту. К прокси он подключается по HTTPS

Juriy
05.09.2016
11:53:49
а к бэкенду по http? это стандартная задача

Paul
05.09.2016
11:54:13
у меня миллион бэкендов. Ну конкретно сейчас из три тысячи

Juriy
05.09.2016
11:54:14
а вот вы, похоже, не знаете что такое proxy_protocol:
http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt

Paul
05.09.2016
11:54:32
nginx нужен как терминатор https
вопрос в том, как настроить в данной ситуации nginx

Juriy
05.09.2016
11:55:02
https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-load-balancing-with-ssl-termination
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl on;
ssl_certificate /etc/nginx/ssl/example.com/server.crt;
ssl_certificate_key /etc/nginx/ssl/example.com/server.key;
ssl_trusted_certificate /etc/nginx/ssl/example.com/ca-certs.pem;
location / {
proxy_pass http://mywebapp1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
оттуда
и, кстати - именно это и называется "реверс-прокси"

Alexander
05.09.2016
11:58:45
мы для такого использовали ha_proxy

Daniel
05.09.2016
11:59:04
нет

Google

Daniel
05.09.2016
11:59:17
для этого хапрокси использовать нельзя

Juriy
05.09.2016
11:59:26

Alexander
05.09.2016
11:59:26
почему?

Juriy
05.09.2016
11:59:36
что у вас такое специфичное, что он не умеет?

Александр
05.09.2016
12:00:13

Alexander
05.09.2016
12:00:30
ааа всем интересно)
более того, haproxy отлично балансирует трафик, есть чек доступности
ограничение на количество коннектов накаждый апстрим

Juriy
05.09.2016
12:01:31

Alexander
05.09.2016
12:01:48
))) ну расскажите, почему нельзя? Я же теперь работать не могу

Pavel
05.09.2016
12:01:56
и мне и мне success story

Paul
05.09.2016
12:02:14
proxy_pass тоже на https, кстати. Но оно ни так, ни так - не работает

Daniel
05.09.2016
12:03:32
и вся лубофф

Alexander
05.09.2016
12:04:52
в смысле не умеет?
А как же оно у нас работает?
Может у вас какой-то нестандартный кейс?
https://www.digitalocean.com/community/tutorials/how-to-implement-ssl-termination-with-haproxy-on-ubuntu-14-04
ааа понял
нестандартный кейс
просто я имел ввиду как SSL терминатор у нас работает и мы вполне довольны

Google

Juriy
05.09.2016
12:06:05
изначально в задаче был описан именно ssl-терминатор

Daniel
05.09.2016
12:06:25
по этому гайду я вижу, что мне наврали, и haproxy таки научился терминировать ssl
тогда противопоказаний нет

Juriy
05.09.2016
12:07:22

Alexander
05.09.2016
12:07:36
ну году так в 2014 научился вроде

Daniel
05.09.2016
12:07:43
ну вот да

Juriy
05.09.2016
12:07:43
с версии 1.5

Paul
05.09.2016
12:07:45
после настройки DO получаю вот такое:
Proxy tunneling failed: Bad RequestUnable to establish SSL connection

Juriy
05.09.2016
12:08:07
простите, но ни тогда ни сейчас так и не понял, почему это не реверс

Paul
05.09.2016
12:08:25
потому, что это директ-прокси

Juriy
05.09.2016
12:08:39
директ-прокси, это сквид в конторе

Paul
05.09.2016
12:08:39
условно, его клиент в настройках подключения браузера вписывает
гениально!
вот мне и нужен сквид. Только маленький и тупой
а то тащить сквида для тупого терминирования трафика мне как-то не хочется.
отсюда и вопрос - что посоветуете на замену сквида. Маленькое, шустрое, тупое и с поддержкой https

Daniel
05.09.2016
12:10:04
можно вкорячить nginx
можно haproxy, как выяснилось

Paul
05.09.2016
12:11:07
вот я уже три часа на доку нджинкса медитирую. И не выходит что-то каменный цветок. Если кто-то посоветует - буду рад

Google

Juriy
05.09.2016
12:11:25
таки мы и советуем
вот, посоветовали выключить proxy_protocol
сейчас и до ошибки 400 доберемся
покажите конфиг

Paul
05.09.2016
12:11:54
таки мы и советуем
присланные вами примеры не работают, ошибку я показал выше. могу показать конфиг целиком. прокси-протокол убрал
момент
server {
listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/ssl/ss.crt;
ssl_certificate_key /etc/nginx/ssl/ss.key;
access_log /var/log/nginx/test.access.log;
error_log /var/log/nginx/test.error.log;
server_name my.test.domain.ru;
location / {
proxy_pass https://my.test.domain.ru;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Admin
ERROR: S client not available

Sergey
05.09.2016
12:13:09
вот тебе и приземление на Nginx

Paul
05.09.2016
12:13:30
если что, nginx я не первый день использую :)
я еще 0.6 помню

Aleksandr
05.09.2016
12:14:01

Max
05.09.2016
12:17:00
Подскажите, а чем можно реализовать прокси tcp трафика по разным бакэндам в зависимости от того от куда идут запросы.
Попробовал как то так:
https://github.com/yaoweibin/nginx_tcp_proxy_module/issues/55
оно таки не работает(

Juriy
05.09.2016
12:18:14

Max
05.09.2016
12:18:33
если в hapoxy использовать acl, поведение такое же - все идет только в один бакэнд, второму ни чего не достается

Dmitry
05.09.2016
12:19:28
я бы сам попробовал, но я месяц всосывал везде бареос
и вот вообще не стоит совать чтото новое

Juriy
05.09.2016
12:21:14

Google

Max
05.09.2016
12:22:19
frontend app
mode tcp
bind 1.2.3.4:443
acl host_foo hdr(host) -i tcp.foo.com
acl host_bar hdr(host) -i tcp.bar.com
use_backend foo if host_foo
use_backend bar if host_bar
backend foo
mode tcp
server app-1 1.1.1.1:1234 check
backend bar
mode tcp
server app-2 1.1.1.2:1234 check

Juriy
05.09.2016
12:24:23
и все получится :)
http://blog.haproxy.com/2012/04/13/enhanced-ssl-load-balancing-with-server-name-indication-sni-tls-extension/

Nikita
05.09.2016
12:26:14
#whois
▫️Интересно все что связано с разработкой.
▫️Я из СПБ, студент ЛЭТИ каф. Компьютерной Безопасности.
▫️Узнал из pro.cxx

Max
05.09.2016
12:27:52

Paul
05.09.2016
12:28:58

Александр
05.09.2016
12:29:24
tcpdump?

N
05.09.2016
12:36:43
Мне прям почему-то кажется, что через хапрокси там вебсокеты пустили

Aleksey
05.09.2016
12:48:36

N
05.09.2016
12:48:58

James
05.09.2016
12:51:37
ребятушки кто нить юзал ElastAlert?
https://github.com/Yelp/elastalert

Juriy
05.09.2016
12:52:17

Aleksey
05.09.2016
12:52:33

N
05.09.2016
12:53:47
http то ?!
http://blog.haproxy.com/2012/11/07/websockets-load-balancing-with-haproxy/

Dmitriy
05.09.2016
13:30:00

James
05.09.2016
13:30:16
юзал?