LINUX.ORG.RU
ФорумAdmin

Проксирование локального сервера

 , , ,


1

1

Привет!

По адресу 127.0.0.1:хххх есть сервер, который коннектится к удаленному серверу по API. Ключ принимается, но после обработки запроса возвращается ошибка 403 (запрет по месторасположению). Как заставить локальный сервер заменить ip на разрешенные страны?

Следующие шаги результата не дали:

  1. запись в конфиг proxychains socks4 127.0.0.1 xxxx
  2. Tor не помог и vpn на firefox тоже.

Подскажите, пожалуйста, что еще можно попробовать, заменить заголовки в nginx и пр, чтобы заставить локалку выходить через proxy? Никогда не приходилось подобного делать, но очень нужно, чтобы приложение у меня работало! Спасибо!


запись в конфиг proxychains socks4 127.0.0.1 xxxx

Надеюсь ты понимаешь, что написать что-то в конфиге proxychains мало. Чтобы софт работал через proxychains, его нужно запускать через proxychains

  1. проще всего будет, если софт сам умеет работать с http proxy

превратить socks в http может, например, privoxy

  1. желательно понимать, что именно ты делаешь. Тогда можно будет понять, к чему должно привести изменение. И, главное, как это можно продиагностировать

Ключ принимается, но после обработки запроса возвращается ошибка 403 (запрет по месторасположению).

403 это access denied. Может ключ и не принимается

А если это именно санкции, то вполне могли заметить, что ты ломишься с наших адресов, и заблокировать уже и ключ

router ★★★★★
()
Ответ на: комментарий от router

router, спасибо большое за программу, буду пробовать. APY key получен официальным путем и как положено зарегистрирован. В ответе 403 указывается, что регион не обслуживается, именно country. Теперь уже ключ мог и спалиться, но достать другой официальный не проблема. Мне нужно, чтобы веб сервер приложения по адресу 127.0.0.1:port отдавал не российский ip. Все остальное уже настроено. Просто опыта в проксировании маловато, поэтому и прошу совета. Еще раз спасибо за тр, что обьяснили технологию, буду углубляться в тему.

StatX
() автор топика
Ответ на: комментарий от StatX

Вопрос Запускаю приложение через виртуальное окружение. Прописываю proxy в файле .env:

vi .env
https_proxy=socks5://127.0.0.1:1337

На порту 1337 находится ssh туннель, который поднимает динамические прокси:


└─$ ssh -D 1337 -q -C -N user@server
user@server password:

В папке проекта в терминале пишу:

export https_proxy="socks5://127.0.0.1:1337"   

Запускаю приложение:

└─$ python examples/ui/gradio_demo.py  


INFO     [browser_use] BrowserUse logging setup complete with level info
INFO     [root] Anonymized telemetry enabled. See https://docs.browser-use.com/development/telemetry for more information.
* Running on local URL:  http://127.0.0.1:7860

В результате этих манипуляций ошибка 403 перестала появляться, приложение запускается, но куда идет и чего ищет, непонятно.

Нужен ли дополнительный socks клиент, например, shadowsocks или redsocks, pivoxy, чтобы соединить правильно приложение с ssh туннелем?


netstat -tunlp 

Видит запущенное приложение по адресу 127.0.0.1:7860

Не пойму, в чем проблема. Помогите, пожалуйста, прочитать логи, заранее прошу прощения, они длинные.


create a public link, set `share=True` in `launch()`.
INFO     [agent] 🚀 Starting task: Find flights to New York from China
INFO     [agent] 📍 Step 1
WARNING  [agent] ❌ Result failed 1/3 times:
 Rate limit reached. Waiting before retry.
INFO     [agent] 📍 Step 1
WARNING  [agent] ❌ Result failed 2/3 times:
 Rate limit reached. Waiting before retry.
INFO     [agent] 📍 Step 1
WARNING  [agent] ❌ Result failed 3/3 times:
 Rate limit reached. Waiting before retry.
ERROR    [agent] ❌ Stopping due to 3 consecutive failures
INFO     [agent] Created GIF at agent_history.gif
INFO     [agent] 🚀 Starting task: open medium.com 
INFO     [agent] 📍 Step 1
Task exception was never retrieved
future: <Task finished name='Task-81' coro=<AsyncClient.aclose() done, defined at /home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpx/_client.py:1978> exception=RuntimeError('Event loop is closed')>
Traceback (most recent call last):
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpx/_client.py", line 1988, in aclose
    await proxy.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpx/_transports/default.py", line 406, in aclose
    await self._pool.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpcore/_async/connection_pool.py", line 353, in aclose
    await self._close_connections(closing_connections)
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpcore/_async/connection_pool.py", line 345, in _close_connections
    await connection.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpcore/_async/socks_proxy.py", line 306, in aclose
    await self._connection.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpcore/_async/http11.py", line 258, in aclose
    await self._network_stream.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/httpcore/_backends/anyio.py", line 53, in aclose
    await self._stream.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/anyio/streams/tls.py", line 201, in aclose
    await self.transport_stream.aclose()
  File "/home/tiger/Documents/AI_BOT/browser-use/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 1306, in aclose
    self._transport.close()
  File "/usr/lib/python3.12/asyncio/selector_events.py", line 1211, in close
    super().close()
  File "/usr/lib/python3.12/asyncio/selector_events.py", line 875, in close
    self._loop.call_soon(self._call_connection_lost, None)
  File "/usr/lib/python3.12/asyncio/base_events.py", line 794, in call_soon
    self._check_closed()
  File "/usr/lib/python3.12/asyncio/base_events.py", line 540, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed
WARNING  [agent] ❌ Result failed 1/3 times:
 Rate limit reached. Waiting before retry.
INFO     [agent] 📍 Step 1
WARNING  [agent] ❌ Result failed 2/3 times:
 Rate limit reached. Waiting before retry.
INFO     [agent] 📍 Step 1
WARNING  [agent] ❌ Result failed 3/3 times:
 Rate limit reached. Waiting before retry.
ERROR    [agent] ❌ Stopping due to 3 consecutive failures
INFO     [agent] Created GIF at agent_history.gif
^CKeyboard interruption in main thread... closing server.

StatX
() автор топика