大奖娱乐官网_www.87pt8.com_大奖娱乐官网88pt88
  • 当前位置:海淘大奖娱乐官网88pt88>数码装备>文章详情

  • 5分钟自建虚拟网络服务器:穿越macos Sierra,iOS 10——更加安全可靠的L2TP协议 2017-07-04 16:32
  • 购物直达
  • 美国独立日更新:
    国内无运营资质的VPN,现在被严管,都不可以续费和使用了。想要申请资质,基本上是一件不可能的事情。
    个人自用和企业非盈利的内部使用,还不在管理范畴之内。
    以下脚本在阿里云的centaos7上使用正常,腾讯云不正常,内核需要重新编译。
    阿里云现在有现成的VPN镜像可以使用,但是费用不低,尽量均摊。

    之前的教程:

    又一次为阿里云做了小广告,会不会有人来买通我?PPTP协议的加密上网方式,在macos Sierra和iOS 10出来之后,果断被苹果抛弃了。没了穿墙口诀,小伙伴们纷纷表示很烦躁。



    那么,怎么办呢?除了自己花钱去买流量之外,如果你想使用更加安全可靠,没有人监听你信用卡信息和个人机密的科学上网方式,只能自建基于L2TP,使用ipsec的加密通道服务器了。

    之前的40块钱使用阿里云搭建自己的VPN服务器一文,大家都很喜欢。问题也很多。

    倒不是我不回答,有些问题我也不知道。按照文中流程走下来,只要一个字都不错,都是可以成功的。成功不了,您只能自己开个学习班了。

    这次不要了PPTP,用了更加安全的L2TP,安装方式反而更加简单了。申请服务器的环节,可以参考之前的阿里云文章,有图有真相。

    L2TP自建虚拟网络,如果是Centos7操作系统,一个脚本就能够搞定一切!连5分钟都用不了。

    是不是用阿里云的美国IP,倒是不一定。如果一定要用美国IP,阿里云还是个不错的选择。不过,实际使用的时候,它家的速度有时候实在是。。。所以,只是想翻墙的话,可以考虑腾讯云的新加坡IP,qq号登陆开通云服务,企鹅家赏你260块,够一台VPS虚拟主机跑上一个月的,速度也够快。

    重复一次之前的话,自建是最安全的。嫌贵的同学,找三五知己共担即可。

    一个正常可用,配置不错的虚拟主机,一个月200多块也够了。有心的同学可以再找找计费系统,卖卖账号,做做这个无本的生意。只要小心表被请去喝茶就好。我认识做这个生意的人还蛮多的。。。

    买服务器这部分就不提了,大家参考前文。或者直接去往阿里云或者腾讯云。说实在的,如果服务器购买都搞不定的话,下面也就可以不用看了。君的命就是花钱请人干活的,别糟蹋了。

    选服务器的时候,请记住一定选上CentOS 7。32位或者64位没所谓。开通了管理终端,找个小本本,把root密码记住。以后在Mac上,直接用终端,敲入:($符号后面是命令,前面是你的主机命令行提示。)

    YoursMBP:~ YouID$ ssh://root@你的服务器公有ip

    就可以连接到远在美国的这台服务器的命令行界面,输入root口令即可。

    这些都搞定,基本事儿就做完了。下面都是脚本的事儿。脚本不是我写的,得感谢原作者。

    脚本推荐teddysun的脚本,非常完善。如果找不到,我也爱莫能助。

    拷贝粘贴的话,需要新建一个文本,把内容一个字符不差的拷贝进去,存盘的时候,文件后缀是.sh。从云盘下载,文件的名字就是installl2tp.sh。如果你在用Mac,那么终端窗口,存放这个文件的文件夹,输入命令:

    chmod +x installl2tp.sh

    建议步骤:
    1. ssh连接到你的虚拟主机
    2. 命令行敲入vi installl2tp.sh。打开最nb的unix文本编辑器。
    3. 在vi的编辑界面,按一下“i"字母键,表示你要插入内容。
    4. 拷贝安装脚本全部字符。
    5. 在vi的编辑界面,用command+v(macos),或者ctrl+v(windows),粘贴内容。俩键一起按哈
    6. 确认内容都完整搞定了。按一下"esc"键,表示你编辑结束了。然后输入“:wq",存盘退出。
    7. 命令行输入:chmod +x installl2tp.sh

    到这里,你的脚本就已经存在远程服务器上了。下面就是执行了。

    还是在之前的文件夹,输入:

    ./installl2tp.sh

    开始执行脚本。

    过程中,会问你几个问题。需要注意到地方:
    1. 虚拟服务器的网卡有两个ip地址,分别是内网和外网。10,172,198开头的就是内网,其他的47神马的,就是外网。你需要在确认服务器ip地址的时候,保证答案只是你的外网ip。
    2. l2tp除了用户名和口令之外,还需要一个共享密钥。你随便找一个自己能记住的。比如scarlett。
    3. 看不懂的英文,麻烦百度翻译一下。
    4. 基本没有了。

    如果你确实用的centos7,那么系统已经不再使用iptables作为防火墙了,而是用的firewall命令。这个脚本运行完毕,你的l2tp服务就已经开通了。

    命令行输入:

    ipsec verify

    看到这个效果:

    [root@lalalala ~]# ipsec verify
    Checking if IPsec got installed and started correctly:

    Version check and ipsec on-path [OK]
    Openswan U2.6.49/K3.10.0-123.9.3.el7.x86_64 (netkey)
    See `ipsec --copyright' for copyright information.
    Checking for IPsec support in kernel [OK]
    NETKEY: Testing XFRM related proc values
    ICMP default/send_redirects [OK]
    ICMP default/accept_redirects [OK]
    XFRM larval drop [OK]
    Hardware random device check [N/A]
    Two or more interfaces found, checking IP forwarding [OK]
    Checking rp_filter [OK]
    Checking that pluto is running [OK]
    Pluto listening for IKE on udp 500 [OK]
    Pluto listening for IKE on tcp 500 [NOT IMPLEMENTED]
    Pluto listening for IKE/NAT-T on udp 4500 [OK]
    Pluto listening for IKE/NAT-T on tcp 4500 [NOT IMPLEMENTED]
    Pluto listening for IKE on tcp 10000 (cisco) [NOT IMPLEMENTED]
    Checking NAT and MASQUERADEing [TEST INCOMPLETE]
    Checking 'ip' command [OK]
    Checking 'iptables' command [OK]

    除了最后一句可能是[N/A],剩下就跟我一样了。赶紧在iphone里面配置一下l2tp服务,能连上,就说明成功了80%。然后打开浏览器,输入网址:http://www.gmail.com。如果也能打开,那么,你的安装旅程就结束了。恭喜你!

    几个问题:
    Q:我想增加个用户怎么办?
    A:你好烦啊。命令行连入,输入下面命令:
    cd /etc/ppp
    vi chap-secrets
    按"i"键开始编辑,学着上面已经有的用户名和密码,自己再弄一行出来。编辑完了,记得要按'esc"退出编辑模式,然后":wq"存盘退出vi。

    Q:我连接不上服务器,什么问题?
    A:这个问题多了去了。需要掌握一定unix命令才能排错。请不要怀疑安装脚本,只要网络正常,你需要的软件都已经安装到远程服务器上了。只是可能配置有误。最明显的错误,是没有正确的输入服务器的外网ip。好吧,我第一次就是这样滴。但是,本椒之后手工把所有配置文件里的错误都改过来了。建议你重新执行一遍吧。

    验证自己的配置没错,可以这样。命令行:

    cd /etc/xl2tpd
    more xl2tpd.conf

    正确的输出是这样的:
    [root@lalalala xl2tpd]# more xl2tpd.conf
    ;
    ; This is a minimal sample xl2tpd configuration file for use
    ; with L2TP over IPsec.
    ;
    ; The idea is to provide an L2TP daemon to which remote Windows L2TP/IPsec
    ; clients connect. In this example, the internal (protected) network
    ; is 192.168.1.0/24. A special IP range within this network is reserved
    ; for the remote clients: 192.168.1.128/25
    ; (i.e. 192.168.1.128 ... 192.168.1.254)
    ;
    ; The listen-addr parameter can be used if you want to bind the L2TP daemon
    ; to a specific IP address instead of to all interfaces. For instance,
    ; you could bind it to the interface of the internal LAN (e.g. 192.168.1.98
    ; in the example below). Yet another IP address (local ip, e.g. 192.168.1.99)
    ; will be used by xl2tpd as its address on pppX interfaces.
    [global]
    ipsec saref = yes
    listen-addr = 你的外网ip
    auth file = /etc/ppp/chap-secrets
    port = 1701
    [lns default]
    ip range = 10.0.1.10-10.0.1.254 脚本缺省ip地址池
    local ip = 你的服务器的内网ip,脚本缺省是10.0.1.1
    refuse chap = yes
    refuse pap = yes
    require authentication = yes
    name = L2TP
    ppp debug = yes
    pppoptfile = /etc/ppp/options.xl2tpd
    length bit = yes

    看看listen-addr的值是不是你的公网ip。别把上面这段文字里的中文以为是正常内容。。。

    Q:我可以连接到服务器,但是无法访问外网?
    A:正确执行脚本之后,已经打开了ip转发和地址翻译。系统会在建立连接之后,分配一个内部ip给你的笔记本或者iphone,然后把这个私有ip伪装成外网ip,通过这个加密链接过来的流量,都会使用公网ip重新包装之后发到internet上面,构成链接。不通的原因,一般是网卡之间的流量转发没有生效。

    我也碰到了这个问题。但是没空去研究centos 7里面的firewall命令,只好关掉firewall,改用iptables。

    命令:

    停止firewalld服务

    systemctl stop firewalld

    禁用firewalld服务

    systemctl mask firewalld

    安装iptables:

    安装iptables

    yum install -y iptables

    升级iptables

    yum update iptables

    安装iptables-services

    yum install iptables-services

    其实原来的脚本里面,已经有了iptables的设置,只是跟着Centos 7被注释掉了。

    输入命令:其中的$iprange是你的加密服务器私有ip地址池,缺省是10.0.1.0
    iptables --table nat --append POSTROUTING --jump MASQUERADE
    iptables -t nat -A POSTROUTING -s $iprange.0/24 -o $eth -j MASQUERADE
    iptables -t nat -A POSTROUTING -s $iprange.0/24 -j SNAT --to-source 你的公网ip
    以10.0.1.0作为私有地址池,40.22.33.44作为公网ip的样例:
    iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -o $eth -j MASQUERADE
    iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -j SNAT --to-source 40.22.33.44
    service iptables save
    service iptables restart

    如果还不行。。。

    哎,你就照着这个样子,改一下ip地址,把iptables的配置文件修改一下。
    命令:
    cd /etc/sysconfig
    vi iptables
    按"i"键开始输入。参考内容(IP地址使用的是安装脚本的缺省地址):

    sample configuration for iptables service

    you can edit this manually or use system-config-firewall

    please do not ask us to add additional ports/services to this default configur

    ation
    *nat
    :POSTROUTING ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A POSTROUTING -s 10.0.1.0/24 -o eth0 -j MASQUERADE
    -A POSTROUTING -s 10.0.1.0/24 -j SNAT --to-source 你的服务器公网地址
    COMMIT
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 1703 -j ACCEPT
    -A INPUT -p udp -m state --state NEW -m udp --dport 1701 -j ACCEPT
    -A INPUT -p udp -m state --state NEW -m udp --dport 500 -j ACCEPT
    -A INPUT -p udp -m state --state NEW -m udp --dport 4500 -j ACCEPT

    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -d 10.0.1.0/24 -j ACCEPT
    -A FORWARD -s 10.0.1.0/24 -j ACCEPT
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    COMMIT

    编辑完了,按'esc"退出编辑模式,然后":wq"存盘退出vi。我觉得自己真啰嗦。。。

    然后输入命令:
    service iptables restart

    然后重连,必须通了。通不了的话,建议您系统抹掉,重新再来吧。

    好了,教学完成,预祝大家科学上网,翻墙成功,5分钟搞定美国ip,新加坡ip,各种地区的ip!每天上playboy到吐血,天天看youtube视频爽歪。

    另外,阿里云的虚拟服务器,有时候连接很慢,要耐心。