|
Проксирование
|
|||
---|---|---|---|
#18+
Всем доброго добра! В двух словах объясню задачу и свои мысли. Есть 2 сервера в разных локациях. Один сервер (Srv1) в США, например, второй в России (Srv2). Задача в том, чтобы скрыть IP (Srv1) от клиентов и делать вид будто всё на Srv2 :) Пробросить всё через iptables затея не плохая, но есть момент. Srv1 то будет видеть запросы от IP Srv2, а не клиентов и соответственно логировать его же IP :) Сервисы на Srv1 (http, https) поднятые на nginx. Возможно можно сделать на Srv2 проксирование средствами nginx и передавать IP клиента в каком-нибудь заголовке чтобы его можно было логировать и на Srv1. Кто-то может делал что-то подобное ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 22:52 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman Всем доброго добра! В двух словах объясню задачу и свои мысли. Есть 2 сервера в разных локациях. Один сервер (Srv1) в США, например, второй в России (Srv2). Задача в том, чтобы скрыть IP (Srv1) от клиентов и делать вид будто всё на Srv2 :) Пробросить всё через iptables затея не плохая, но есть момент. Srv1 то будет видеть запросы от IP Srv2, а не клиентов и соответственно логировать его же IP :) Сервисы на Srv1 (http, https) поднятые на nginx. Возможно можно сделать на Srv2 проксирование средствами nginx и передавать IP клиента в каком-нибудь заголовке чтобы его можно было логировать и на Srv1. Кто-то может делал что-то подобное Если бы оба сервера были в РФ, вам пришлось бы их пытаться объединять показывая как один? Если нет, то дайте Srv1 российский IP адрес через VPN, и все дела. Сыграть "у меня один сервер, а не два" с высокой степенью убедительности непросто, т.к. клиент может опрашивать параметры серверов и искать различия в конфигурации, платформе, пэтчах, и т.д. В конце концов DOSнуть первый, и заметить что второй не упал. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:13 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman Всем доброго добра! В двух словах объясню задачу и свои мысли. Есть 2 сервера в разных локациях. Один сервер (Srv1) в США, например, второй в России (Srv2). Задача в том, чтобы скрыть IP (Srv1) от клиентов и делать вид будто всё на Srv2 :) Пробросить всё через iptables затея не плохая, но есть момент. Srv1 то будет видеть запросы от IP Srv2, а не клиентов и соответственно логировать его же IP :) Сервисы на Srv1 (http, https) поднятые на nginx. Возможно можно сделать на Srv2 проксирование средствами nginx и передавать IP клиента в каком-нибудь заголовке чтобы его можно было логировать и на Srv1. Кто-то может делал что-то подобное Это называется reverse proxy . Srv1 может быть смаппирован в Srv2 на заданный путь. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:21 |
|
Проксирование
|
|||
---|---|---|---|
#18+
НеофитSQL, А зачем играть? Домену в DNS прописывается IP Srv2 и всё, о чём вы? А вот как VPN работает я не очень понимаю, но видимо годный вариант. Тогда, получается, Srv2 будет как шлюз??? И Srv1 будет видеть запросы от клиентов, а не от Srv2, так получается? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:21 |
|
Проксирование
|
|||
---|---|---|---|
#18+
OoCc, Код: sql 1. 2. 3. 4. 5.
Вот. Фишка в том, что на другом сервере nginx с апачем, поэтому там свой X-Real-IP передаётся непосредственно на апач. Вот и вопрос, применит ли nginx на сервере srv1 пришедший "X-Real-IP" или всё-таки подставит в него IP от Srv2 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:26 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman OoCc, Код: sql 1. 2. 3. 4. 5.
Вот. Фишка в том, что на другом сервере nginx с апачем, поэтому там свой X-Real-IP передаётся непосредственно на апач. Вот и вопрос, применит ли nginx на сервере srv1 пришедший "X-Real-IP" или всё-таки подставит в него IP от Srv2 ? Нужно смотркть код nginx Теоретически количество ревёрс прохи на пути ничем не ограничено и может быть больше одной, например может быть добавлен load balanser. Так что X-Real-IP не должен переписываться. Это моё предположение, нужно смотреть код. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:40 |
|
Проксирование
|
|||
---|---|---|---|
#18+
НеофитSQL Сыграть "у меня один сервер, а не два" с высокой степенью убедительности непросто, т.к. клиент может опрашивать параметры серверов и искать различия в конфигурации, платформе, пэтчах, и т.д. В конце концов DOSнуть первый, и заметить что второй не упал. Клиенты тупорылые у нас, никто такого делать не будет. У нас чисто женские необоснованные визги из-за локации. Ибо остальные локации - "вражины" родины. А можете пнуть по ориентиру как левому серверу дать IP другого через VPN? Я примерно догадываюсь поверхностно и всё же пока не понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:42 |
|
Проксирование
|
|||
---|---|---|---|
#18+
OoCc Теоретически количество ревёрс прохи на пути ничем не ограничено и может быть больше одной, например может быть добавлен load balanser. Так что X-Real-IP не должен переписываться. Это моё предположение, нужно смотреть код. Если в конфигурации nginx можно поставить " * " для переадресации всех, а не прописывать каждый домен вручную, то возможно не плохой вариант ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:45 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman НеофитSQL, А зачем играть? Домену в DNS прописывается IP Srv2 и всё, о чём вы? ранее..> Задача в том, чтобы скрыть IP (Srv1) от клиентов и делать вид будто всё на Srv2 :) Я написал, что "скрыть" можно от простаков. Кто умный, заметит что это два сервера, и не только по IP Поэтому я уточнил - вам важно замаскировать расположение сервера в другой стране, или наличие двух разномастных серверов? Первое довольно просто, тогда у вас будут Sr1 и Srv2 правдоподобно выглядеть как если они в одной стране. Не забудьте часовой пояс отрегулировать, и региональные настройки :) Второе - сложно. Я смогу определить, что на мои запросы к вашему http:// или https:// отвечают два разных веб сервера. Если вам ни то ни другое, а просто надо чтобы некоторые из URL ( http://company/ datamine ) мапились на второй сервер, так для этого редирект есть. https://developer.mozilla.org/ru/docs/Web/HTTP/Redirections > А вот как VPN работает я не очень понимаю В вашем случае, VPN будет выполнять роль очень длинного сетевого провода через океан, чтобы дотянуться до местного датацентра. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:51 |
|
Проксирование
|
|||
---|---|---|---|
#18+
НеофитSQL, видимо я не совсем правильно написал мысль. Есть домен клиента, и он должен висеть на Российском IP. Всё :) А сервер у нас в США с IP омерики, вот и всё дело. Поэтому я думаю просто сделать проксирование с российского сервера на второй для решения задачи, и домен соответственно посадить на IP российского сервера. Женщины вечно всё раздувают до размеров слона. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:58 |
|
Проксирование
|
|||
---|---|---|---|
#18+
Основная сложность это в том, что nginx будет логировать запросы с другого сервера, а не запросы клиентов, а хотелось бы вести обычный лог запросов на http :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:00 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman НеофитSQL Сыграть "у меня один сервер, а не два" с высокой степенью убедительности непросто, т.к. клиент может опрашивать параметры серверов и искать различия в конфигурации, платформе, пэтчах, и т.д. В конце концов DOSнуть первый, и заметить что второй не упал. Клиенты тупорылые у нас, никто такого делать не будет. У нас чисто женские необоснованные визги из-за локации. Ибо остальные локации - "вражины" родины. А можете пнуть по ориентиру как левому серверу дать IP другого через VPN? Я примерно догадываюсь поверхностно и всё же пока не понимаю. Это не будет IP другого сервера, это будет IP по соседству. Я не знаком с упомянутым ngix, но концепции у VPN везде похожи. На местном рутере конфигурируется VPN сервер, самый дешевый DLINK это умеет. Если нет доступа к сетевому оборудованию, можно VPN сервер сконфигурировать в большинстве ОС. Напр, на Винде: https://docs.microsoft.com/ru-ru/windows-server/remote/remote-access/vpn/always-on-vpn/deploy/vpn-deploy-ras Когда VPN север настроен и готов к звонкам, вражеский сервер к нему обращается с заранее условленным паролем, получает от него новый российский IP и поднимает новый сетевой интерфейс - виртуальную сетевую карту. Все эти шаги практически неотличимы от интернета по телефону с модемом - помните такой? Есть полно вариаций. Например, если у вас есть рабочий контакт с обоими датацентрами, вы можете просто попросить чтобы вам в США оформили физический провод, который "напрямик" соединен с родиной-матерью. Многие это называют экстранет. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:04 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman Основная сложность это в том, что nginx будет логировать запросы с другого сервера, а не запросы клиентов, а хотелось бы вести обычный лог запросов на http :) Вы уверены, или предполагаете? В HTTP 1.1 клиент сообщает свой "настоящий адрес", поэтому у веб сервера есть возможность логить настоящие адреса клиентов. Это популярная проблема, т.к. клиенты часто сидят за NAT, и она решена у многих веб серверов. https://campus.barracuda.com/product/webapplicationfirewall/doc/4259905/logging-actual-client-ip-address-on-the-apache-server/ Умеет ли это nginx, я не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:09 |
|
Проксирование
|
|||
---|---|---|---|
#18+
Надо экспериментировать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:18 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdmanЕсть домен клиента, и он должен висеть на Российском IP. Всё :) А сервер у нас в США с IP омерики, вот и всё дело. Если ты хочешь чтобы реальный сервер видел реальные адреса клиентов, тебе надо настраивать DNAT/SNAT, но тогда он потеряет возможность обрабатывать запросы напрямую. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 01:23 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman проксирование средствами nginx Dimitry Sibiryakov Если ты хочешь чтобы реальный сервер видел реальные адреса клиентов, тебе надо настраивать DNAT/SNAT, но тогда он потеряет возможность обрабатывать запросы напрямую. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 12:01 |
|
Проксирование
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyПочему внедрение НАТа отключит локальный nginx? Локальный - не отключит. Я говорил об удалённом, американском. Ему все пакеты надо слать на российский прокси. Такое правило их маршрутизации, чтобы он ещё мог отвечать и напрямую у меня в голову не приходит. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 13:25 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman OoCc Теоретически количество ревёрс прохи на пути ничем не ограничено и может быть больше одной, например может быть добавлен load balanser. Так что X-Real-IP не должен переписываться. Это моё предположение, нужно смотреть код. Если в конфигурации nginx можно поставить " * " для переадресации всех, а не прописывать каждый домен вручную, то возможно не плохой вариант Ты хочешь всю Америку смаппировать на Россию? Глобально мыслишь, одобряю. Идеальное импортозамещение. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 13:50 |
|
Проксирование
|
|||
---|---|---|---|
#18+
Попробовал проксирование через nginx. Заголовки X-Real-IP, X-Forwarded-For не воспринимаются на втором nginx. X-Real-IP - по идее и не должен работать в такой схеме. Как вариант лог вести на русском сервере средствами nginx. Пробовал проброс через iptables - работает замечательно! Думал, логирование сделать с помощью ULOG, но удобно когда в логе есть и запрашиваемый URL ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 13:59 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdman Женщины вечно всё раздувают до размеров слона. а зачем у вас женщины-домохозяйки решают айтишные вопросы? FreeAdman Основная сложность это в том, что nginx будет логировать запросы с другого сервера, а не запросы клиентов, а хотелось бы вести обычный лог запросов на http :) nginx может тупо перекидывать запросы вдаль без изменений называется proxy_pass ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 15:26 |
|
Проксирование
|
|||
---|---|---|---|
#18+
tip78 а зачем у вас женщины-домохозяйки решают айтишные вопросы? Это вам так показалось. Если бы не читали между строк, то логически бы поняли, что женщина - клиент которая брезгует чужими локациями. tip78 nginx может тупо перекидывать запросы вдаль без изменений называется proxy_pass Прокси по сути своей не может выдавать себя за клиента полноценно. Пихать IP клиента в заголовках - да, но запрос будет от сервера, а не от клиента за ним. Похоже, что логирование буду вести на прокси-сервере ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 15:42 |
|
Проксирование
|
|||
---|---|---|---|
#18+
FreeAdmanлогически бы поняли, что женщина - клиент которая брезгует чужими локациями. А откуда этот клиент знает локацию? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 16:37 |
|
Проксирование
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov FreeAdmanлогически бы поняли, что женщина - клиент которая брезгует чужими локациями. А откуда этот клиент знает локацию? Вопрос хороший и любопытный :) Возможно проверили страну IP к которому был привязан домен. У клиента стоит Джумла, возможно там может модуль какой-то стоит, например погоду местную определяет и палится, я не знаю =))) Если модуль какой извне запрашивает что-то, то вариант с nginx proxy не проканает в данном случае, VPN только чтобы обмануть качественно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 17:04 |
|
|
start [/forum/topic.php?fid=25&msg=40027295&tid=1480963]: |
0ms |
get settings: |
16ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
77ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
693ms |
get tp. blocked users: |
0ms |
others: | 2666ms |
total: | 3464ms |
0 / 0 |