Coder Social home page Coder Social logo

aws-ss's Introduction

aws-ss

AWS Shadowsocks Server Deployer

This project is for easy deployment of a private Shadowsocks service on AWS.

Requirements

  • AWS account (first 12 months are free)
  • Public subnet (internet gateway and route to 0.0.0.0/0 configured)
    • On a newly create account/region, all available subnets are public
  • Permission to run CloudFormation and create new: IAM roles, security groups, S3 buckets, and instances.
  • Key pair (either created using AWS or imported)
    • Allows logging in to the instance if required; during install can specify SSH access (default is allowed).
  • Shadowsocks client - recommend Outline

Install

  1. Create/choose a public subnet, note the Subnet ID and VPC
  2. Create/import/choose a key pair, note the name
  3. Download the latest CloudFormation template
  4. Go to CloudFormation and choose the desired region (top right) and choose Create a stack use Upload a template to Amazon S3 and choose the file just downloaded
  5. Fill in the details and make sure to change the 'Enter a temporary password' / TempConfigPassword click Next (bottom right) and Next again
  6. Tick the I acknowledge that AWS CloudFormation might create IAM resources box - the template creates a custom role that the instance uses to interact with its security group and the S3 bucket and click Create
  7. Waiting until the status becomes CREATE_COMPLETE, click the stack and choose the Outputs tab
  8. Click the S3 URL, enter the temporary password (TempConfigPassword) entered earlier
  9. One (or more if more than 1 SSEndpoints / 'How many endpoints to create?' entered) endpoint details should appear
  10. Click the generated hyperlink to add to your Shadowsocks client

How does it work?

The CloudFormation script creates the infrastructure, the (Amazon Linux 2 AMI) EC2 instance which gets created does a git clone of this repository and invokes the bash scripts:

  • install_ss_server.sh
    • installs dependencies, gets and builds Shadowsocks and optimises the operating system
  • create_ss_endpoint.sh
    • generates a random port and password, creates the configuration and adds the ports to the security group (firewall)
    • runs X times based on the SSEndpoints / How many endpoints to create? setting
  • server-start_gen.sh
    • generates the /opt/shadowsocks/server-start.sh file, generates the index.html and uploads to the S3 bucket

Todo

...

aws-ss's People

Contributors

olliejc avatar

Watchers

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