다음 스크립트를 사용하여 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-secrets. VPN 서버에 연결할 수 있는 사용자 이름과 비밀번호가 여기에 저장됩니다. 파일 내용은 다음과 같아야 합니다.
$ cat /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
username1 pptpd password1 *
username2 pptpd password2 *
답변3
감사합니다@자렛
나는 이것을 다음에 추가했습니다 /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
.