• Stars
    star
    58,398
  • Rank 175 (Top 0.01 %)
  • Language
    C#
  • License
    Other
  • Created almost 12 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A C# port of shadowsocks

[logo] Shadowsocks for Windows

Build Release

Features

  • Connect to Shadowsocks servers.
  • Automatically set system proxy.
  • SIP002 URL scheme.
  • SIP003 plugins.
  • SIP008 online configuration delivery.

Downloads

Download from releases.

Usage

  • ๐Ÿš€

PAC

  • The PAC rules are generated from the geosite database in v2fly/domain-list-community.
  • Generation modes: whitelist mode and blacklist mode.
  • Domain groups: geositeDirectGroups and geositeProxiedGroups.
    • geositeDirectGroups is initialized with cn and geolocation-!cn@cn.
    • geositeProxiedGroups is initialized with geolocation-!cn.
  • To switch between different modes, modify the geositePreferDirect property in gui-config.json
    • When geositePreferDirect is false (default), PAC works in whitelist mode. Exception rules are generated from geositeDirectGroups. Unmatched domains goes through the proxy.
    • When geositePreferDirect is true, PAC works in blacklist mode. Blocking rules are generated from geositeProxiedGroups. Exception rules are generated from geositeDirectGroups. Unmatched domains are connected to directly.
  • Starting from 4.3.0.0, shadowsocks-windows defaults to whitelist mode with Chinese domains excluded from connecting via the proxy.
  • The new default values make sure that:
    • When in whitelist mode, Chinese domains, including non-Chinese companies' Chinese CDNs, are connected to directly.
    • When in blacklist mode, only non-Chinese domains goes through the proxy. Chinese domains, as well as non-Chinese companies' Chinese CDNs, are connected to directly.

User-defined rules

  • To define your own PAC rules, it's recommended to use the user-rule.txt file.
  • You can also modify pac.txt directly. But your modifications won't persist after updating geosite from the upstream.

Development

  • IDE: Visual Studio 2019
  • Language: C# 9.0
  • SDK: .NET 5

Build

  1. Clone the repository recursively.
$ git clone --recursive https://github.com/shadowsocks/shadowsocks-windows.git
  1. Open the repository in VS2019, switch to the Release configuration, and build the solution.

Contribute

PR welcome

You can use the Source Browser to review code online.

License

Shadowsocks-windows is licensed under the GPLv3 license.

BouncyCastle.NetCore (MIT)       https://github.com/chrishaly/bc-csharp
Caseless.Fody (MIT)              https://github.com/Fody/Caseless
Costura.Fody (MIT)               https://github.com/Fody/Costura
Fody (MIT)                       https://github.com/Fody/Fody
GlobalHotKey (GPLv3)             https://github.com/kirmir/GlobalHotKey
MdXaml (MIT)                     https://github.com/whistyun/MdXaml
Newtonsoft.Json (MIT)            https://www.newtonsoft.com/json
Privoxy (GPLv2)                  https://www.privoxy.org
ReactiveUI.WPF (MIT)             https://github.com/reactiveui/ReactiveUI
ReactiveUI.Events.WPF (MIT)      https://github.com/reactiveui/ReactiveUI
ReactiveUI.Fody (MIT)            https://github.com/reactiveui/ReactiveUI
ReactiveUI.Validation (MIT)      https://github.com/reactiveui/ReactiveUI.Validation
WPFLocalizationExtension (MS-PL) https://github.com/XAMLMarkupExtensions/WPFLocalizationExtension/
ZXing.Net (Apache 2.0)           https://github.com/micjahn/ZXing.Net

More Repositories

1

shadowsocks-android

A shadowsocks client for Android
Kotlin
35,072
star
2

shadowsocks

Python
33,580
star
3

ShadowsocksX-NG

Next Generation of ShadowsocksX
Swift
32,386
star
4

shadowsocks-rust

A Rust port of shadowsocks
Rust
8,442
star
5

shadowsocks-iOS

Removed according to regulations.
Objective-C
8,181
star
6

shadowsocks-qt5

