Posts Tagged ‘vpn’

VPS上安装vpn代理 pptpd

一、在基于Xen虚拟技术的VPS上安装PPTPD VPN
我们这里介绍给大家一个已经编译好的一键安装包:(已经成功在 EmsVps 、思悦创新、28Vps 上成功编译,并通过)
适用系统:CentOS 5 32bits/64bits
适用主机类型:基于Xen虚拟技术的VPS或者Linux服务器
一键安装包:(直接复制下面的命令,运行)
安装命令:   wget http://down.vpsma.com/vpn/pptpd.sh;sh ./pptpd.sh;
安装成功后,会自动生成vpn账号和密码,如下:
VPN service is installed, your VPN username is vpn, VPN password is xssww2w
复制好vpn和密码就可以在电脑上开启vpn上网了!
如何修改vpn密码或者添加vpn账号:
编辑文件/etc/ppp/chap-secrets,按照格式改成你自己的就行了:
编辑命令:vi /etc/ppp/chap-secrets    输入字母 i  , 按照格式修改用户名和密码。如需添加用户只需按照格式在下一行添加用户名、密码即可。
保存设置:输入Ctrl+c,退出编辑状态,连续输出两次 C(注意大写),保存设置。
二、在基于Openvz虚拟技术的VPS上安装PPTPD VPN:
适用系统:CentOS 5 32bits/64bits
适用主机类型:基于Openvz虚拟技术的VPS或者Linux服务器
基于Openvz虚拟技术的VPS由于不存在sit0网卡,开通PPTPD VPN上和基于Xen虚拟技术的VPS稍有不同。
本方法已经在著名的砖头机 HostRail 上成功编译通过,HostRail的VPS默认是不开通TUN-TAP的,需要发ticket要求开通,下面有相应介绍。
安装方法:
1.首先检查你的vps主机的 TUN-TAP/PPP 有没有启用
cat /dev/net/tun           #直接输出命令
启用的话输出可能5花八门,反正不止一种,比如下面算正常
cat: /dev/net/tun: File descriptor in bad state
没启用的话显示权限不够,被拒绝,没启用显示如下
cat: /dev/net/tun: Permission denied
ppp用下面命令看
cat /dev/ppp    #直接输出命令
有下面输出就是可以!
cat: /dev/ppp: No such device or address
如果没有启用请向你的主机商提交一个ticket要求开通这两个服务,如下:
Hello
Could you enabled TUN-TAP and PPP for me? I want run pptp-vpn on my VPS.
Thank you.
开启后确认下可以开始正式安装
2.升级系统包
yum update -y    #直接输出命令
3.检查是否安装ppp iptables,没有的话进行安装(CentOS是默认安装并开启防火墙的,第2行大可不必执行!)
yum install -y ppp
yum install -y iptables
在hostrail上安装ppp时,经常会因为内存不足,而出现安装错误,这时我们就可以采用下面的命令进行安装
yum –disableplugin=fastestmirror install ppp
4.安装pptpd
推荐下面的安装包,安装请直接复制、运行
rpm -ivh http://poptop.sourceforge.net/yu … .4-2.rhel5.i386.rpm
5.配置pptp
首先我们要编辑/etc/pptpd.conf文件:
vim /etc/pptpd.conf
把下面字段前面的#去掉即可:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
接下来再编辑/etc/ppp/options.pptpd:
vim /etc/ppp/options.pptpd
去掉ms-dns前面的#,并修改成如下字段:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
找到require-mppe-128这行在前面加#,这点很重要。
6.设置VPN帐号
编辑/etc/ppp/chap-secrets这个文件:
vim /etc/ppp/chap-secrets
直接输入如下字段,username,password可以换成其他字段:
username pptpd password *
7.修改内核设置,支持转发
编辑/etc/sysctl.conf文件:
vim /etc/sysctl.conf
将”net.ipv4.ip_forward”改为1:
net.ipv4.ip_forward=1
同时在”net.ipv4.tcp_syncookies = 1″前面加# :
# net.ipv4.tcp_syncookies = 1
保存退出,并执行下面的命令来生效它:
sysctl -p
8.添加iptables防火墙转发(to-source前面的是两个半角减号!)
iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j SNAT –to-source 你的VPS主机ip
保存iptables转发规则:
/etc/init.d/iptables save
重启iptables:
/etc/init.d/iptables restart
9.重启pptp并设置自启动
/etc/init.d/pptpd start
chkconfig pptpd on
chkconfig iptables on
10.客户端数据加密选择无/可选加密,请两种都试一下。
11.发现619错误,解决如下
(1)如果执行cat /dev/ppp没有不存在,就执行下面,否则不执行
rm -r /dev/ppp
(2)执行
mknod /dev/ppp c 108 0
修改用户名、密码或者添加用户的方法同上。

