很多时候我们需要从外面访问公司或者家里的文件或者网络,这个时候就可以通过搭建vpn来实现,这里我推荐用softether来实现。
softether同时支持sslvpn,openvpn,ms-sstp,l2tp四种协议,可以实现对用户的单账号登录、限速、访问内容限制等功能。其中softether自己的sslvpn协议可以同时32链路连接,速度超过openvpn。
本文softether服务端配置基于Ubuntu12.04
1.配置softether安装环境:1
| apt-get install build-essential
|
2.下载softether服务器端程序:1
| wget http://www./files/softether/v4.06-9435-beta-2014.03.26-tree/Linux/SoftEther%20VPN%20Server/32bit%20-%20Intel%20x86/softether-vpnserver-v4.06-9435-beta-2014.03.26-linux-x86-32bit.tar.gz
|
最新的下载地址
下载server包
3.解压程序:1
| tar zxf softether-vpnserver-v4.06-9435-beta-2014.03.26-linux-x86-32bit.tar.gz
|
进入softether目录编译:
1 2
| cd vpnserver/ make //安装过程用一路选择Y(yes)
|
然后执行:
1 2 3 4 5 6
| cd .. mv vpnserver /usr/local cd /usr/local/vpnserver/ chmod 600 * chmod 700 vpncmd chmod 700 vpnserver
|
4.配置启动项:新建启动项:
1
| vim /etc/init.d/vpnserver
|
在启动项中加入以下命令行:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| #!/bin/sh ### BEGIN INIT INFO # Provides: vpnserver # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable Softether by daemon. ### END INIT INFO 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
|
5.其他配置:1 2 3 4
| chmod 755 /etc/init.d/vpnserver mkdir /var/lock/subsys update-rc.d vpnserver defaults /etc/init.d/vpnserver start
|
6.softether服务端验证:1 2 3 4
| cd /usr/local/vpnserver/ ./vpncmd 3 check
|
4个都是ok的话就表示安装成功。
7.softether服务端相关配置:1 2 3 4 5 6
| ./vpncmd 1 回车 回车 VPN Server>ServerPasswordSet 设置管理员密码
|
这里服务器端就配置完成了,下面配置本地管理段。
8.本地管理端配置下载本地管理端:
下载本地客户端
安装完成后开始配置:
配置1
配置2
然后连接进入,第一次运行时会有个服务端初始化过程,按照图片的选项勾选就行了:
配置3
配置4
配置5
配置6
配置7
配置8
配置9
配置10
配置11
9.配置完成,赶紧用客户端连接服务器吧客户端下载:
客户端
具体连接教程在这里就不说了。自己百度下,如果有时间我可以做个说明。
10.所在最后
由于softether的官网已被墙,所以我在国内做了一个备用下载地址:
百度网盘,密码:v2cf ;
注意区分cpu构架(intel或者ARM等),系统(linux或者win),和系统位数(32位 or 64位)!
softether的连接方法,博客中也有介绍,大家可以找一找。
补充-l2tp端口修改方法(未测试)关于l2tp更改端口的问题,我在github上的softether源码中搜索了下,l2tp的端口定义在源码中src/Cedar/IPsec.h 文件中:
1 2 3
| #define IPSEC_PORT_L2TP 1701 // L2TP #define IPSEC_PORT_IPSEC_ISAKMP 500 // ISAKMP #define IPSEC_PORT_IPSEC_ESP_UDP 4500 // IPsec ESP over UDP
|
如果需要修改l2tp的默认端口,就只需要更改定义中的1701 端口
不过安装方法就需要更改了,具体步骤如下:
1 2 3 4 5 6
| 1. git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git 2. cd SoftEtherVPN 3. 更改src/Cedar/IPsec.h中定义的l2tp端口 4. ./configure 5. make 6. make install
|
理论方法,未测试,如果测试能通过,请在下面留言反馈下
其它的用法请参考github上Softether中的README
|