A cross-platform shadowsocks GUI client
C++
7,971
star
7

shadowsocks-go

go port of shadowsocks (Deprecated)
Go
6,610
star
8

shadowsocks-manager

A shadowsocks manager tool for multi user and traffic control.
JavaScript
4,116
star
9

ChinaDNS

Protect yourself against DNS poisoning in China.
C
3,596
star
10

openwrt-shadowsocks

Shadowsocks-libev for OpenWrt/LEDE
Makefile
3,249
star
11

v2ray-plugin

A SIP003 plugin based on v2ray
Go
2,689
star
12

simple-obfs

A simple obfuscating tool (Deprecated)
C
2,361
star
13

shadowsocks-gui

Shadowsocks GUI client
CoffeeScript
2,013
star
14

libQtShadowsocks

A lightweight and ultra-fast shadowsocks library written in C++14 with Qt framework
C++
1,500
star
15

shadowsocks-nodejs

CoffeeScript
1,246
star
16

luci-app-shadowsocks

OpenWrt/LEDE LuCI for Shadowsocks-libev
Lua
1,149
star
17

shadowsocks-org

www.shadowsocks.org
HTML
877
star
18

ChinaDNS-Python

Protect yourself against DNS poisoning in China.
Python
767
star
19

shadowsocks-chromeapp

Chrome client for shadowsocks
CoffeeScript
698
star
20

kcptun-android

kcptun for Android.
Shell
570
star
21

simple-obfs-android

A simple obfuscating tool for Android
C
440
star
22

v2ray-plugin-android

A SIP003 V2ray plugin on Android
Kotlin
439
star
23

crypto2

The fastest cryptographic library in the galaxy
Rust
350
star
24

ShadowDNS

A DNS forwarder using Shadowsocks as the server
Python
334
star
25

papers

List of papers related to shadowsocks
211
star
26

shadowsocks-dotcloud

a port of shadowsocks via websockets protocol, able to tunnel through HTTP proxy
CoffeeScript
202
star
27

shadowsocks-hub

A web app managing shadowsocks users, servers, nodes, products, accounts, and traffic. Suitable for internal use by companies, organizations, and friends.
JavaScript
133
star
28

qtun

Yet another SIP003 plugin based on IETF-QUIC
Rust
122
star
29

shadow-shop

Building highly customizable e-commerce websites selling shadowsocks services, using Wordpress and WooCommerce
PHP
107
star
30

tun2socks-iOS

tun2socks as a library for iOS apps
96
star
31

Shadowsocks-Net

โœˆ A light-weight, cross-platform, extensible Shadowsocks developed in C# (.NET Core).
C#
95
star
32

shadowsocks-restful-api

Secure, reliable, standard restful api for managing shadowsocks-libev
JavaScript
83
star
33

stackscript

Shell
73
star
34

libsscrypto

Build libsscrypto.dll for shadowsocks-windows.
C
61
star
35

iptables

iptables is the userspace command line program used to configure the Linux 2.4.x and later packet filtering ruleset. It is targeted towards system administrators.
C
56
star
36

openwrt-feeds

OpenWrt/LEDE feeds
Makefile
54
star
37

shadowsocks-crypto

Shadowsocks Crypto
Rust
46
star
38

libev

A fork of libev
Shell
37
star
39

sysproxy

System Proxy Agent for Shadowsocks Windows
C
32
star
40

shadowsocks-hub-api

A set of open and standard restful APIs for managing shadowsocks users, servers, nodes, products, accounts, and traffic.
JavaScript
27
star
41

openssl-android

A fork of OpenSSL for shadowsocks-android
C
27
star
42

tun2socks

Rust
25
star
43

android-ndk-go

Circle CI Android image with NDK and golang + rust, for building golang and/or rust for NDK.
Dockerfile
20
star
44

libudns

A fork of libudns
C
13
star
45

overture-android

A wrapper of overture for shadowsocks-android
Shell
10
star
46

tls

TLS version 1.3
Rust
8
star
47

iana-ip-db

IANA IP Number Resources
Rust
5
star