summaryrefslogtreecommitdiff
path: root/_sources/admin/answer-captcha.rst.txt
diff options
context:
space:
mode:
Diffstat (limited to '_sources/admin/answer-captcha.rst.txt')
-rw-r--r--_sources/admin/answer-captcha.rst.txt69
1 files changed, 69 insertions, 0 deletions
diff --git a/_sources/admin/answer-captcha.rst.txt b/_sources/admin/answer-captcha.rst.txt
new file mode 100644
index 000000000..7ae29be0c
--- /dev/null
+++ b/_sources/admin/answer-captcha.rst.txt
@@ -0,0 +1,69 @@
+===============================
+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.
+