Browse Source

[doc] answer CAPTCHA from server's IP

Related: https://github.com/searxng/searxng/issues/2011#issuecomment-1553317619
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Markus Heiser 1 year ago
parent
commit
0ee27ba3aa

+ 69 - 0
docs/admin/answer-captcha.rst

@@ -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.
+

BIN
docs/admin/answer-captcha/ffox-setting-proxy-socks.png


+ 1 - 0
docs/admin/index.rst

@@ -14,6 +14,7 @@ Administrator documentation
    installation-nginx
    installation-apache
    update-searxng
+   answer-captcha
    engines/index
    api
    architecture