Total Pageviews

Wednesday 16 May 2018

帮助你绕过审查的机器人-cecibot

如果直接的审查规避方案无效(或总有一天会失效),那么是否可以利用间接的方法?比如我们日常使用的通信渠道,像电子邮件或者是移动消息应用?一位土耳其开发者开发了机器人程序 cecibot,你通过电子邮件或 Telegram 发送被屏蔽的网址给它,它会在几分钟内抓取内容返回给你。程序源代码托管在 GitHub 上。该工具显然不存在隐私,开发者称所有请求会至少记录和保存一个月,他承诺不会将数据分享给第三方.
-------------

Censorship Circumvention Bot  

cecibot

Installation Instructions

  1. Install Node.js and PM2:
    # Install Node.js
    curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
    sudo apt-get install -y nodejs build-essential
    
    # Install PM2
    sudo npm install pm2@latest -g
    
  2. Configure PM2:
    # Ensure that PM2 will be restarted on reboot
    pm2 startup
    
    # Link PM2 to [Keymetrics]
    pm2 link <KEYMETRICS_SECRET> <KEYMETRICS_PUBLIC>
    
  3. Install redis-stat:
    sudo apt-get install -y ruby-all-dev 
    (用包管理器安装ruby,得到的可执行文件为ruby2.1以及gem2.1,而非ruby和gem.
    root@ar:~# which ruby2.1
    /usr/bin/ruby2.1
    root@ar:~# ruby2.1 --version
    ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]
    root@ar:~# which gem2.1
    /usr/bin/gem2.1
    root@ar:~# )
    sudo gem2.1 install redis-stat
    
  4. Install fonts for Chinese characters:
    sudo apt-get install -y fonts-wqy-zenhei ttf-wqy-microhei
    
  5. Ensure that the following directories exist (if not, make them):
    ~/.cecibot/backend
    ~/.cecibot/email
    ~/.cecibot/telegram
    
  6. Use StevenBlack's hosts to block adware & malware:
    sudo wget https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts -O /etc/hosts
    sudo ifdown --exclude=lo -a && sudo ifup --exclude=lo -a
    
    • You should update your hosts file regularly (preferably every week, or at least once a month), using the same commands.
  7. Install the latest version of Python 3:
    sudo add-apt-repository ppa:deadsnakes/ppa
    sudo apt-get update
    sudo apt-get install -y python3.6 python3.6-dev
    
  8. Install pip:
    wget https://bootstrap.pypa.io/get-pip.py -O - | python3.6 - --user
    
  9. Install redis using chris-leas PPA:
    sudo add-apt-repository ppa:chris-lea/redis-server
    sudo apt-get update
    sudo apt-get install -y redis-server
    

The Backend

  1. Install all the dependencies of the backend:
    # Dependencies of Chromium
    sudo apt-get install libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1\
      libxi6 libxtst6 libnss3 libcups2 libxss1 libxrandr2 libasound2\
      libpangocairo-1.0-0 libatk1.0-0 libatk-bridge2.0-0 libgtk-3-0
    
    python3.6 -m pip install --user pyppeteer redis requests
    

Frontends

E-Mail

  1. Install all the dependencies of the E-Mail frontend:
    python3.6 -m pip install --user flask redis boto3
    
  2. Save your AWS credentials at ~/.aws/credentials:
    [default]
    aws_access_key_id=YOUR_ACCESS_KEY
    aws_secret_access_key=YOUR_SECRET_KEY
    
  3. Set the default AWS region at ~/.aws/config:
    [default]
    region=eu-west-1
    

Telegram

  1. Install all the dependencies of the Telegram frontend:
    python3.6 -m pip install --user python-telegram-bot redis
    

The Web

  1. Install nginx:
    sudo apt install nginx
    
  2. Install Certbot for Let's Encrypt and follow all of the instructions on their website to get an HTTPS certificate for both cecibot.com and www.cecibot.com with HTTP -> HTTPS redirection enabled for both:
    https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx

Running

  1. redis-stat
    redis-stat --server=63790 --daemon
    
 from https://github.com/boramalper/cecibot

No comments:

Post a Comment