# elephant-socks5-client-py
python client of Elephant(L4) tunnel for SOCKS5 empowered by [py-netty](https://github.com/ruanhao/py-netty).
[Elephant Server](https://github.com/ruanhao/elephant-socks5-tunnel) should be deployed first, which is a L4 tunnel server designed to provide a secure and high-performance tunneling solution for TCP traffic.
## Installation
```commandline
pip install elephant-socks5 -U
```
## Usage
```
$ elephant -h
Usage: elephant [OPTIONS]
Options:
-p, --port INTEGER Local port to bind [default: 1080]
-g, --global Listen on all interfaces
-s, --server TEXT Elephant tunnel server URLs (like: ws[s]://localhost:4443/elephant/ws) [required]
-a, --alias TEXT Alias for the client
-q, --quiet Quiet mode
-esp, --enable-shell-proxy Enable Shell proxy
-erp, --enable-reverse-proxy Enable reverse proxy
-rpo, --reverse-proxy-only No SOCKS5 server, only for reverse proxy
--reverse-ip TEXT Reverse proxy IP
--reverse-port INTEGER Reverse proxy port [default: -1]
--no-reverse-global Reverse proxy listen on localhost
-l, --log-record Save log to file (elephant-client.log)
-t, --request-timeout INTEGER Session request timeout (seconds) [default: 3]
--no-color Disable color output
-v, --verbose Verbose mode
-n, --tunnels INTEGER RANGE Number of tunnels to achieve load balance [default: 1; x>=1]
--proxy-ip TEXT Proxy IP
--proxy-port INTEGER Proxy port [default: -1]
--version Show the version and exit.
-h, --help Show this message and exit.
```
## User Cases
![forwoard proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/forward_proxy.png)
![reverse proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/reverse_proxy.png)
![shell proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/shell_proxy.png)
![socks5 proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/socks5.png)
Raw data
{
"_id": null,
"home_page": "https://github.com/ruanhao/elephant-socks5-client-py",
"name": "elephant-socks5",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.7",
"maintainer_email": null,
"keywords": "proxy, http, non-blocking, py-netty, socks5",
"author": "Hao Ruan",
"author_email": "ruanhao1116@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/77/77/08617c2ea5ee5a5a93d3999c4cde42ea2bcc12f289628ad536ba0c7de13a/elephant-socks5-0.0.29.tar.gz",
"platform": null,
"description": "# elephant-socks5-client-py\npython client of Elephant(L4) tunnel for SOCKS5 empowered by [py-netty](https://github.com/ruanhao/py-netty).\n\n[Elephant Server](https://github.com/ruanhao/elephant-socks5-tunnel) should be deployed first, which is a L4 tunnel server designed to provide a secure and high-performance tunneling solution for TCP traffic.\n\n## Installation\n\n```commandline\npip install elephant-socks5 -U\n```\n\n\n## Usage\n\n```\n$ elephant -h\nUsage: elephant [OPTIONS]\n\nOptions:\n -p, --port INTEGER Local port to bind [default: 1080]\n -g, --global Listen on all interfaces\n -s, --server TEXT Elephant tunnel server URLs (like: ws[s]://localhost:4443/elephant/ws) [required]\n -a, --alias TEXT Alias for the client\n -q, --quiet Quiet mode\n -esp, --enable-shell-proxy Enable Shell proxy\n -erp, --enable-reverse-proxy Enable reverse proxy\n -rpo, --reverse-proxy-only No SOCKS5 server, only for reverse proxy\n --reverse-ip TEXT Reverse proxy IP\n --reverse-port INTEGER Reverse proxy port [default: -1]\n --no-reverse-global Reverse proxy listen on localhost\n -l, --log-record Save log to file (elephant-client.log)\n -t, --request-timeout INTEGER Session request timeout (seconds) [default: 3]\n --no-color Disable color output\n -v, --verbose Verbose mode\n -n, --tunnels INTEGER RANGE Number of tunnels to achieve load balance [default: 1; x>=1]\n --proxy-ip TEXT Proxy IP\n --proxy-port INTEGER Proxy port [default: -1]\n --version Show the version and exit.\n -h, --help Show this message and exit.\n```\n\n\n## User Cases\n\n![forwoard proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/forward_proxy.png)\n![reverse proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/reverse_proxy.png)\n![shell proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/shell_proxy.png)\n![socks5 proxy](https://raw.githubusercontent.com/ruanhao/elephant-socks5-client-py/master/usercases/socks5.png)\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Elephant socks5 tunnel client",
"version": "0.0.29",
"project_urls": {
"Homepage": "https://github.com/ruanhao/elephant-socks5-client-py"
},
"split_keywords": [
"proxy",
" http",
" non-blocking",
" py-netty",
" socks5"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7b840c8826d45cb47e3618fbb78e500da6454fe0a4e38ac5802c5e837d93107c",
"md5": "64bd91a9308e621242cddc954aaab282",
"sha256": "4f5004b1cef881f7b397a95376f89d20b18968f777295427605a77e7e097300f"
},
"downloads": -1,
"filename": "elephant_socks5-0.0.29-py3-none-any.whl",
"has_sig": false,
"md5_digest": "64bd91a9308e621242cddc954aaab282",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.7",
"size": 16197,
"upload_time": "2024-09-21T09:53:35",
"upload_time_iso_8601": "2024-09-21T09:53:35.327477Z",
"url": "https://files.pythonhosted.org/packages/7b/84/0c8826d45cb47e3618fbb78e500da6454fe0a4e38ac5802c5e837d93107c/elephant_socks5-0.0.29-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "777708617c2ea5ee5a5a93d3999c4cde42ea2bcc12f289628ad536ba0c7de13a",
"md5": "8ededb2c301d2458725fe53897cc194b",
"sha256": "cb39aae334f7d76603437be35900b4b582691bd7ecbd317e1d5c6a63831baee2"
},
"downloads": -1,
"filename": "elephant-socks5-0.0.29.tar.gz",
"has_sig": false,
"md5_digest": "8ededb2c301d2458725fe53897cc194b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.7",
"size": 15356,
"upload_time": "2024-09-21T09:53:37",
"upload_time_iso_8601": "2024-09-21T09:53:37.054583Z",
"url": "https://files.pythonhosted.org/packages/77/77/08617c2ea5ee5a5a93d3999c4cde42ea2bcc12f289628ad536ba0c7de13a/elephant-socks5-0.0.29.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-21 09:53:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ruanhao",
"github_project": "elephant-socks5-client-py",
"github_not_found": true,
"lcname": "elephant-socks5"
}