{"id":13486186,"url":"https://github.com/ShadowsocksR-Live/shadowsocksr-native","last_synced_at":"2025-03-27T20:32:19.939Z","repository":{"id":41559689,"uuid":"98651166","full_name":"ShadowsocksR-Live/shadowsocksr-native","owner":"ShadowsocksR-Live","description":"翻墙 从容穿越党国敏感日 ShadowsocksR (SSRoT) native implementation for all platforms, GFW terminator","archived":false,"fork":false,"pushed_at":"2024-11-17T16:30:56.000Z","size":4724,"stargazers_count":2772,"open_issues_count":15,"forks_count":771,"subscribers_count":103,"default_branch":"master","last_synced_at":"2025-03-22T16:02:05.668Z","etag":null,"topics":["gfw","libuv","linux","macos","proxy","shadowsocks","shadowsocksr","ss","ssr","unix","windows"],"latest_commit_sha":null,"homepage":"https://github.com/ShadowsocksR-Live/shadowsocksr-native/wiki","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ShadowsocksR-Live.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-28T13:17:09.000Z","updated_at":"2025-03-21T15:13:57.000Z","dependencies_parsed_at":"2024-01-07T22:48:04.748Z","dependency_job_id":"9e36ce43-dbde-49a4-84e8-cee86986bf59","html_url":"https://github.com/ShadowsocksR-Live/shadowsocksr-native","commit_stats":{"total_commits":509,"total_committers":2,"mean_commits":254.5,"dds":"0.48919449901768175","last_synced_commit":"24506ef107a93505274ea03a994367a2c9633d50"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShadowsocksR-Live%2Fshadowsocksr-native","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShadowsocksR-Live%2Fshadowsocksr-native/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShadowsocksR-Live%2Fshadowsocksr-native/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShadowsocksR-Live%2Fshadowsocksr-native/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ShadowsocksR-Live","download_url":"https://codeload.github.com/ShadowsocksR-Live/shadowsocksr-native/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245920218,"owners_count":20694048,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gfw","libuv","linux","macos","proxy","shadowsocks","shadowsocksr","ss","ssr","unix","windows"],"created_at":"2024-07-31T18:00:41.006Z","updated_at":"2025-03-27T20:32:19.528Z","avatar_url":"https://github.com/ShadowsocksR-Live.png","language":"C","readme":"\u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n# Please use \u003ca href=\"https://github.com/ShadowsocksR-Live/overtls\"\u003eovertls\u003c/a\u003e instead\n\u003cbr /\u003e\u003cbr /\u003e\n\n**請使用 [overtls](https://github.com/ShadowsocksR-Live/overtls), 一個新代理，相當於 SSRoT 去掉 SSR 和 SS, 唯獨保留 OT 的 Rust 實現，速度飛快，穩如老狗。**\n\n**Please use [overtls](https://github.com/ShadowsocksR-Live/overtls), a Rust implementation of SSRoT without SSR and SS, only retaining OT, which is fast and stable.**\n\n\u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n\n![shadowsocksr-native](https://avatars0.githubusercontent.com/u/30504070?s=200\u0026v=4)\n\n\u003c!--\nAs I typed each line of code, I was full of fear. Cherish what you using.\n敲下每一行代码时，我都充满了恐惧；大伙且用且珍惜。\n--\u003e\n\n# ShadowsocksR-native\n\n[![Join the chat at https://gitter.im/ShadowsocksR-Live/](https://cdn03.gitter.im/_s/9177b02/images/favicon-read.ico)](https://gitter.im/ShadowsocksR-Live/Lobby)\n\n[新特性: GFW 终结者 SSRoT](https://github.com/ShadowsocksR-Live/shadowsocksr-native/wiki)\n\n[写给高危翻墙人士](https://github.com/ShadowsocksR-Live/shadowsocksr-native/wiki/%E5%86%99%E7%BB%99%E9%AB%98%E5%8D%B1%E7%BF%BB%E5%A2%99%E4%BA%BA%E5%A3%AB)\n\n[帮助开发者改善 SSRoT](https://github.com/ShadowsocksR-Live/shadowsocksr-native/wiki/%E5%B8%AE%E5%8A%A9%E4%BD%9C%E8%80%85%E6%94%B9%E5%96%84-SSRoT)\n\n[New feature: GFW terminator SSRoT English tutorial](https://palitechsociety.blogspot.com/2019/08/shadowsocksr-over-tls-ssrot-server.html)\n\n\n## Index\n\n- [ShadowsocksR-native](#shadowsocksr-native)\n  - [Index](#index)\n  - [Intro](#intro)\n  - [Features](#features)\n  - [Encrypto method](#encrypto-method)\n  - [Protocols \u0026 obfuscators](#protocols--obfuscators)\n  - [Build](#build)\n    - [Distribution-specific guide](#distribution-specific-guide)\n    - [Debian \u0026 Ubuntu](#debian--ubuntu)\n    - [CentOS](#centos)\n    - [macOS](#macos)\n    - [Windows](#windows)\n  - [Usage](#usage)\n  - [Sample configure file](#sample-configure-file)\n  - [cmake](#cmake)\n  - [Deploy server](#deploy-server)\n  - [Stargazers over time](#stargazers-over-time)\n\n## Intro\n\n**ShadowsocksR-native** is a lightweight secured SOCKS5 proxy for embedded devices and low-end boxes.\nIt's derived from [Shadowsocks-libev](http://shadowsocks.org).\n\nIt is a port of [ShadowsocksR](https://github.com/ShadowsocksR-Live/shadowsocksr)\ncreated by [@breakwa11](https://github.com/breakwa11), \nwhich is maintained by [@ssrlive](https://github.com/ssrlive).\n\nCurrent version: 0.4 | [Changelog](debian/changelog)\n\n## Features\n\nShadowsocksR-native is written in pure C and only depends on\n[libuv](https://github.com/libuv/libuv) ,\n[mbedTLS](https://github.com/ARMmbed/mbedtls) , \n[libsodium](https://github.com/jedisct1/libsodium) and\n[json-c](https://github.com/json-c/json-c).\n\nIn normal usage, the memory footprint is about 600KB and the CPU utilization is\nno more than 5% on a low-end router (Buffalo WHR-G300N V2 with a 400MHz MIPS CPU,\n32MB memory and 4MB flash).\n\nFor a full list of feature comparison between different versions of shadowsocks,\nrefer to the [Wiki page](https://github.com/shadowsocksr-live/shadowsocksr-native/wiki/).\n\n## Encrypto method\n|                  |                  |                 |                 |                 |                |\n| -----|-|-|-|-|-------------- | \n| none | table             |||||\n| rc4 | rc4-md5-6 | rc4-md5 ||||\n| aes-128-cfb | aes-192-cfb | aes-256-cfb ||||\n| aes-128-ctr | aes-192-ctr | aes-256-ctr ||||\n| camellia-128-cfb | camellia-192-cfb | camellia-256-cfb ||||\n| bf-cfb | cast5-cfb | des-cfb | idea-cfb | rc2-cfb | seed-cfb |\n| salsa20 | chacha20 | chacha20-ietf ||||\n| | | | | | | \n| aes-128-gcm | aes-192-gcm | aes-256-gcm | chacha20-ietf-poly1305 | xchacha20-ietf-poly1305 ||\n\n\n## Protocols \u0026 obfuscators\n\n| Protocols | obfuscators | \n| --------- | ----------- | \n| origin | plain |\n| auth_sha1_v4 | http_simple |\n| auth_aes128_sha1 | http_post |\n| auth_aes128_md5 | http_mix |\n| auth_chain_a | tls1.2_ticket_auth |\n| auth_chain_b | tls1.2_ticket_fastauth |\n| auth_chain_c/d/e/f |    |\n\nprogress of data flow\n```\n+-----------------------------------------------------------------------------+\n|                +--------------------------------------------------------+   |\n|                |               +------------------------------------+   |   |\n|                |               |            +-------------------+   |   |   |\n|  obfuscator    |   encryptor   |  protocol  |     user data     |   |   |   |\n|   |            |       |       |      |     +-------------------+   |   |   |\n|   |            |       |       +------+-----------------------------+   |   |\n|   |            +-------+--------------+---------------------------------+   |\n+---+--------------------+--------------+-------------------------------------+\n    |                    |              |                                            \n    +-- server_encode    +-- encrypt    +-- server_pre_encrypt       \u003c\u003c\u003c=== user data\n    |                    |              |                                            \n    +-- server_decode    +-- decrypt    +-- server_post_decrypt      ===\u003e\u003e\u003e user data\n```\n\n## Build\n\n### Distribution-specific guide\n\n- [Debian \u0026 Ubuntu](#debian--ubuntu)\n- [Fedora \u0026 RHEL \u0026 CentOS](#centos)\n- [macOS](#macos)\n- [Windows](#windows)\n\n* * *\n\n### Debian \u0026 Ubuntu\n\nFor Unix-like systems, especially Debian-based systems,\ne.g. Ubuntu, Debian or Linux Mint, you can build the binary like this:\n\n```bash\n# Debian / Ubuntu\n# sudo su                       # using root account\nsudo apt-get update -y\nsudo apt-get upgrade -y\nsudo apt-get install --no-install-recommends build-essential autoconf libtool asciidoc xmlto -y\nsudo apt-get install git gcc g++ gdb cmake automake -y\nsudo apt-get -f install -y\n\n# cd /                          # switch to root directory\ngit clone --recursive https://github.com/ShadowsocksR-Live/shadowsocksr-native.git ssr-n\ncd ssr-n                      # enter ssr-n directory. \n\n# build ShadowsocksR-native\nmkdir build \u0026\u0026 cd build\ncmake .. \u0026\u0026 make\n# make install\n# /bin/cp -rfa src/ssr-* /usr/bin\n\n# build 32-bit binary\nsudo apt-get install gcc-multilib -y\nrm -rf *\ncmake -D CMAKE_C_FLAGS=-m32 .. \u0026\u0026 make\n\n```\n\nThe target binaries are `ssr-n/build/src/ssr-server`, `ssr-n/build/src/ssr-client`.\n\n### CentOS\n\nCentOS 7 only. we don't support CentOS 6.x, it's too old.\n\nBefore build `ssr-Native`, we must install `cmake` 3.x first. following [this](#cmake) \n\n```bash\n# CentOS / Fedora / RHEL\nsudo su\nyum install wget git gcc gcc-c++ gdb autoconf automake libtool make asciidoc xmlto -y\ncurl https://cmake.org/files/v3.25/cmake-3.25.1-linux-x86_64.sh -o a.sh\nsh a.sh --prefix=/usr/ --exclude-subdir \u0026\u0026 rm -rf a.sh\ncd /\ngit clone --recursive https://github.com/ShadowsocksR-Live/shadowsocksr-native.git ssr-n\ncd ssr-n\n\n# Since there no stdatomic.h exist in CentOS 7, we have to use older libuv version.\n# Fedora / RHEL can skip the steps.\ncd depends/libuv\ngit checkout 71932a9fc9e234b3ebac90de0dd061fb00ba191b\ncd ../..\n\nmkdir build \u0026\u0026 cd build\ncmake .. \u0026\u0026 make\n# make install\n# /bin/cp -rfa src/ssr-* /usr/bin\n```\n\nThe target binaries are `ssr-n/build/src/ssr-server`, `ssr-n/build/src/ssr-client`.\n\n### macOS\n\nFor macOS, we must download/install/run [Xcode](https://developer.apple.com/xcode/) first. \n\nThen use [Homebrew](http://brew.sh) to install or build.\n\nInstall Homebrew and tools:\n```bash\nruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"\nbrew install git cmake automake libtool\nbrew upgrade git cmake automake libtool\n```\nNow get source code and build it.\n```bash\ngit clone --recursive https://github.com/ShadowsocksR-Live/shadowsocksr-native.git ssr-n\ncd ssr-n\n\nmkdir build \u0026\u0026 cd build\ncmake .. \u0026\u0026 make\n```\n\nThe target binaries are `ssr-n/build/src/ssr-server`, `ssr-n/build/src/ssr-client`.\n\n### Windows\n\nFor Windows, chekout the project using the following commands then open win32/ssr-native.sln with Visual Studio 2010. Enjoy it!\n\n```bash\ngit clone --recursive https://github.com/ShadowsocksR-Live/shadowsocksr-native.git ssr-n\n```\n\n## Usage\n\nFor a detailed and complete list of all supported arguments, you may refer to the\nman pages of the applications, respectively.\n\n```\n    ssr-[client|local|server]\n\n       [-c \u003cconfig_file\u003e]         The path to config file\n\n       [-d]                       Run in background as a daemon.\n\n       [-h]                       Show this help message.\n```\n\n## Sample configure file\n\nconfig.json\n```json\n{\n    \"password\": \"password\",\n    \"method\": \"aes-128-ctr\",\n    \"protocol\": \"auth_aes128_md5\",\n    \"protocol_param\": \"\",\n    \"obfs\": \"tls1.2_ticket_auth\",\n    \"obfs_param\": \"\",\n\n    \"udp\": true,\n    \"idle_timeout\": 300,\n    \"connect_timeout\": 6,\n    \"udp_timeout\": 6,\n\n    \"server_settings\": {\n        \"listen_address\": \"0.0.0.0\",\n        \"listen_port\": 12475\n    },\n\n    \"client_settings\": {\n        \"server\": \"12.34.56.78\",\n        \"server_port\": 12475,\n        \"listen_address\": \"0.0.0.0\",\n        \"listen_port\": 1080\n    },\n\n    \"over_tls_settings\": {\n        \"enable\": false,\n        \"server_domain\": \"goodsitesample.com\",\n        \"path\": \"/udg151df/\",\n        \"root_cert_file\": \"\"\n    }\n}\n```\n\n## cmake\n\nIn the CentOS 7, the cmake version is too old to work with ShadowsocksR-Native. \nSo we must install it by ourselves.\n\n```bash\nsudo su\ncd /\nwget --no-check-certificate https://cmake.org/files/v3.25/cmake-3.25.1-linux-x86_64.sh -O a.sh\nbash a.sh  --prefix=/usr/ --exclude-subdir\nrm -rf a.sh\ncmake --version\n```\n\nAnd the `cmake --version` command will output message likes:\n```\ncmake version 3.25.0\nCMake suite maintained and supported by Kitware (kitware.com/cmake).\n```\n\n## Deploy server\n\nSupporting `CentOS 7` / `Debian` / `Ubuntu` with the following commands\n\n```\nsudo su\nwget --no-check-certificate https://raw.githubusercontent.com/ShadowsocksR-Live/shadowsocksr-native/master/install/ssrn-install.sh\nchmod +x ssrn-install.sh\n./ssrn-install.sh 2\u003e\u00261 | tee ssr-n.log\n```\n\nAfter installation, we can view the status with \n```\nsystemctl status ssr-native.service\n```\n\nAnd we can view or edit the configuration with `cat` or `vi` in `root` privilege\n```\ncat /etc/ssr-native/config.json\n```\n\nAfter we changed the server configuration, we must restart the service to make the changes take effect.\n```\nsystemctl restart ssr-native.service\n```\n\nTo stop the server, please run\n```\nsystemctl stop ssr-native.service\n```\n\nTo uninstall the server, use the following command\n```\n./ssrn-install.sh uninstall\n```\n\n\n## Stargazers over time\n\n[![Stargazers over time](https://starchart.cc/ShadowsocksR-Live/shadowsocksr-native.svg)](https://starchart.cc/ShadowsocksR-Live/shadowsocksr-native)\n      \n","funding_links":[],"categories":["C","Before using VPN, please modify **[DNS](https://www.dnsperf.com/#!dns-resolvers)** to ensure that the vpn server is correct resolve. [How to Change Your DNS](https://www.wikihow.com/wikiHowTo?search=dns) **[Change sim Mobile data APN](https://apkpure.com/apn-settings/net.thenatureweb.apnsettings)**"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FShadowsocksR-Live%2Fshadowsocksr-native","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FShadowsocksR-Live%2Fshadowsocksr-native","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FShadowsocksR-Live%2Fshadowsocksr-native/lists"}