Страница 1 из 1
mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-05-31 18:45:41
SniZ
В общем, есть mpd5 в качестве сервера.
Есть несколько клиентов (филлиалы компании), у которых стоит pptp-client, который подключается к нашему серверу.
Есть проблема, надо как то добавлять роут на подсети клиентов. Вручную пожалуйста, а вот как сделать автоматом?
А то не очень хочется добавлять роут каждый раз после переподключения клиента
Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-05-31 19:55:35
SniZ
Код: Выделить всё
[root@gate ~]# cat /usr/local/etc/mpd5/vpn_up_mpd.sh
#!/bin/sh
if [ "$5" = "vgomel" ]
then
# Add route
route add -net 192.168.1.0/24 $4
echo "[`date`] Added route to 192.168.1.0/24 via $1 ($4)" >> /var/log/mpd5_vpn_server.log
else
# No founded args
# echo "No arguments set."
fi
echo "[`date`] Added if $1 ($3 => $4) by user $5" >> /var/log/mpd5_vpn_server.log
Если кому надо

Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-06-01 9:58:22
Al
Если стоит квага - можно прописать туда статически. Она сама будет добавлять их при поднятии интерфейса и убирать при падении.
Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-06-07 13:35:52
ready
А не подскажите, как сделать, что б при авторизации пользователя и его отключения отправлялось сообщение?
Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-06-07 13:49:44
Гость
кому отпралять? пользователю по протоколу ppp? = никак
Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-06-07 14:08:00
ready
нет, при подключении пользователя отправлять смс например через почтовый сервак и уведомлять что пользователь подключился
и тоже самое делать когда человек отключился от сервера ...
Re: mpd5 + pptp-server = добавить маршрут на подсеть клиента
Добавлено: 2010-06-11 13:45:28
SniZ
Тебе надо написать скрипт, который будет отсылать сообщение куда надо.
потом надо добавить вот это (к примеру), в файл конфига mpd5:
Код: Выделить всё
set iface up-script /usr/local/etc/mpd5/vpn_up_mpd.sh
set iface down-script /usr/local/etc/mpd5/vpn_down_mpd.sh
что соответственно, будет выполнять скрипты при опускании\поднимании подключения.
как бы, этим скриптам, будут передаваться такие параметры:
Код: Выделить всё
$0 - имя скрипта
$1 - имя интерфейса
$2 - протокол
$3 - Локальный IP
$4 - Удаленный IP
$5 - Имя пользователя
Вот краткая теория.
То есть, чтобы отправить письмо-уведомление, надо наверное так:
vpn_up_mpd.sh
Код: Выделить всё
[root@gate ~]# cat /usr/local/etc/mpd5/vpn_up_mpd.sh
#!/bin/sh
if [ "$5" = "user" ]
then
# Send mail
echo "User $5 connected"|mail -s mail.server.com name@domain.com
else
# No founded args
# echo "No arguments set."
fi
echo "[`date`] Added if $1 ($3 => $4) by user $5" >> /var/log/mpd5_vpn_server.log
vpn_down_mpd.sh
Код: Выделить всё
[root@gate ~]# cat /usr/local/etc/mpd5/vpn_down_mpd.sh
#!/bin/sh
if [ "$5" = "user" ]
then
# Send mail
echo "User $5 disconnected"|mail -s mail.server.com name@domain.com
else
# No founded args
# echo "No arguments set."
fi
echo "[`date`] Deleted if $1 ($3 => $4) by user $5" >> /var/log/mpd5_vpn_server.log
Учти! Я могу и ошибаться, за правильность скриптов не отвечаю. Просто дал тебе ход мыслей
