在AWS EC2上搭建VPN服务

在AWS ES2上搭建VPN服务主要有3种比较便捷的方式。

一是搭建IPSec VPN,二是安装Shadowsocks,三是安装v2ray。

搭建L2TP VPN

下载安装

ubuntu

wget https://git.io/vpnsetup -O vpnsetup.sh && sudo sh vpnsetup.sh

centos

wget https://git.io/vpnsetup-centos -O vpnsetup.sh && sudo sh vpnsetup.sh

修改配置

YOUR_IPSEC_PSK='lockshell.com'
YOUR_USERNAME='lockshell'
YOUR_PASSWORD='1234567'

启动

sudo sh vpnsetup.sh

开放端口

现在 vpn 服务还不能访问,需要将 vpn 服务端口对外网开放。vpn 服务使用到的端口有 500/4500/50/51/1701,通过配置AWS安全组可以开放这些端口。

客户端访问

Mac

  • 打开系统偏好设置 → 网络
  • 点 + 添加网络,接口选 vpn,vpn 类型选 IPSec 上的 L2TP,服务名称随意
  • 选中刚刚创建的网络,将上面生成的 vpn 凭证填入,服务器地址填 Server Ip,账户名称填 Username,点开鉴定设置,密码填 Password,共享的秘钥填 IPsec PSK
  • 点击 连接 即可

iOS

  • 设置 → 通用 → vpn
  • 添加 vpn 配置 → 类型选择 L2TP → 填入上述 vpn 凭证即可

更详细的说明,请参考:配置 IPsec/L2TP VPN 客户端

添加更多用户

直接编辑/etc/ppp/chap-secrets文件,新增用户即可,无需重启服务。

sudo vim /etc/ppp/chap-secrets

例子如下:

"user1" l2tpd "password1" *
"user2" l2tpd "password2" *
"user3" l2tpd "password3" *

搭建shadowsocks VPN

安装shadowsocks

# 更新apt-get
sudo apt-get update

# 安装python包管理工具
sudo apt-get install python-setuptools
sudo apt-get install python-pip

# 安装shadowsocks
sudo pip install shadowsocks

修改配置

vim /etc/shadowsocks/ss.json
{
    "server":"0.0.0.0",
    "server_port":9000, //ss连接服务器的端口
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"123456", // 设置ss连接时的密码
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open":false,
    "workers": 1
}

配置多个端口和密码

{
	"server":"0.0.0.0",
	"local_address":"127.0.0.1",
	"local_port":1080,
	"port_password":{
		"9000":"123",
		"9001":"456",
		"9002":"789",
	},
	"timeout":300,
	"method":"aes-128-gcm",
	"fast_open": false
}

启动shadowsocks

  • 启动:sudo /usr/local/bin/ssserver -c /etc/shadowsocks/ss.json -d start
  • 停止:sudo /usr/local/bin/ssserver -c /etc/shadowsocks/ss.json -d stop
  • 重启:sudo /usr/local/bin/ssserver -c /etc/shadowsocks/ss.json -d restart

客户端访问

Shadowsocks客户端可从Github上下载,shadowsocks-android,或者Shadowsocks官网下载。

本地设备通过Shadowsocks客户端连接VPN服务器,即可实现翻墙。添加服务器,地址即为Amazon EC2的公网IP,端口为配置文件中设置的9000,密码配置中的123456。

本文由 络壳 原创或整理,转载请注明出处