我已使用以下脚本在我的 Linode 中成功安装了 PPTP VPN:
https://github.com/liaohuqiu/centos-setup/blob/master/install/install_vpn.sh
yum install -y ppp
wget http://centos-files.liaohuqiu.net/f/pptpd-1.3.4-2.el6.x86_64.rpm
rpm -ihv pptpd-1.3.4-2.el6.x86_64.rpm
rm -rf *.rpm
rm -rf /etc/pptpd.conf
rm -rf /etc/ppp
mkdir -p /etc/ppp
echo "option /etc/ppp/options.pptpd" >> /etc/pptpd.conf
echo "localip 10.0.0.1" >> /etc/pptpd.conf
echo "remoteip 10.0.0.10-100" >> /etc/pptpd.conf
echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd
echo "ms-dns 8.8.4.4" >> /etc/ppp/options.pptpd
pass=`openssl rand 6 -base64`
if [ "$1" != "" ]
then pass=$1
fi
echo "vpn pptpd ${pass} *" >> /etc/ppp/chap-secrets
function config_iptables()
{
# Reset/Flush iptables
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
# Flush end
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A INPUT -i eth0 -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -i eth0 -p gre -j ACCEPT
# Allow localhost traffic
iptables -A INPUT -i lo -m state --state NEW -j ACCEPT
iptables -A OUTPUT -o lo -m state --state NEW -j ACCEPT
# Allow server and internal network to go anyway
iptables -A INPUT -s 10.0.0.0/24 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -m state --state NEW -j ACCEPT
# Allow ssh
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
service iptables save
service iptables restart
}
chkconfig pptpd on
service pptpd start
config_iptables
ip=`/sbin/ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'`
echo "===================================="
echo " VPN INSTALLATION COMPLETE"
echo "===================================="
echo " "
echo "VPN hostname/ip: ${ip}"
echo "VPN type: PPTP"
echo "VPN username: vpn"
echo "VPN password: ${pass}"
echo " "
运行得很好。但是最近我发现有很多断线,导致我的服务器流量过大。
看来我可以使用任何账户和密码连接到服务器。
这是我的配置文件:
[root@mylinode ppp]# ll
total 24
-rw------- 1 root root 16 Jun 20 01:53 chap-secrets
-rw------- 1 root root 349 Oct 23 2013 eaptls-client
-rw------- 1 root root 405 Oct 23 2013 eaptls-server
-rw-r--r-- 1 root root 5 Nov 16 2009 options
-rw-r--r-- 1 root root 86 Jun 20 01:37 options.pptpd
-rw------- 1 root root 77 Nov 16 2009 pap-secrets
还有chap-secets
[root@mylinode ppp]# cat chap-secrets
vpn pptpd 111 *
以下是日志来源/var/log/message
:
Jun 20 02:03:53 mylinode pptpd[23994]: CTRL: Client 221.218.36.184 control connection started
Jun 20 02:03:53 mylinode pptpd[23994]: CTRL: Starting call (launching pppd, opening GRE)
Jun 20 02:03:53 mylinode pppd[23995]: pppd 2.4.5 started by huqiu, uid 0
Jun 20 02:03:53 mylinode pppd[23995]: Using interface ppp0
Jun 20 02:03:53 mylinode pppd[23995]: Connect: ppp0 <--> /dev/pts/3
Jun 20 02:03:56 mylinode pppd[23995]: peer from calling number 221.218.36.184 authorized
Jun 20 02:03:57 mylinode pppd[23995]: local IP address 10.0.0.1
Jun 20 02:03:57 mylinode pppd[23995]: remote IP address 10.0.0.10
我尝试重新安装多次,问题仍然存在。
任何帮助都非常有用,如果需要,我可以提供更多信息。提前谢谢您。
答案1
似乎你的密码很弱并且已被破解,此人已在某处发布了你的 IP 和密码,使你的 VPN 服务器成为公共服务器,请重命名你的用户和密码。
答案2
您可以检查/etc/ppp/chap-秘密。用于连接 VPN 服务器的用户名和密码就存储在这里。文件内容应该是这样的:
$ cat /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
username1 pptpd password1 *
username2 pptpd password2 *
答案3
谢谢@Jarett
我将其添加到/etc/ppp/options.pptpd
:
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
然后我应该使用里的账号和密码/etc/ppp/chap-secrets
登录。
原因
我忘记提及的内容了/etc/ppp/options.pptpd
,它们是:
name pptpd
ms-dns 8.8.8.8
ms-dns 8.8.4.4
然后我使用加密级别连接到服务器:None
。