VPS CentOS PPTP VPN一键安装包

以下本人在CentOS 5 64bits 下安装成功,测试正常。

一行命令安装PPTPD VPN(注意,只在CentOS 5 32bits/64bits下测试通过,其他系统未测试):

wget http://www.CTOHome.com/linux-vps-pack/vpn-pptpd.sh;sh ./vpn-pptpd.sh;

 用root登录ssh,复制粘贴上面一行命令,回车等待几分钟即可。

一键安装VPN完成后,会直接显示VPN用户名(默认就是vpn1和vpn2)和密码,

请留意下面的字样,密码中可能会有/=等特殊字符,但没有空格,复制密码的时候,小心不要复制了空格

VPN username: vpn1   password: rPpVvZUo 
VPN username: vpn2   password: 55Y3ut6t   

上面的SH,我也收藏了,如果失效的话,可以按下面地址使用。

http://www.80y.com.cn/download/vpn-pptpd.sh

如何创建更多的vpn用户?

请在linux下,ssh编辑/etc/ppp/chap-secrets文件,按照相同格式添加用户名和密码即可。

在linux上安装配置pptp vpn[转]

PPTP:点对点隧道协议(Point to Point Tunneling Protocol)

点对点隧道协议(PPTP)是一种支持多协议虚拟专用网络的网络技术。通过该协议,远程用户能够通过 Microsoft Windows NT 工作站、Windows 95 和 Windows 98 操作系统以及其它装有点对点协议的系统安全访问公司网络,并能拨号连入本地 ISP,通过 Internet 安全链接到公司网络。

PPTP 可以用于在 IP 网络上建立 PPP 会话隧道。在这种配置下,PPTP 隧道和 PPP 会话运行在两个相同的机器上,呼叫方充当 PNS。PPTP 使用客户机-服务器结构来分离当前网络访问服务器具备的一些功能并支持虚拟专用网络。PPTP 作为一个呼叫控制和管理协议,它允许服务器控制来自 PSTN 或 ISDN 的拨入电路交换呼叫访问并初始化外部电路交换连接。

PPTP 使用 GRE 的扩展版本来传输用户 PPP 包。

操作系统:

centos5

确定内核是否支持mppe:

modprobe ppp-compress-18 && echo ok

如果显示ok,内核已经具备了mppe支持。

用以下命令检查PPP是否支持MPPE:

strings ‘/usr/sbin/pppd’ |grep -i mppe | wc –lines

如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持。

编译内核支持mppe

选以下选项

CONFIG_PPP_MPPE=m

CONFIG_NF_CONNTRACK_PPTP=m

CONFIG_NF_NAT_PPTP=m

CONFIG_PPP=m

CONFIG_PPP_MULTILINK=y

CONFIG_PPP_FILTER=y

CONFIG_PPP_ASYNC=m

CONFIG_PPP_SYNC_TTY=m

CONFIG_PPP_DEFLATE=m

CONFIG_PPP_BSDCOMP=m

CONFIG_PPP_MPPE=m

CONFIG_PPPOE=m

CONFIG_PPPOL2TP=m

不编译内核内核支持mppe

http://sourceforge.net/project/showfiles.php?group_id=44827

下载

dkms-2.0.6-1.noarch.rpm

kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

dkms是一个新的软件,能让你在不编译内核的基础上,外挂一些内核的模块。

kernel_ppp_mppe就是mppe支持的内核模块了。

安装pptpd

http://poptop.sourceforge.net/

wget http://nchc.dl.sourceforge.net/sourceforge/poptop/pptpd-1.3.4.tar.gz

