Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

# Для записей о начале сессии

acct_table1 = "radacct"

# Для записей о конце сессии

acct_table2 = "radacct"

таблица учёта создаётся автоматически при создании структуры базы данных radius (описано выше).

После настройки собственно учёта необходимо продумать политику ограничения доступа. Для этого существуют счётчики. Здесь я приведу пример счётчика sql. Счётчик работает по принципу периодической проверки данных учёта и на основании этого принимается решение о дальнейшей работе пользователя. Для этого счётчик должен быть добавлен в секцию authorize файла radiusd.conf. Конфигурацию счётчика будем хранить в файле sqlcounter.conf, имеющим приблизительно такой формат (взято из документации к серверу freeradius):

# Счётчик общего времени

sqlcounter noresetcounter {

           counter-name = Max-All-Session-Time

# Проверка определённого атрибута в таблице radcheck

           check-name = Max-All-Session

# Используемый процесс sql

           sqlmod-inst = sql

# Поле, по которому происходит расчёт времени

           key = User-Name

# Сброс счётчика, в данном случае счётчик не сбрасывается

           reset = never

# SQL-запрос, выполняемый счётчиком

           query = "SELECT SUM(AcctSessionTime) FROM radacct

           WHERE UserName='%{%k}'"

 

}

# Счетчик сбрасывается ежедневно

sqlcounter dailycounter {

           driver = "rlm_sqlcounter"

           counter-name = Daily-Session-Time

           check-name = Max-Daily-Session

           sqlmod-inst = sql

           key = User-Name

# Сброс счётчика ежедневно

           reset = daily

          

    query = "SELECT SUM(AcctSessionTime - GREATEST

    ((%b - UNIX_TIMESTAMP(AcctStartTime)), 0))

    FROM radacct WHERE UserName='%{%k}' AND

    UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime > '%b'"

}

 


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100