Ако е така, тук ще намерите информация и инструкции как да го направите. Първо трябва да имате дръп-нат и инсталиран PPTP Client. Ако нямате такъв може да намерите от:
https://prdownloads.sourceforge.net/pptpclient/
pptp-1.7.0.tar.gz
Ето и в команди за тези, които не са наясно как става това:
- Първо се установявате в home директори-ята на root. За да свалите файла:
user@host:~# wget https://prdownloads.sourceforge. net/pptpclient/pptp-1.7.0.tar.gz
- За да го разархивирате:
user@host:~# tar zxf pptp-1.7.0.tar.gz
- За да компилирате дадения пакет:
user@host:~# cd pptp-1.7.0
user@host:~/pptp-1.7.0# make
user@host:~/pptp-1.7.0# make install
Първата стъпка вече е направена. Сега следва по-тежката част – самото конфигуриране. След като сте компилирали PPTP Client неговите файлове се намират в /etc/ppp/. Сега отваряте пак конзолата и пишете:
user@host:~# cd /etc/ppp/
Вече сте се установили в /etc/ppp/. Следващата ни стъпка е да създадем папката peers и файловете chap-secrets, options. pptp (в /etc/ppp/) и peer (в /etc/ppp/ peers/). Трябва да отбележа, че може да бъде кръстен с каквото име искате, не е задължително да бъде peer, може да бъде дори с името на вашия доставчик – въпрос на избор. Все пак името на файла няма значение, важното е да върши работа. Нали така?
user@host:/etc/ppp# mkdir peers
user@host:/etc/ppp# touch chap-secrets
user@host:/etc/ppp# touch options.pptp
user@host:/etc/ppp# touch peers/peer
Нека започнем да редактираме създадените файлове. Почваме с
chap-secrets. Използваме mcedit за да редактираме файловете:
user@host:/etc/ppp# mcedit chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
username * password *
За да запомните и за да излезете от файла натиснете F2 и после F10 . Като за username и password използвате дадените ви user и парола на VPN-a. Например ако username ви е test, а паролава ви е linux, вашия chap-secrets файл трябва да изглежда така:
# Secrets for authentication using CHAP
# client server secret IP addresses
test * linux *
Да се захванем с options.pptp:
user@host:/etc/ppp# mcedit options.pptp
lock
noauth
persist
debug
nobsdcomp
asyncmap 0
nodefate
mru 1460
mtu 1460
noipdefault
name “username”
Използвайте за username пак дадения ви user. Сега остана да конфигурираме и peer файла или файла който сте го кръстили вместо peer. Ако файла, който сте решили
да използвате не е peer, в следната команда трябва да заместите името peer с името, което сте избрали:
user@host:/etc/ppp# mcedit peers/peer
name “username”
remotename *
file /etc/ppp/options.pptp
pty “pptp ipaddress --nolaunchpppd”
За username пак използвате вашия юзър и за ipaddress, IP address-а на VPN сървъра. Сега остана да нагласите и рутингите. Това се прави тогава, когато gateway-а на мрежата не е VPN сървъра. Това става с командата route. Няма значение в коя директория се намирате. Напишете:
user@host:~# route add –host ipaddress gw gateway
Като за ipaddress пишете IP address-а на VPN-а, а за gateway пишете gateway-а на мрежата ви. За да се свържете към VPN-a използвайте командата pppd call peer, ако сте използвали образеца. Ако не сте – зaменете думичката peer, с тази с която сте кръстили файла, вместо peer. Може да нагласите при пускането на компютъра ви да се прави рутинга автоматично, защото той се пази така до reboot, както и да нагласите да се вържете към VPN-а при пускането на компютъра. За Slackware Линукс:
user@host:~# mcedit /etc/rc.d/rc.local
Допълвате следните редове:
route add –host ipaddress gw gateway
pppd call peer
Тук също – Ако сте кръстили файла peer си остава така, ако ли не, заместете peer с името което сте му дали. Обаче има проблем с реконекта към VPN-а при падането на ppp0 интерфейса. Затова използвам един скрипт, който пингва през определен интервал от време дадено IP и при липса на отговор свързва отново към VPN-а. Сега ще ви покажа как може да си създадете такъв скрипт. Намирате се в root директорията:
user@host:~# touch ping_script
user@host:~# mcedit ping_script
#!/bin/sh
HOSTLIST=”ip”
PROBLIST=””
SendInfo() {
killall pppd
killall pptp pppd
call peer
}
CheckHosts() {
for hst in `echo ${HOSTLIST}`
do
ping -c 5 -i 2 $hst > /dev/null 2>&1
if [ $? -ne 0 ] ; then
PROBLIST=”${PROBLIST} ${hst}”
fi
done
}
main() {
CheckHosts
if [ “${PROBLIST}” != “” ] ; then
SendInfo
fi
}
main
Тука също – Ако сте кръстили файла peer си остава така, ако ли не, заместете го. Като за ip, избирате ip до което без да сте се ко-нектнали във VPN-а, нямате достъп до него. Сега трябва да направите файла изпълним. Това става с командата chmod +x ping_ script. После трябва да се нагласи през оп-ределен интервал от време, да се проверява дали има връзка с дадения IP адрес. Това става с crontab-а:
user@host:~# mcedit /var/spool/cron/crontabs/root
И там добавяте:
*/5 * * * * /root/ping_script
Това ще пингва даденото IP през 5 минути. И сега като се вържете към VPN-a и като напишете ifconfg, ви се появява и ppp0 интерфейс.
Коментари