GithubHelp home page GithubHelp logo

charleylee87 / crack Goto Github PK

View Code? Open in Web Editor NEW

This project forked from breakwa2333/crack

0.0 1.0 0.0 141 KB

A light proxy based on TLS to avoid network censorship. 一个轻量级代理,基于TLS帮助躲避审查。

License: MIT License

Python 90.82% Shell 9.18%

crack's Introduction

Crack 裂缝

A light proxy based on TLS to avoid network censorship. 一个轻量级代理,基于TLS帮助躲避审查。

ABOUT THIS PROJECT 关于本项目

  • In order to prove both HTTP/WS and camouflage website isn't a necessary factor to crack the wall, this project simply use TCP+TLS as the transport methord only.
  • Goal for this project is to balance the speed, security and stability.
  • 证明 HTTP/WS 和网站伪装不是过墙的重要因素,本项目只使用TCP+TLS作为传输方式。
  • 本项的目标是平衡速度,安全以及稳定性。

TO DO LIST 未来目标

  • Auto mode (Crack built-in automatic mode to avoid DNS leaks caused by PAC) (Finished)
  • Proxy for UDP data
  • TLS Pre-Handshake (Reduce latency)
  • Link Aggregation (Increase single-thread bandwidth during peak hours)
  • Chinalist automatic learning
  • 自动模式(Crack内建自动模式,避免因PAC造成的DNS泄露) (已完成)
  • UDP数据代理
  • TLS预握手(减少延迟)
  • 链路聚合(高峰时段增加单线程带宽)
  • Chinalist自动学习

PROJECT STATUS 项目状态

  • 2019/12/30
    • Support HTTP proxy for TCP data only.
    • Lower CPU usage than before.
    • 目前仅支持TCP数据HTTP代理。
    • 相比之前更少的CPU占用。
  • 2019/12/31
    • Support switching servers.
    • 支持切换服务器。
  • 2020/01/02
    • Support built-in auto mode, avoid DNS leaks caused by PAC.
    • Speed up server verification speed.
    • 支持内建自动模式,避免因PAC模式造成的DNS泄露。
    • 加速服务器认证速度。
  • 2020/01/05
    • Support Certificate Authority Root Certificate.
    • Fix path escape characters under Windows environment.
    • 支持证书颁发机构根证书。
    • 修复Windows下路径转义符问题。
  • 2020/01/08
    • Reduce 1-RTT latency.
    • 减少1-RTT延迟。
  • 2020/01/11
    • Support SOCKS5 proxy for TCP data.
    • 支持TCP数据SOCKS5代理。

PROFILE KEYWORDS 配置文件关键字

  • LocalServer 本地服务器
    • mode 内置路由模式,现有3种模式:'global','auto','none'
      • global 全局模式,此关键字将导致所有流经本地代理的流量全部转发至代理服务器。
      • auto 自动模式,此关键字将导致所有流经本地代理的流量根据chinalist排除国内流量,剩余流量将全部转发至代理服务器。
      • none 直连模式,此关键字将导致所有流经本地代理的流量全部直接转发到对应服务器。
    • active 当前所选择使用的服务器
    • uuid 发送至服务器的认证ID(一个服务器仅限一个)
    • ca CA根证书,现有2种模式:'default',自签CA根证书路径
      • default 默认模式,此关键字将导致加载系统已安装的所有受信任CA机构根证书
      • 自签CA根证书路径 自定义模式,此关键字将仅加载路径所指定的自签CA根证书
    • server_host 服务器主机名
    • server_port 服务器监听的端口
    • local_port 指定本地服务器监听的端口
    • china_list_path china_list文件路径
  • Server 服务器
    • uuids 合法认证ID列表
    • crt 服务器证书路径
    • key 服务器私钥路径
    • port 指定服务器监听端口

USAGE 用法

警告:请勿使用锐速,可能会造成不可预知的负面效果。

  • 安装(root) curl -L https://raw.githubusercontent.com/breakwa2333/Crack/master/install.sh | bash
  • 启动 systemctl start Crack
  • 重启 systemctl restart Crack
  • 状态 systemctl status Crack
  • 编辑服务器配置文件(root) Crack

FAQ 常见问题

  • Q: 客户端代理服务器端口是不是配置文件中'local_port'指定的端口?
    A: 是的,Crack与其他代理不同的是HTTP代理与SOCKS5代理共用同一端口,自动识别协议。
  • Q: Crack是基于什么版本的TLS协议?
    A: 基于TLS1.3,出于安全原因目前Crack仅支持TLS1.3及后续版本。
  • Q: 为什么我不能使用安装脚本安装?
    A: 安装脚本仅支持Ubuntu18.04+,并且需要root权限。
  • Q: Crack支持自签证书吗?
    A: Crack支持自签证书以及CA机构颁发的证书,如果使用自签证书需要下载根证书,并在Crack客户端配置文件中填写根证书路径。使用Crack时自签根证书无需导入系统 根证书目录,因此不会影响其他应用安全性。
  • Q: 为什么Crack客户端开启GEOIP后内存占用那么多?
    A: Crack客户端在启动时会将CHINALIST以及GEOIP中所有IP段和域名以哈希表的形式加载到内存中,以空间换时间显著提高查找速度。最新版本已优化哈希表,在满足查询效率的同时显著减小内存占用,开启GEOIP内存占用仅增加8MiB。

crack's People

Contributors

breakwa2333 avatar

Watchers

James Cloos 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.