forked from Ponysearch/Ponysearch
70 lines
1.9 KiB
Text
70 lines
1.9 KiB
Text
|
===============================
|
||
|
Answer CAPTCHA from server's IP
|
||
|
===============================
|
||
|
|
||
|
With a SSH tunnel we can send requests from server's IP and solve a CAPTCHA that
|
||
|
blocks requests from this IP. If your SearXNG instance is hosted at
|
||
|
``example.org`` and your login is ``user`` you can setup a proxy simply by
|
||
|
:man:`ssh`:
|
||
|
|
||
|
.. code:: bash
|
||
|
|
||
|
# SOCKS server: socks://127.0.0.1:8080
|
||
|
|
||
|
$ ssh -q -N -D 8080 user@example.org
|
||
|
|
||
|
The ``socks://localhost:8080`` from above can be tested by:
|
||
|
|
||
|
.. tabs::
|
||
|
|
||
|
.. group-tab:: server's IP
|
||
|
|
||
|
.. code:: bash
|
||
|
|
||
|
$ curl -x socks://127.0.0.1:8080 http://ipecho.net/plain
|
||
|
n.n.n.n
|
||
|
|
||
|
.. group-tab:: desktop's IP
|
||
|
|
||
|
.. code:: bash
|
||
|
|
||
|
$ curl http://ipecho.net/plain
|
||
|
x.x.x.x
|
||
|
|
||
|
In the settings of the WEB browser open the *"Network Settings"* and setup a
|
||
|
proxy on ``SOCKS5 127.0.0.1:8080`` (see screenshot below). In the WEB browser
|
||
|
check the IP from the server is used:
|
||
|
|
||
|
- http://ipecho.net/plain
|
||
|
|
||
|
Now open the search engine that blocks requests from your server's IP. If you
|
||
|
have `issues with the qwant engine
|
||
|
<https://github.com/searxng/searxng/issues/2011#issuecomment-1553317619>`__,
|
||
|
solve the CAPTCHA from `qwant.com <https://www.qwant.com/>`__.
|
||
|
|
||
|
-----
|
||
|
|
||
|
.. tabs::
|
||
|
|
||
|
.. group-tab:: Firefox
|
||
|
|
||
|
.. kernel-figure:: answer-captcha/ffox-setting-proxy-socks.png
|
||
|
:alt: FFox proxy on SOCKS5, 127.0.0.1:8080
|
||
|
|
||
|
Firefox's network settings
|
||
|
|
||
|
|
||
|
.. admonition:: :man:`ssh` manual:
|
||
|
|
||
|
-D [bind_address:]port
|
||
|
Specifies a local “dynamic” application-level port forwarding. This works
|
||
|
by allocating a socket to listen to port on the local side .. Whenever a
|
||
|
connection is made to this port, the connection is forwarded over the
|
||
|
secure channel, and the application protocol is then used to determine
|
||
|
where to connect to from the remote machine .. ssh will act as a SOCKS
|
||
|
server ..
|
||
|
|
||
|
-N
|
||
|
Do not execute a remote command. This is useful for just forwarding ports.
|
||
|
|