mpd5.2 + привязка к IP
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2009-02-22 17:12:34
mpd5.2 + привязка к IP
Есть ли возможность при подключении к mpd в качестве дополнительного параметра авторизации использовать его локальный ip или MAC ?
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- GRooVE
- ст. сержант
- Сообщения: 309
- Зарегистрирован: 2009-01-04 10:33:43
- Откуда: Odessa, UA
- Контактная информация:
Re: mpd5.2 + привязка к IP
ну можно попробывать через
запускать скрипт, который будет проверять ip клиента, и, в случае несовпадения, дисконектить!
Код: Выделить всё
set iface up-script /path/to/script
-
- рядовой
- Сообщения: 28
- Зарегистрирован: 2009-02-15 1:52:28
Re: mpd5.2 + привязка к IP
mpd отсылает радиусу ip клиента
или через внешний скрипт умеет авторизовать. и отдает туда кучу всяких параметров.
http://mpd.sourceforge.net/doc5/mpd29.html#29
или через внешний скрипт умеет авторизовать. и отдает туда кучу всяких параметров.
http://mpd.sourceforge.net/doc5/mpd29.html#29
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2009-02-22 17:12:34
Re: mpd5.2 + привязка к IP
только как этому скрипту передать ip с которого клиент подключился?ArPoHoM писал(а):set iface up-script /path/to/script
клиенты авторизуются через файл mpd.secret, нехотелось бы, ради этого ставить радиус.Lucky SB писал(а):mpd отсылает радиусу ip клиента
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: mpd5.2 + привязка к IP
марш документацию читатьтолько как этому скрипту передать ip с которого клиент подключился?
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2009-02-22 17:12:34
Re: mpd5.2 + привязка к IP
mpd передает ip выданный, а не ip с которого он подключился, или я туплю? 

-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: mpd5.2 + привязка к IP
вы ошибаетесь в свое параное на авторизацию всего
вы еще статик арп вбейте
может поможет
вы еще статик арп вбейте
может поможет
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: mpd5.2 + привязка к IP
если поискать в скриптах на коленке, то можно найти. я выкладывал данную схему.
ядерный взрыв...смертельно красиво...жаль, что не вечно...
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2009-02-22 17:12:34
Re: mpd5.2 + привязка к IP
Всем спасибо, разобрался... что-бы привязать мак адрес логину и паролю, можно использовать авторизацию скриптом:
в # /usr/local/etc/mpd5/mpd.conf
в # /usr/local/etc/mpd5/auth.pl
в # /usr/local/etc/mpd5/mpd.conf
Код: Выделить всё
set auth extauth-script /usr/local/etc/mpd5/auth.pl
set auth enable ext-auth
set auth disable internal
Код: Выделить всё
#!/usr/bin/perl -w
use DBI;
$db_host = '';
$db_user = '';
$db_password = '';
$db_database = '';
$file_log = '/var/log/user_auth.log';
$log = 1;
$date = `date +%d.%m.%Y`; chomp($date);
$time = `date +%H:%M`; chomp($time);
$send_ip = "192.168.99.0";
$db = DBI -> connect(('DBI:mysql:'.$db_database.':'.$db_host),$db_user,$db_password) || errors("Невозможно присоединиться к базе $db_host:$db_database, пользователь $db_user");
$sth = $db -> prepare("SELECT `ip`,`mac`,`ip2`,`mac2`,`ip3`,`mac3`,`password`,`check_mac` FROM `users` where user='$ARGV[0]' LIMIT 1; ");
$sth -> execute () || errors("Не верный sql запрос");
while (my $ref = $sth -> fetchrow_hashref())
{
$ref_ip = $ref->{'ip'};
$ref_mac = $ref->{'mac'};
$ref_ip2 = $ref->{'ip2'};
$ref_mac2 = $ref->{'mac2'};
$ref_ip3 = $ref->{'ip3'};
$ref_mac3 = $ref->{'mac3'};
$ref_password = $ref->{'password'};
$ref_check_mac = $ref->{'check_mac'};
}
$mpd_str = "none";
$i = 0;
until($mpd_str eq ""){
if ($log == 1) {
if ($i == 0) {my $cmd_result = `echo "Date: $date $time" >> $file_log`;}
$i++;
}
$mpd_str = <STDIN>;
chomp($mpd_str) ;
if ($ref_check_mac eq "yes") {
my $if_str = index($mpd_str, "PEER_MAC_ADDR:");
if ($if_str != -1){
my $mac_from_mpd = substr($mpd_str, length("PEER_MAC_ADDR:"), (length($mpd_str)-length("PEER_MAC_ADDR:")));
if ($mac_from_mpd eq $ref_mac) {$send_ip = $ref_ip}
elsif ($mac_from_mpd eq $ref_mac2) {$send_ip = $ref_ip2}
elsif ($mac_from_mpd eq $ref_mac3) {$send_ip = $ref_ip3}
else {
$ref_password = "unidentified mac";
my $cmd_result = `echo "unidentified mac: $mac_from_mpd" >> $file_log`;
}
}
} else {
$send_ip = $ref_ip;
}
if ($log == 1) { my $cmd_result = `echo "$mpd_str" >> $file_log`; }
}
print "RESULT:UNDEF\n";
print "USER_NT_HASH:$ref_password\n";
print "FRAMED_IP_ADDRESS:$send_ip\n";
$sth -> finish();
$db -> disconnect();
print "\n";
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: mpd5.2 + привязка к IP
для этого есть pppoeчто-бы привязать мак адрес логину и паролю
