>Подскажите, можно ли сделать так, чтобы информация о юзерах, которая хранится в
>файлике
>/etc/ppp/chap-secrets
>хранилась в БД (MySQL)
конечно можно, но я бы сказал, что наоборот из MYSQL в файл.
Создай в MYSQL таблицу, приерно такую:
REATE TABLE ip (
id bigint(20) NOT NULL auto_increment,
ip varchar(15) NOT NULL default '',
login varchar(64) NOT NULL default '',
pass varchar(64) NOT NULL default '',
UNIQUE KEY id (id)
) TYPE=MyISAM;
а потом скриптом на Perl выдергивай эту инфу в файл.
У меня например этот файл переписывается раз в 15 минут.
Скрипт примерно такой:
#!/usr/bin/perl
use Mysql;
$host="localhost";
$database="имя_базы_данных";
$user="root";
$pass="пароль_для_входа_если_есть";
$dbh = Mysql->Connect($host,$database,$user,$pass) or print $Mysql::db_errstr;
$dbh->SelectDB($database) or print $Mysql::db_errstr;
$q=sprintf("SELECT login, pass, ip from имя_таблицы_которую_создал_выше");
$sth = $dbh->Query($q) or print $Mysql::db_errstr;
system("/bin/cp /etc/ppp/chap-secrets /etc/ppp/chap-secrets.bak");
open (SEC, ">/etc/ppp/chap-secrets.new");
while (@arr=$sth->fetchrow) {
print SEC "@arr[0] @arr[1] @arr[2] *\n";
}
system("/bin/mv /etc/ppp/chap-secrets.new /etc/ppp/chap-secrets");
close (SEC);
вот и все.