在Amazon AWS上配置SoftEther

SoftEther
(means Software Ethernet) 是一个​​​​​​​​​​​​​​开源跨平台多协议的科学上网工具
,是世界上最强大、易用的多协议科学上网软件之一。可以运行在Windows、Linux、Mac、FreeBSD和Solaris上。支持SSL-HTTPS及6种主流协议(OpenXXX、IPsec、L2TP、MS-SSTP、L2TPv3和EtherIP)。

下面介绍如何使用SoftEther搭建 Server。

Step 1: 获取机器

Amazon AWS提供12个月每月750小时(31.25天)t2.micro实例随意搭配使用,超过这个期限就要收费了。搭建只需要一个实例,所以时间足够了。建议选择比较近的DC,如Tokyo、Seoul。

在亚马逊上启动一台实例需要一个密钥对,创建密钥对时要把key(如aws.pem)保存下来,登陆或与虚机传数据都会用到这个key。

以下命令按需执行:

# 使用key来登陆时可能会遇到权限的问题
$ sudo chmod 500 tokyo.pem

# 登陆,instance-ip为实例占有的公网IP
$ sudo ssh -i tokyo.pem <instance-ip>

# 将本地file.txt拷贝到EC2实例
$ sudo scp -i tokyo.pem file.txt ec2-user@<instance-ip>:~/

# 将EC2实例中的数据拷贝到本地
$ sudo scp -i tokyo.pem ec2-user@<instance-ip>:~/remote-file.txt .

下图中的公有IPv4即为 instance-ip

Amazon Linux 类似于 CentOS/RHEL 执行命令的时候注意区分!!!

更新服务器上的软件

Debian/Ubuntu:

$ sudo apt-get update && sudo apt-get upgrade

# 编译SoftEther依赖的工具
$ sudo apt-get install build-essential -y

CentOS/RHEL:

$ sudo yum upgrade

# 编译SoftEther依赖的工具
$ sudo yum groupinstall "Development Tools"

Step 2: 获取SoftEther

如果想偷懒可以使用下载好的SoftEther服务器以及客户端安装包,然后跳到 Step 3,如果动手能力强请忽略! 跳转 --->>>   SoftEther 服务器端-linux 客户端安装包-windows

SoftEther网站在国内访问不到,又不能在EC2实例上使用浏览器,这时需要用到文本网络浏览器lynx这个利器。

下载lynx

Debian/Ubuntu:

$ sudo apt-get install lynx -y

CentOS/RHEL:

# 在AWS RHEL EC2实例上安装lynx需要开启下面的通道
$ sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
$ sudo yum install lynx -y

下载softether

$ lynx http://www.softether-download.com/files/softether/

 按上下键选择,回车进入 (本人使用的是softether-xxx-v4.22-9634版本,你也可以使用较新的版本)

选择平台

选择服务端软件

选择机器位数

下载 :   选中 Save to disk 下载到服务器上,若保存失败,则可以复制 Downloaded link 地址在浏览器里打开即可下载,然后上传到服务器上即可!客户端同理!

SoftEther客户端也可以使用这种方式下载,之后通过前边的scp或者Filezilla等将其拷贝到本地。

Step 3: 安装并配置SoftEther

# 解压
$ tar xzvf softether-vpn-v4.22-9634-beta-2016.11.24-linux-x64-64bit.tar.gz

# 编译
$ cd vpnserver
$ make

编译的过程中会多次提示License Agreement的选择,想用就选Yes(type ‘1’)。

配置

# 更改目录位置
$ cd ..
$ mv vpnserver /usr/local
$ cd /usr/local/vpnserver/

# 更改权限
$ sudo chmod 600 *
$ sudo chmod 700 vpnserver
$ sudo chmod 700 vpncmd

开机启动

将SoftEther创建问一个service,并配置开机自动启动。

首先创建一个文件vim /etc/init.d/vpnserver,将以下内容粘贴进去:

#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
    $DAEMON start
    touch $LOCK
    ;;
stop)
    $DAEMON stop
    rm $LOCK
    ;;
restart)
    $DAEMON stop
    sleep 3
    $DAEMON start
    ;;
*)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
esac
exit 0

如果不存在/var/lock/subsys文件夹,则需要创建一个mkdir /var/lock/subsys

启动服务

# 启动
$ sudo chmod 755 /etc/init.d/vpnserver && /etc/init.d/vpnserver start

# 开机自启动
# Debian/Ubuntu
$ sudo update-rc.d vpnserver defaults

# CentOS/RHEL
$ sudo chkconfig --add vpnserver

Step 4: 更改Admin密码

$ cd /usr/local/vpnserver/
$ ./vpncmd    # 选择1 "Management of VPN Server or VPN Bridge"

# 在提示输入的地方直接按空格,设置服务密码
VPN Server> ServerPasswordSet

Step 5: 创建一个虚拟Hub

$ cd /var/local/vpnserver/
$ ./vpncmd    # 选择1 "Management of VPN Server or VPN Bridge"

注意看上图的提示,如果选择连接到某一个Virtual Hub则写入Hub的名称,如果要使用Admin模式连接Server,则直接按Enter键。(建议直接按回车)

 这一点很重要。创建Hub需要Admin权限。你可以根据提示符是VPN Server>还是VPN Server/VPN>来区分。

# 创建一个名为VPN的Hub
VPN Server> HubCreate VPN

# 进入名为VPN的Hub的上下文
VPN Server> Hub VPN

Step 6: Enable SecureNAT

SecureNAT需要绑定到特定的Virtual Hub上,所以这里需要进入Hub的上下文。

VPN Server/VPN> SecureNatEnable

Step 7: 创建用户并设置用户密码   Group Name不要填   用户名和密码用来登录VPN客户端

VPN Server/VPN> UserCreate username
VPN Server/VPN> UserPasswordSet username

 使用userlist 可以查看创建的用户

Step 8: Setup L2TP/IPsec

运行该命令需要Admin Mode。  在 VPN Server/VPN>  下也可执行

Step 9: Setup SSTP/OpenVPN

SoftEther支持Microsoft SSTP VPN和OpenVPN。     公有IPv4即为 instance-ip

# 生成自签名证书
VPN Server> ServerCertRegenerate <instance-ip>

# 生成证书,该证书可被导入操作系统或浏览器
VPN Server> ServerCertGet ~/cert.cer

# enable OpenVPN
VPN Server> OpenVpnEnable yes /PORTS:1194

# 获取OpenVPN配置
VPN Server> OpenVpnMakeConfig ~/my_openvpn_config.zip

客户端设置

这里只讲在Windows上使用SoftEther客户端进行配置。安装SoftEther的过程很简单,略。

创建虚拟适配器

创建VPN连接

创建VPN连接时,虚拟HUB名记得填VPN,  端口号 443 勾选禁用 NAT-T, 然后在安全组里添加入站规则, 不然的话 VPN连接不稳定,老是断开!

Tips:

SoftEther命令行可以说非常强大,本文只介绍了它的冰山一角,可以使用?help来查看其所有命令。AWS Free Tier提供的流量完全够自己使用,如果多人使用可能会超流量,这时候就会从你的信用卡上扣钱了。如果怀疑有恶意连接,则可以使用iftop来监控机器的带宽使用情况,并将恶意ip使用EC2的安全策略过滤掉。

改编自:

使用SoftEther设置VPN Server

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛定谔的猫喵喵

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值