Git Product home page Git Product logo

climber's Introduction

Climber

English 中文

Yet another cross platform ss/trojan GUI client.

Currently support MacOS(10.10 or up) and Windows(vista or up), Linux support is on plan.

For windows, Climber run as portable mode by default. (Will write files in executable directory)

Sometimes you don’t want the portable mode, for example when you install Climber to C:\Program Files (x86)\

You can create a file named disable_portable in executable directory to disable portable mode. (Will write files in local user data directory)

Build

This project was developed under CLion, easy to build using cmake.

MacOS

Requirement:

  1. homebrew https://brew.sh/
  2. command line tools xcode-select --install
  3. cmake brew install cmake

Build:

git clone --recurse-submodules https://github.com/Climber7/Climber
cd Climber
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release .. 
make -j$(nproc)
make create_zip

Windows

Requirement:

  1. Visual Studio or Visual Studio Build Tools
  2. cmake

Build:

git clone --recurse-submodules https://github.com/Climber7/Climber
cd Climber
md build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles" .. 
nmake # or ..\tools\win32\jom -j8
nmake create_zip

Servers Configuration

Click Open Config Directory and create a file named servers.json

[
    {
        "name": "ss-sample",
        "type": "shadowsocks",
        "data": {
            "server": "1.1.1.1",
            "server_port": 8888,
            "local_address": "127.0.0.1",
            "local_port": 1080,
            "password": "xxxxxx",
            "timeout": 300,
            "method": "xchacha20-ietf-poly1305",
            "fast_open": false
        }
    },
    {
        "name": "tj-sample",
        "type": "trojan",
        "data": {
            "run_type": "client",
            "local_addr": "127.0.0.1",
            "local_port": 1080,
            "remote_addr": "xxx.com",
            "remote_port": 443,
            "password": [
                "xxxxxx"
            ],
            "log_level": 1,
            "ssl": {
                "verify": true,
                "verify_hostname": true,
                "cert": "",
                "cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA",
                "cipher_tls13": "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384",
                "sni": "",
                "alpn": [
                    "h2",
                    "http/1.1"
                ],
                "reuse_session": true,
                "session_ticket": false,
                "curves": ""
            },
            "tcp": {
                "no_delay": true,
                "keep_alive": true,
                "reuse_port": false,
                "fast_open": false,
                "fast_open_qlen": 20
            }
        }
    }
]

Note: Local address and port will be override by Climber, so you can let these empty or delete these key. You can set these values in preferences.

Special Thanks

And thanks to many other great open source project!

QA

Q: Why not make a GUI for configuring servers?

A: I like config file, it's perfect for me. In fact, I'm lazy.

Announcement

This project is just for research and education purpose, using it requires you to ensure compliance with local laws. Otherwise you are not allow to use it, and should uninstall it immediately.

Any violation of the law by anyone using this software has nothing to do with the author.

climber's People

Contributors

climber7 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.