tar xfz pptpd-1.3.4.tar.gz -C /usr/local/src

cd /usr/local/src/pptpd-1.3.4/

./configure –prefix=/usr/local

make && make install

配置pppd和pptpd

pppd的默认配置文件在 /etc/ppp

pptpd的配置文件在 /etc/pptpd.conf

vi /etc/pptpd.conf

ppp /usr/sbin/pppd

option /etc/ppp/options.pptpd

debug

Logwtmp

localip 10.168.168.51

remoteip 10.168.168.52-100

netmask 255.255.255.0

#localip是pptpd的对外服务的ip,也就是客户端需要拨号的ip,remoteip是拨号服务器分配给拨号用户的ip ,可以用-表示ip范围

vi /etc/ppp/options.pptpd

#

# Authentication

auth

# Create a UUCP-style lock file for the pseudo-tty to ensure exclusive

# access.

lock

# Name of the local system for authentication purposes

# (must match the second field in /etc/ppp/chap-secrets entries)

name pptpd

# BSD licensed ppp-2.4.2 upstream with MPPE only, kernel module ppp_mppe.o

# {{{

refuse-pap

refuse-chap

refuse-mschap

# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft

# Challenge Handshake Authentication Protocol, Version 2] authentication.

require-mschap-v2

# Require MPPE 128-bit encryption

# (note that MPPE requires the use of MSCHAP-V2 during authentication)

require-mppe-128

# }}}

# OpenSSL licensed ppp-2.4.1 fork with MPPE only, kernel module mppe.o

# {{{

#-chap

##-chapms

# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft

# Challenge Handshake Authentication Protocol, Version 2] authentication.

##+chapms-v2

# Require MPPE encryption

# (note that MPPE requires the use of MSCHAP-V2 during authentication)

#mppe-40        # enable either 40-bit or 128-bit, not both

#mppe-128

#mppe-stateless

# }}}

# Add an entry to this system’s ARP [Address Resolution Protocol]

# table with the IP address of the peer and the Ethernet address of this

# system. This will have the effect of making the peer appear to other

# systems to be on the local ethernet.

# (you do not need this if your PPTP server is responsible for routing

# packets to the clients — James Cameron)

proxyarp

debug

dump

logfile /var/log/pptpd.log

# Miscellaneous

# Disable BSD-Compress compression

#nobsdcomp

# Disable Van Jacobson compression

# (needed on some networks with Windows 9x/ME/XP clients, see posting to

# poptop-server on 14th April 2005 by Pawel Pokrywka and followups,

# http://marc.theaimsgroup.com/?t=111343175400006&r=1&w=2 )

#novj

#novjccomp

# turn off logging to stderr, since this may be redirected to pptpd,

# which may trigger a loopback

nologfd

#lcp-echo-failure 30

#lcp-echo-interval 5

noipdefault

#ipcp-accept-local

#ipcp-accept-remote

#mru 1454

#mtu 1454

ms-dns 10.168.168.171

vi /etc/ppp/chap-secrets

# Secrets for authentication using CHAP

# client        server secret                  IP addresses

“veryi.com” pptpd   “iamok” *

第一个veryi.com是用户,第二个iamok是密码,*表示任意ip

vi /etc/init.d/pptpd

#!/bin/bash

#

# chkconfig: 35 95 15

# description: pptpd

# processname: pptpd

# pidfile: /var/run/pptpd.pid

# config: /etc/pptpd.conf

# source function library

. /etc/init.d/functions

pptpd=/usr/local/sbin/pptpd

prog=pptpd

RETVAL=0

start() {

        echo -n $”Starting pptpd services: ”

        RETVAL=$?

        daemon $pptpd

        echo

        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pptpd

}

stop() {

        killproc pptpd

        RETVAL=$?

        echo

        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/pptpd

}

case “$1″ in

start)

        start

        ;;

stop)

        stop

        ;;

restart|reload)

        stop

        start

        ;;

condrestart)

        if [ -f /var/lock/subsys/pptpd ]; then

            stop

            start

        fi

        ;;

status)

        status pptpd

        RETVAL=$?

        ;;

*)

        echo $”Usage: $0 {start|stop|restart|condrestart|status}”

        exit 1

