Tелефон отдела продаж:
Техническая поддержка:
Для звонков из региона

Настройка PPTP CentOS

Инструкция актуальна для Centos 5 и 6 версий.

Вручную

PPTP создает туннель к VPN-серверу, через который ppp соединяется и работает как обычное модемное соединение. Для его работы необходимо установить пакет pptp. Если существуют файлы /usr/sbin/pppd и /usr/sbin/pptp, тогда можно сразу приступить к настройке.

Приведенная последовательность установки клиента pptp была испробована на версии 5.x, 6.x

1. Устанавливаем пакет pptp

~# yum install pptp -y

2. Создадим файл /etc/ppp/peers/mcm, и добавим в него

pty "pptp 95.128.224.10 --nolaunchpppd --nobuffer"
user Логин
password Пароль
nodeflate
mtu 1492
nobsdcomp
noauth
persist 
nodefaultroute 
maxfail 0
unit 0

3. Создаем /etc/sysconfig/network-scripts/ifcfg-mcm со следующим содержимым

DEVICE=ppp0
TYPE=Modem
ONBOOT=yes
USERCTL=yes
PEERDNS=no
PROVIDER=mcm
PERSIST=yes
DEMAND=no
DEFROUTE=no

4. Для маршрута создаем файл /etc/sysconfig/network-scripts/route-mcm

192.168.20.0/24 via 0.0.0.0 dev ppp0

5. Поднимаем сетевой интерфейс

~# ifup mcm

Опускаем командой ifdown mcm

Скрипт

CentOS 5,6

install_pptp.sh -u ЛОГИН -p ПАРОЛЬ

#!/bin/sh
# PPTP Installation script

usage()
{
cat << EOF
usage: $0 -u <USERNAME> -p <PASSWORD>

OPTIONS:
   -h display this message
   -v additional verbose
EOF
}

install()
{
yum install pptp -y
mkdir /etc/ppp/peers

echo "pty \"pptp $SERVER --nolaunchpppd --nobuffer\"
user $USERNAME
password $PASSWORD
nodeflate
mtu 1492
nobsdcomp
noauth
persist 
nodefaultroute
maxfail 0
unit 0" > /etc/ppp/peers/mcm

echo "192.168.20.0/24 via 0.0.0.0 dev ppp0" > /etc/sysconfig/network-scripts/route-mcm

cat > /etc/sysconfig/network-scripts/ifcfg-mcm <<EOL
DEVICE=ppp0
TYPE=Modem
ONBOOT=yes
USERCTL=yes
PEERDNS=no
PROVIDER=mcm
PERSIST=yes
DEMAND=no
DEFROUTE=no
EOL
}

USERNAME=
PASSWORD=
SERVER=95.128.224.10
VERBOSE=0
while getopts "vhu:p:" OPTION
do
	case $OPTION in
		u)
			USERNAME=$OPTARG
			;;
		p)
			PASSWORD=$OPTARG
			;;
		h)
			usage
			exit 1
			;;
		v)
			VERBOSE=1
			;;
		?)
			usage
			exit
			;;
	esac
done

if [[ -z $USERNAME ]] || [[ -z $PASSWORD ]] || [[ -z $SERVER ]]
then
     usage
     echo u=$USERNAME p=$PASSWORD s=$SERVER
     exit 1
else
	if [ "$VERBOSE" -eq 1 ]
	then
		install
	else
		install >> /dev/null
	fi
fi