如何在 Debian / Ubuntu 服务器上架设 L2TP / IPSec
发布网友
发布时间:2022-04-23 16:31
我来回答
共1个回答
懂视网
时间:2022-04-12 04:35
L2MP (Linux+Lighttpd+MySQL+PHP) 使用轻量级的 lighttpd 作为 Web 服务器,虽然名字没有 Apache 那么响亮,但用它搭建的网站却不少,如: Sourceforge、Meebo、豆瓣、猫眼宽频 这些。lighttpd 以安全、快速和内存消耗低著称,还专门为大型分布式连接环境做了
L2MP (Linux+Lighttpd+MySQL+PHP) 使用轻量级的 lighttpd 作为 Web 服务器,虽然名字没有 Apache 那么响亮,但用它搭建的网站却不少,如: Sourceforge、Meebo、豆瓣、猫眼宽频 这些。lighttpd 以安全、快速和内存消耗低著称,还专门为大型分布式连接环境做了优化,流行使用在基于 AJAX 或 Ruby on Rails 应用的网站。
介绍:lighttpd 是德国人开发的一款开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的 Web Server 环境。具有非常低的内存开销,CPU 占用率低,效能好,以及丰富的模块等特点。lighttpd 是众多 OpenSource 轻量级的 Web Server 中较为优秀的一个,支持FastCGI, CGI, Auth, 输出压缩 (output compress), URL 重写, Alias 等重要功能,而 Apache 之所以流行,很大程度也是因为功能丰富,在 lighttpd 上很多功能都有相应的实现了,这点对于 Apache 的用户是非常重要的,因为迁移到 lighttpd 就必须面对这些问题。
接下来就介绍一下在 Ubuntu 上快速搭建使用 lighttpd 的 L2MP Web 服务器。
1、安装 Lighttpd+MySQL+PHP5
sudo apt-get install lighttpd mysql-server php5-cgi phpmyadmin
2、配置 10-fastcgi.conf
先备份
sudo cp /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-available/10-fastcgi.conf.bak
然后,编辑
sudo gedit /etc/lighttpd/conf-available/10-fastcgi.conf
把原有内容删除,用以下内容替换掉
server.modules += ( "mod_fastcgi" )
fastcgi.server = ( ".php" =>
( "localhost" =>
( "socket" => "/tmp/php5-fcgi.socket",
"bin-path" => "/usr/bin/php5-cgi" )))
3、开启 fastCGI
sudo lighty-enable-mod fastcgi
4、重启服务器
sudo /etc/init.d/lighttpd restart
搞定,现在就可以使用 http://localhost/ 浏览运行在 lighttpd 上的网站了。以上方法在 Ubuntu Edgy, Feisty 上测试通过,还是记住以下几个命令和位置就行了。
sudo /etc/init.d/lighttpd restart (重启 lighttpd)
sudo gedit /etc/lighttpd/lighttpd.conf (配置 lighttpd)
sudo gedit /etc/php5/cgi/php.ini (配置 PHP)
sudo gedit /etc/mysql/my.cnf (配置 MySQL)
/var/www/(主目录位置)
热心网友
时间:2022-04-12 01:43
首先解释一个问题:在 iPhone 的 VPN 设置介面里(Settings >> General >> Network >> VPN),你可以看到三个标签:L2TP, PPTP, IPSec。但上面我们又讲本次介绍的 VPN 方式叫「L2TP / IPSec」,这两者究竟是什么关系?
这三个标签确实令人混淆,准确的写法应该是:L2TP over IPSec, PPTP, Cisco IPSec。PPTP 跟另外两者关系不大,且大家较为熟悉,暂且不提,L2TP 和 IPSec 的区别如下。
L2TP:一个「包装」协议,本身并不提供加密和验证的功能。
IPSec:在 IP 数据包的层级提供加密和验证功能,确保中间人无法解密或者伪造数据包。
本来,只用 IPSec 就可以实现 VPN,Mac OS X 和 Linux 都支持。但是 Mac OS X 和 iPhone OS 都推荐使用 L2TP over IPSec,在两者的图形介面上也只能设置这个。L2TP / IPSec 是业界标准,微软也支持。而只用 IPSec 的常见于 Linux-to-Linux 的应用,比如将两个位于不同地区的办公室网络安全地连在一起。这多是固定 IP 路由器到固定 IP 路由器级别的连接,只需保证数据包不被中途截获或者伪造就可以,故使用 L2TP 的意义不大。L2TP / IPSec 主要是实现所谓「Road Warrior」的设置,即用变动的客户端连固定的服务器。
Cisco 的 VPN 用的也是 IPSec 加密,但那是一套不同于 L2TP 的私有包装协议,用于提供用户管理之类的功能,因此一般都需要用 Cisco 自家的 VPN 客户端连接。iPhone / iPad 的 VPN 设置介面中的 IPSec 标签里有 Cisco 的标识,就是这个原因。
以下是在 Ubuntu 和 Debian 主机上架设 L2TP / IPSec VPN 的步骤,一共十四步。你需要有服务器的 root 权限(所以 DreamHost, BlueHost, MediaTemple 这些服务供应商帮你把一切打点周到的主机就无缘了),也需要一些基本的 Linux 知识。不然的话,我们还是推荐您找一位比较熟技术的朋友帮忙。
一、安装 IPSec。如上所述,IPSec 会对 IP 数据包进行加密和验证。这意味着你的电脑 / 移动设备与服务器之间传输的数据无法被解密、也不能被伪造。我推荐用 openswan 这个后台软件包来跑 IPSec。
用以下命令安装 openswan:
sudo aptitude install openswan二、用文字编辑器打开 /etc/ipsec.conf,改成这样:
version 2.0
config setup
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
oe=off
protostack=netkey
conn L2TP-PSK-NAT
rightsubnet=vhost:%priv
also=L2TP-PSK-noNAT
conn L2TP-PSK-noNAT
authby=secret
pfs=no
auto=add
keyingtries=3
rekey=no
ikelifetime=8h
keylife=1h
type=transport
left=YOUR.SERVER.IP.ADDRESS
leftprotoport=17/1701
right=%any
rightprotoport=17/%any三、用文字编辑器打开 /etc/ipsec.secrets,改成这样:
YOUR.SERVER.IP.ADDRESS %any: PSK "YourSharedSecret"(别忘了把「YOUR.SERVER.IP.ADDRESS」这部分换成你的服务器的 IP 地址,把「YourSharedSecret」部分换成随便一个字串,例如你喜欢的一句话,等等。)
四、运行以下命令:
for each in /proc/sys/net/ipv4/conf/*
do
echo 0 > $each/accept_redirects
echo 0 > $each/send_redirects
done五、检查一下 IPSec 能否正常工作:
sudo ipsec verify如果在结果中看到「Opportunistic Encryption Support」被禁用了,没关系,其他项 OK 即可。
六、重启 openswan:
sudo /etc/init.d/ipsec restart七、安装 L2TP。常用的 L2TP 后台软件包是 xl2tpd,它和 openswan 是同一帮人写的。
运行以下命令:
sudo aptitude install xl2tpd八、用文字编辑器打开 /etc/xl2tpd/xl2tpd.conf,改成这样:
[global]
ipsec saref = yes
[lns default]
ip range = 10.1.2.2-10.1.2.255
local ip = 10.1.2.1
;require chap = yes
refuse chap = yes
refuse pap = yes
require authentication = yes
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes这里要注意的是 ip range 一项里的 IP 地址不能和你正在用的 IP 地址重合,也不可与网络上的其他 IP 地址冲突。
九、安装 ppp。这是用来管理 VPN 用户的。
sudo aptitude install ppp十、检查一下 /etc/ppp 目录里有没有 options.xl2tpd 这个文件,没有的话就建一个,文件内容如下:
require-mschap-v2
ms-dns 208.67.222.222
ms-dns 208.67.220.220
asyncmap 0
auth
crtscts
lock
hide-password
modem
debug
name l2tpd
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4注意 ms-dns 两行我填的是 OpenDNS。如果你想用其他的 DNS 服务器(例如谷歌的公共 DNS),请自行更换。
十一、现在可以添加一个 VPN 用户了。用文字编辑器打开 /etc/ppp/chap-secrets:
# user server password ip
test l2tpd testpassword *如果你之前设置过 PPTP VPN,chap-secrets 文件里可能已经有了其他用户的列表。你只要把 test l2tpd testpassword * 这样加到后面即可。
十二、重启 xl2tpd:
sudo /etc/init.d/xl2tpd restart十三、设置 iptables 的数据包转发:
iptables --table nat --append POSTROUTING --jump MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward十四、因为某种原因,openswan 在服务器重启后无法正常自动,所以我们可以在 /etc/rc.local 文件里写入如下语句:
iptables --table nat --append POSTROUTING --jump MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
for each in /proc/sys/net/ipv4/conf/*
do
echo 0 > $each/accept_redirects
echo 0 > $each/send_redirects
done
/etc/init.d/ipsec restart到这里,设置工作已经基本完成。你可以用 iPhone 或 iPad 试着连一下。记得在「Secret」中填入你在上述第三步里填的 YourSharedSecret。
如果连接成功,上网也没问题的话,恭喜你,大功告成。如果连不上,恐怕还得多做一步。
Ubuntu 9.10 自带的 openswan 版本是 2.6.22, Debian Lenny 带的版本是 2.4.12。这两个版本的 openswan 都有问题。我们的测试结果表明,2.6.24 版的 openswan 可以在上述两版的 Linux 操作系统下正常工作。所以如果做完以上十四步还是连不上的话,请考虑从源码编译 openswan 2.6.24 :
sudo aptitude install libgmp3-dev gawk flex bison
wget http://www.openswan.org/download/openswan-2.6.24.tar.gz
tar xf openswan-2.6.24.tar.gz
cd openswan-2.6.24
make programs
sudo make install编译需要一段时间。你的 Linux 内核版本需要高于 2.6.6。
然后可以删除原先通过 aptitude 安装的 openswan,并重启之:
sudo aptitude remove openswan
sudo /etc/init.d/ipsec restart
热心网友
时间:2022-04-12 01:43
Ubuntu / Debian:自己把点换成 .
wget mirror.zeddicus点com/auto-l2tp/1.2/ubuntu/l2tp.sh
chmod +x l2tp.sh
./l2tp.sh
此时需要输入IP段与PSK,值得注意的是,如果希望L2TP的IP段是 10.0.0.0 的话,则在脚本的IP-RANGE中输入 “10.0.0″。PSK 是 l2tp client 共同使用的密匙,同样是必填的。
输入了IP段和PSK之后,程序会显示你的VPS当前的IP(IPV4)、L2TP的本地IP、分配给客户端的IP段以及你所设置的PSK,请确认无误后,按任意键,程序便会开始自动配置。
安装完毕后会运行 ipsec verify,前面是OK,最后一个为DISABLED,证明配置成功!用于测试的用户名与密码分别是:test / test123,记录于 /etc/ppp/chap-secrets 文件当中。
热心网友
时间:2022-04-12 01:43
L2TP:一个「包装」协议,本身并不提供加密和验证的功能。 IPSec:在 IP 数据包的层级提供加密和验证功能,确保中间人无法解密或者伪造数据包。 本来,只用 IPSec 就可以实现 VPN,Mac OS X 和 Linux 都支持。
我用的是小鸟云的服务器,感觉还不错。
热心网友
时间:2022-04-12 01:43
你说的是服务器端
???
网上有类似的脚本 下载脚本
更改 权限 ./****.sh 运行就行了