|
Strona 2 z 5
3. Konfigurujemy głównego demona PPP
# ee /etc/ppp/ppp.conf
--- start ppp.conf ---
default:
set log Phase Chat IPCP CCP tun command
#set LCP
set redial 15 0
set reconnect 15 10000
pptp:
set ifaddr 192.168.50.1/24 192.168.50.230-192.168.50.240
set timeout 0
enable pap
enable MSCHAPv2
enable CHAP
enable passwdauth
accept dns
enable dns
resolv readonly
enable lqr
set lqrperiod 5
set cd 5
set nbns 192.168.50.1
set dns 192.168.50.1 194.204.159.1
enable Proxy
nat enable yes
# Włącza natowanie – tak aby sieć wewnętrzna była widziana
#od strony VNP (a nie tylko sam Server)
nat port udp 192.168.1.2:3389 3389
# Umożliwia prze kierowanie portu z serwera na inną maszynę
nat port tcp 192.168.1.2:3389 3389
# Umożliwia prze kierowanie portu z serwera na inną maszynę
set urgent tcp +80 +21 +443 # Faworyzuje porty 80, 21, 443 |
--- end ppp.conf ---
Jeżeli nie mamy w katalogu startowym /usr/local/etc/rc.d/pptpd.sh to takowy
plik tworzymy i nadajemy mu prawa wykonywalne.
--- start pptpd.sh ---
#! /bin/sh
case $1 in
start)
[ -x /usr/local/sbin/pptpd ] && /usr/local/sbin/pptpd
&& echo 'Starting pptpd'
;;
stop)
killall pptpd && echo 'Stoping pptpd'
;;
restart)
killall pptpd
if /usr/local/sbin/pptpd; then
touch /var/run/pptpd.pid
fi
;;
status)
ps ax |grep sbin/pptpd
;;
*)
echo "Usage: `basename $0` {start|stop|restart|status}"
>&2
exit 64
;;
esac
exit 0 |
--- end pptpd.sh ---
No i startujemy
# rehash
# /usr/local/etc/rc.d/pptpd.sh start
W tym momencie trzeba pamiętać aby wpuścić połączenia PPTP przez firewalla
(jeżeli takowego mamy). Przykład dla IPFW.
# PPTP - port 1723 Point-To-Point Tunneling Protocol
# Cisco GRE protocol VPN
${fwcmd} add allow ip from any to me 1723
${fwcmd} add allow gre from any to me
I to by było na tyle podczas konfiguracji serwera.
Należy tutaj zaznaczyć, iż osoby korzystające z modemów ADSL i ustawiające
połączenie przez interfejs tunela mogą mieć problemy z PPTPd. Objawiać się to
może tym, iż podczas inicjacji tunelu PPTP domyślny tun0 dla połączenia
ADSL`owego zostanie zastąpiony tunelem PPTPd. Spowoduje to oczywiście zerwanie
połączenia ADSL. Należy więc zastosować w tym momencie jakiś tryb protekcji dla
połączenia ADSL. Dla neostrady możemy np. uruchamiać skrypt crontabem
sprawdzający połączenie.
Przykład takiego skryptu.
# touch /usr/local/etc/rc.d/ppp-up.sh
# chmod 0700 /usr/local/etc/rc.d/ppp-up.sh
# ee /usr/local/etc/rc.d/ppp-up.sh
--- ppp-up.sh ---
#!/bin/sh
#
/sbin/ping -c 2 213.180.130.200 | /usr/bin/grep "bytes from" > /dev/null \
|| (killall ppp ; /usr/sbin/ppp -quiet -ddial -unit /dev/tun0 -nat pppoe) |
--- ppp-up.sh ---
Ostatnią czynnością jaką należy wykonać jest dopisanie skryptu do crontaba
tak aby sprawdzanie IP odbywało się np. co drugą minutę.
# ee /etc/crontab
I dodajemy:
--- crontab ---
*/2 * * * * root /usr/local/etc/rc.d/ppp-up.sh > /dev/null 2>&1 |
--- end crontab ---
Po pierwszym nawiązaniu połączenia przez PPTP powinien on odkryć iż tun0 był
używany przez inny proces i zainicjować tun1.. tun2.. itd.
|