esac

exit $RETVAL

chmod +x /etc/init.d/pptpd

chkconfig –level 345 pptpd on

启动pptpd

/etc/init.d/pptpd restart

防火墙配置:

vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 1723 -j ACCEPT

vi /etc/sysctl.conf

net.ipv4.ip_forward = 1

sysctl -p

windows客户端配置:

新建一个vpn连接,把“在远程网络上使用默认网关”这个选项取消(不打勾)。

网络->TCP/IP属性->高级->设置->在远程网络上使用默认网关

WINDOWS SERVER 2003单网卡VPN代理服务器架设

开启VPN需要的服务
—————————————–服务器—————-
服务里面:
windows自带防火墙 (windows firewall/internet connection sharing(ICS))要停止(或允许1723端口)Workstation 服务 必需开启
远程注册表服务(remote Registry) 必需开启
server服务(Server)必需开启
router路由服务(Routing and Remote Access)必需开启
然后 开始–设置–控制面版–管理工具–路由和远程访问

****(本地) 右键选配置并启用路由和远程访问 下一步 选 自定义配置[选这个可以使用单网卡的情况,默认单网卡是不给开VPN服务的]

再勾选 VPN访问 和 NAT/基本防火墙 下一步 完成 是

右击****(本地)属性 IP选项卡 默认是选择动态主机配置协议(DHCP)由服务器自动分配IP

也可以选择选静态地址池,随便添个内网IP范围 例如:起始IP地址:192.168.8.2 结束IP地址192.168.8.254

确定保存!

下一步找到IP路由选择 → NAT/基本防火墙 右键 选择第一个 新增接口 在这里选本地连接 公用接口连接到Internet 在此接口上启用NAT 前勾上

确定保存!退出

在到计算机管理→本地用户和组–用户 选一个要拨入的用户 点 右键 属性 拨入选项卡 选允许拨入 确定

这样VPN就基本设置就完成了。
—————————————–本机上的操作—————-

下面配置自己的机子连接VPN

网上邻居 右键属性 新建连接向导 下一步 选‘连接到我的工作场所的网络’

下一步 选虚拟网络专用连接 随便输入一个公司名 下一步 输入服务器IP或(域名) 完成

输入刚刚设置的拨入用户 连接进去之后

在CMD下输入 IPCONFIG -ALL 可以发现多了一个IP地址了

好了在去www.ip138.com先看下没连接VPN之前的IP

用VPN连接之后在看看IP

自己现在的IP是不和VPN服务器的一样了!

这样代理服务器就弄好了

免费使用美国VPN代理(可用于登陆国外网站)免费VPN

VPN的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。顾名思义,虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它可以通过特殊的加密的通讯协议在连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,就好比是架设了一条专线一样,但是它并不需要真正的去铺设光缆之类的物理线路。这就好比去电信局申请专线,但是不用给铺设线路的费用,也不用购买路由器等硬件设备。VPN技术原是路由器具有的重要技术之一,目前在交换机,防火墙设备或WINDOWS2000等软件里也都支持VPN功能,一句话,VPN的核心就是在利用公共网络建立虚拟私有网。

进入正题
第一步:登录美国免费VPN网站  http://www.secureix.com

注册一个代理帐号
打开http://www.secureix.com


按照要求输入用户名和密码,这个同时提供给你一个邮箱,等下帐号信息会发到这个邮箱


注册成功


注册完成以后进入http://mail.secureix.com/mail/src/login.php可以收到帐号邮件
在 Your SecureIX account is ready 主题里面,不登陆也可以,因为这个无须激活

接下来是你电脑端的设置了
打开网上邻居由键,属性,创建一个新的连接


选择虚拟专用网络


名字可以随便

连接的服务器地址输入:这里要输入vpn.secureix.com

新建完成后,打开该连接,输入 帐号@secureix.com 密码 就能登陆了

连接成功,你的访问就都是由VPN服务器发起了,对外IP变成那台服务器IP ,这个可是超高匿名的哦 。

对于出现800错误。告诉大家如何解决这个问题
打开 开始-运行-输入cmd,输入命令ipconfig /flushdns
再连接一下,如果出现问题,继续连接,你马上会看到连接成功。