Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Интересная задачка на php ;)
цитата
13/04/10 в 11:35
 leroy_17
Есть юзер есть наш сервак и есть сайт партнера, юзер тянет партнерский контент по нашей ссылке а мы до этого делали location на контент партнера.

Теперь задача такая что надо заменять некоторые заголовки юзера и передавать их партнеру но при этом у партнера ничего бы не менялось и он видел все также включая ip.

Т.е. задача сделать транспарентный proxy на php без подмены ip адреса юзера на ip нашего сервака . Мож кто уже сталкивался с таким ?
цитата
13/04/10 в 11:50
 ibiz
на чистом пхп такое невозможно, если тока делать симбиоз прокси со скриптами, но все равно партнер будет видеть ип адрес прокси
зачем такое читос вообще надо?
цитата
13/04/10 в 11:55
 Stek
Партнерке установить http://stderr.net/apache/rpaf/ а вам передавать нужные заголовки.
цитата
13/04/10 в 11:59
 leroy_17
хорошо не на php , любыми доступными методами , может есть какая то хитрая линуксовая софтина с такими функциями ?

PS. Партнерка ничего устанавливать не будет , это не их забота
цитата
13/04/10 в 12:04
 ibiz
Stek писал:
Партнерке установить http://stderr.net/apache/rpaf/ а вам передавать нужные заголовки.


задача такая, что надо запрос клиента -> левый сервер(обработка заголовков) -> партнер(видит ип клиента типа без вмешательства левого сервера)
цитата
13/04/10 в 12:06
 leroy_17
ibiz писал:
задача такая, что надо запрос клиента -> левый сервер(обработка заголовков) -> партнер(видит ип клиента типа без вмешательства левого сервера)


совершенно точно
цитата
13/04/10 в 12:08
 ibiz
такое в принципе невозможно, это уже спуфинг с нарушением секюрити получится имхо
цитата
13/04/10 в 12:16
 leroy_17
спуфинг это подмена ip , а мне наоборот надо ip оставлять , и изменить другие заголовки
цитата
13/04/10 в 12:48
 Stek
ты хочешь через свой сервер пустить весь запрос клиента, поменять заголовки , и при этом что бы ни одна ни другая сторона ничего не делали у себя с софтом - так не бывает.
Если бы такое было возможно, то это была бы охеренная дыра в безопасности интернета.
цитата
13/04/10 в 13:13
 leroy_17
да, я даже нашел чела который утверждает что лет 5 назад делал что то подобное для накрутки банерных сетей , но там фишка была в том что он сервак свой ставил рядом с серваком банерной сети и пакеты его маршрутизаторы не дропали.

Но каким образом он это делал хз ;)
цитата
13/04/10 в 13:14
 Dr.Syshalt
Невозможно в принципе. Даже полноценный транспарантный прокси будет делать соединения от себя, а не от IP клиента. Это просто из самого протокола следует )))
цитата
13/04/10 в 13:22
 leroy_17
хорошо , тогда по другому пойдем ,

если там стоит обычная связка nginx + apache

как будет восприниматься в логах apache заголовок X-Forwarded-For ? я так понимаю никак а будет ip моего сервака


модули apache партнерского сервиса

mod_geoip, mod_realip, mod_php5, mod_fastcgi, mod_setenvif, mod_so, mod_auth, mod_access, mod_rewrite, mod_alias, mod_userdir, mod_actions, mod_imap, mod_asis, mod_cgi, mod_dir, mod_autoindex, mod_include, mod_status, mod_negotiation, mod_mime, mod_log_config, mod_env, mod_vhost_alias, http_core
цитата
13/04/10 в 13:52
 Semen_ssr
Стукни XP-Vit"у, он завтра будет.

На php - нет.
цитата
13/04/10 в 14:01
 Dr.Syshalt
leroy_17 писал:
хорошо , тогда по другому пойдем ,
если там стоит обычная связка nginx + apache
как будет восприниматься в логах apache заголовок X-Forwarded-For ? я так понимаю никак а будет ip моего сервака


Именно. X-Forwarded-For - это просто хедер HTTP-запроса, такой же как Cookie, к примеру. А IP-адрес - это IP-адрес. Это ниже уровнем, чем HTTP. Это даже ниже TCP по уровню. IP адреса отвечают за роутинг пакетов. Его вообще нереально "проспуфить" и при этом получить какой-то ответ от сервера. Спуфинг работает только тогда, когда ты шлешь пакеты к серверу, а ответ тебя не интересует совершенно.
цитата
13/04/10 в 14:28
 leroy_17
у меня задача чтоб в логах партнерского сервака был реальный юзерский ip , но при этом мне надо немного модифицировать заголовки запроса.


возможно forward будет решением, хотя я все таки думаю он берет REMOTE_ADDR и на другие определяющие ip моменты не смотрит.
цитата
13/04/10 в 14:42
 Stek
В чем партнерку наябывать собрался ? icon_smile.gif
Тебе уже сказали, никак не изменить. Иначе таким образом можно было бы любой траф куда угодно сливать и делать с ним фактически все.
цитата
13/04/10 в 16:39
 Dr.Syshalt
leroy_17 писал:
возможно forward будет решением


Не будет. Поскольку их апач возьмет значение IP, которое их прокси (nginx) подставил в X-Forwarded-For, а не твое. X-Forwarded-For меняется каждым прокси - они добавляют тот, с которого пришел запрос, в цепочку. Так оно работает. Ты хочешь стоять в стороне от обмена между клиентом и сервером и менять что-то. Так не бывает. Как минимум надо хакнуть роутер хостера партнерки icon_smile.gif
цитата
13/04/10 в 17:46
 leroy_17
Stek писал:
В чем партнерку наябывать собрался ? icon_smile.gif

Да не наебывать фактически то , просто они с чего то решили что им подходят только мобильные юзеры только и за остальных они не платят, а остальные это 90% трафика , вот я и хочу юзер агент поменять на мобильный.
цитата
13/04/10 в 17:58
 leroy_17
а можно для этого юзать флеш ? т.е. флешка будет тянуть что то с партнера напрямую без моего сервака но с измененным user - agent ?
PS. Во флеше 0 icon_sad.gif
цитата
13/04/10 в 18:06
 Dr.Syshalt
leroy_17 писал:
а можно для этого юзать флеш ? т.е. флешка будет тянуть что то с партнера напрямую без моего сервака но с измененным user - agent ?


Ключевое слово - "что-то". То есть тебе придется полностью во флаше эмулировать работу броузера, поскольку ведь он там будет тыкать по ссылкам, ходить туда-обратно. И видео там захочет смотреть. В общем, если ты там напишешь полный веб-броузер, то можно и юзер-агент какой угодно подставить, само собой.
цитата
13/04/10 в 18:14
 leroy_17
Dr.Syshalt писал:
Ключевое слово - "что-то". То есть тебе придется полностью во флаше эмулировать работу броузера, поскольку ведь он там будет тыкать по ссылкам, ходить туда-обратно. И видео там захочет смотреть. В общем, если ты там напишешь полный веб-броузер, то можно и юзер-агент какой угодно подставить, само собой.


Мне нужно тянуть только определенную линку, никуда ходить юзер не должен. задача чтоб главное с его ip загрузился контент с определенного линка с определенным user agent.
цитата
13/04/10 в 23:44
 remorhaz
leroy_17 писал:
спуфинг это подмена ip , а мне наоборот надо ip оставлять , и изменить другие заголовки


Это именно подмена, так как фактически с сервером партнерки связывается сервер, на котором выполняется твой скрипт, а не клиентская машина. Задача нерешаема, имхо.
цитата
14/04/10 в 00:08
 Dr.Syshalt
leroy_17 писал:
Мне нужно тянуть только определенную линку, никуда ходить юзер не должен. задача чтоб главное с его ip загрузился контент с определенного линка с определенным user agent.


А один хрен не получится. Flash все равно не дает делать запросы к произвольному домену (кроме того, с которого скачан swf) с единственным исключением - если тот, второй домен отвечает условиям кросс-доменных запросов. Вот тут можно почитать. Смысл сводится к тому, что тебе придется просить партнерку класть в корень их сайта файл специальный icon_smile.gif

Задача нерешаема, не ебись с ней. Это была бы огромная дырка в безопасности броузеров, плагинов и т.п. Подобные веши называются cross-site scripting (XSS) и с ними борятся.

Последний раз редактировалось: Dr.Syshalt (14/04/10 в 00:12), всего редактировалось 1 раз
цитата
14/04/10 в 00:11
 lega_cobra
Нельзя это сделать на транзитном сервере. Можно сделать на компьютере клиента. Если он "в доле", то надо там и делать. icon_smile.gif

Оффтопик: Где-то, когда-то, в какой-то стране я уже слышал о политическом скандале с "транзитным сервером". Знающие люди могут припомнить icon_smile.gif
цитата
20/04/10 в 13:37
 idk2045
leroy_17 писал:
Да не наебывать фактически то , просто они с чего то решили что им подходят только мобильные юзеры только и за остальных они не платят, а остальные это 90% трафика , вот я и хочу юзер агент поменять на мобильный.

чит однако обсуждаем! icon_eek.gif
Стр. 1, 2  >  последняя »


Эта страница в полной версии