Навигация
  Главня
Статьи
-Сеть
--Безопасность
-Графика
--Photoshop
--Corel Draw
--Illustrator
-ОС
--Windows
--Linux
--Unix
-SEO
-Дизайн
--Web-Design
-Разное
-Программирование
--Delphy
--C/C++
--.NET
--PHP
--Pascal
--Perl
--Visual Basic
--Ассемблер
--Java
--Java Script
--ASP
Книги

Карта Сайта
Наши Сайты
Обратная связь
Новое на сайте
Статьи про любовь

 
Вход
 
Логин
Пароль
 

 
Найти
 

 
Партнёры
 

 
Статистика
 

 
Популярное
 

 
Календарь
 
«    Октябрь 2007    »
ПнВтСрЧтПтСбВс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

 
Архив
  Сентябрь 2008 (4)
Июнь 2008 (4)
Май 2008 (12)
Апрель 2008 (49)
Март 2008 (51)
Февраль 2008 (73)
Январь 2008 (40)
Декабрь 2007 (58)
Ноябрь 2007 (61)
Октябрь 2007 (51)
Сентябрь 2007 (82)

 
Реклама
  Кулинарные рецепты на Cook-room.com - с пошаговыми фото

 
Казино
 

Интернет-казино Grand Casino произвело фурор в игорном мире. Одно из самых важных нововведений - наличие системы контроля честности всех азартных игр казино. Наличие контроля честности дает возможность полностью уйти в игру, не задумываясь о подтасовке или обмане. В Grand Casino можно пополнить счет и вывести выигрыш большим количеством способов:(SMS, E-gold, Rupay, Яндекс.Деньги, Webmoney,Кредитные карты,...). Теперь азартные игры на деньги стали доступнее. Предоставлены игры: Рулетка, Покер, Блэкджек, Видео Покер, Игровые автоматы, Кено.

   

Статьи » Сеть » Настройка Web аутентификации для Wi-Fi соединений

Данное решение также может быть адресовано владельцам небольших беспроводных сетей, предоставляющим платную услугу использования Internet для мобильных абонентов. В интернет-кафе ставка обычно делается не на организацию безопасных каналов связи, а на простоту пользования услугой, поэтому широкую популярность приобрела так называемая Web аутентификация, которая является альтернативой более сложным VPN-туннелям. Суть ее в следующем: пользователь, подключившись к WiFi сети, первоначально не имеет выхода в интернет. Открыв браузер и набрав произвольный URL в адресной строке, он попадает на страницу аутентификации, где ему предлагается ввести логин и пароль (или номер карты и пин-код). Доступ к ресурсам Internet будет открыт только после успешной авторизации. В данном механизме не происходит создания VPN-туннеля, поэтому на стороне клиента не требуется специального программного обеспечения или какой-либо предварительной настройки. На сегодняшний день web аутентификацию поддерживают большинство точек доступа, однако использовать ее совместно с автоматизированной системой расчетов часто не представляется возможным из-за отсутствия полноценной поддержки RADIUS протокола. Точки доступа, лишенные этого недостатка, как правило, стоят довольно дорого. Ниже описано решение, позволяющее реализовать web аутентификацию на UNIX-маршрутизаторе (том же сервере, где, например, установлена АСР LANBilling), что позволит сэкономить на выборе точек доступа.

Помимо стоимости, к недостаткам существующих решений в полной мере поддерживающих RADIUS аутентификацию (802.1х или встроенную поддержку RADIUS Web based auth), позволяющих реализовать online тарификацию Wi-Fi соединений, стоит отнести условие функционирования этих решений на втором уровне (канальном уровне) модели OSI (из этого имеются исключения в виде решения Cisco Systems (LWAPP), обладающего первым недостатком - ценой, к месту будет сказано, что это решение было целиком куплено у компании Airespace, предлагавшей некоторое время назад одноименные контроллеры). В частности, у большинства из изученных устройств имеется ограничение на расположение контроллера и выноса (у разных производителей под выносом понимаются одни и теже устройства, но по разному именуемые: радио порты (HP ProCurve Secure Access 700wl Series совместно с ProCurve Switch xl Access Controller Module), облегченные точки (SonicWall) и т.д). Подобные решения чрезвычайно сложно развертывать в IP сетях где нет возможности поместить точку и контроллер в один Ethernet сегмент.

Обобщенная схема решения приведена на рисунке ниже.

Настройка Web аутентификации для Wi-Fi соединений
Рис. 1
Общая схема решения
Беспроводная сеть может быть построена с использованием одной или нескольких точек доступа. Все они должны быть объединены вместе с пограничным роутером, через который осуществляется выход в Internet, в общую сеть посредством коммутатора или маршрутизатора. Необходимым условием является отсутствие NAT (подмены ip адресов) между любым конечным пользователем и сервером с АСР (он же пограничный Linux-маршрутизатор). Все функции по аутентификации WiFi клиентов переносятся на сервер, что позволяет до минимума снизить требования к используемым точкам доступа. Если требуется сервис DHCP, то он может быть запущен как на AP (от англ. Access Point), так и на сервере. Использовать вторую возможность целесообразно только в случае необходимости централизованно раздавать ip адреса в WiFi сети, построенной на нескольких AP.
Функции пограничного UNIX-маршрутизатора:

АСР LANBilling в комплектации LBcore, LBcd (ethernet агент) - подсчет трафика на интерфейсе маршрутизатора, тарификация услуги объемного типа.

Перенаправление http (http) запросов на собственный web сервер и блокировка прочего трафика для неавторизованных пользователей.

Дополнительный скрипт аутентификации, работающий с базой данных АСР

Открытие доступа пользователям, прошедшим аутентификацию

Блокировка пользователя при исчерпании баланса, по запросу или завершению сессии


Примеры управляющих скриптов.

Перенаправление http трафика осуществляется при помощи механизма iptables REDIRECT. При старте системы должны быть разрешены только DNS запросы, и весь www трафик перенаправляться на сервер.
Первоначальное состояние:
# iptables -t nat -nL PREROUTING

                Chain PREROUTING (policy ACCEPT)

                target prot opt source destination

                ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53

                REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 redir ports 80

                REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 redir ports 443

                DROP all -- 0.0.0.0/0 0.0.0.0/0

Конфигурационный файл iptables для такого стартового состояния будет выглядеть следующим образом:
*nat

                :PREROUTING ACCEPT [97569:16395666]

                :POSTROUTING ACCEPT [26991:1834572]

                :OUTPUT ACCEPT [27006:1835736]

                -A PREROUTING -p udp -m udp --dport 53 -j ACCEPT

                -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 80

                -A PREROUTING -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 443

                -A PREROUTING -j DROP

                COMMIT

После успешной аутентификации пользователя, например, с ip 192.168.10.10 правила фильтра должны измениться следующим образом:
# iptables -t nat -nL PREROUTING

                Chain PREROUTING (policy ACCEPT)

                target prot opt source destination

                ACCEPT all -- 192.168.10.10/32 0.0.0.0/0

                ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53

                REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 redir ports 80

                REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 redir ports 443

                DROP all -- 0.0.0.0/0 0.0.0.0/0

Добавление в начало цепочки разрешающего правила (ACCEPT) фактически останавливает просмотр остальных правил для ip 192.168.10.10, и в результате перенаправление и блокировка трафика для него не работают. Для динамического управления правилами iptables необходимы 2 скрипта: script_start, добавляющий разрешающее правило для данного ip в начало цепочки, и script_stop, удаляющий правило.
script_start:

                #!/bin/bash

                # param $1 - ip

                # param $2 - netmask

                /sbin/iptables -t nat -I PREROUTING 1 -s $1/$2 -j ACCEPT

                script_stop:

                #!/bin/bash

                # param $1 - ip

                # param $2 - netmask

                /sbin/iptables -t nat -D PREROUTING -s $1/$2 -j ACCEPT

                

Помимо динамического управления правилами iptables для корректного начала и завершения пользовательской сессии в БД необходимо поддерживать актуальное соответствие между пользователем и ip адресом, который он использует. Поэтому вышеописанные скрипты нужно немного усложнить. Примеры используемых в решении скриптов: script_start и script_stop.
Здесь предполагается, что все скрипты размещены в директории /usr/local/billing. Для вызова script_start и script_stop применяется механизм запуска внешних процедру, предусмотренный в АСР. При этом script_start должен совпадать с vg_on (запускатеся при снятии блокировки учетной записи), а script_stop - с vg_off (запускается во время блокировки).

WEB-аутентификацию осуществляет PHP скрипт на стороне сервера (authorize.php) Все необходимы файлы для функционирования скрипта можно найти здесь. Скрипт осуществляет проверку логина и пароля. Если такой логин не найден, то пытается активировать карту, рассматривая введенный логин как номер карты. Для удобства все служебные запросы, необходимые для проверки подлинности, вынесены в хранимую SQL процедуру. Если авторизация успешно пройдена, скрипт должен инициировать запуск скрипта script_start. Это можно сделать либо средствами агента, сымитировав разблокирование учетной записи (в этом случае агент запустит vg_on=script_start). Либо запускать script_start непосредственно из скрипта аутентификации(при этом нужно будет пользоваться sudo, т.к. script_start требует root-привилегий). В authorize.php реализован первый способ. Кроме этого у авторизовавшегося пользователя открывается дополнительное окно браузера с формой, позволяющей отправить запрос на завершение сессии (см. п. 5)

Настройка apache. Наличие apache требуется для функционирования LANBilling, однако помимо общих инструкций по настройке, описанных в документации АСР, здесь потребуется небольшое дополнение к конфигурации. В httpd.conf нужно добавить строку
ErrorDocument 404 /authorize.php

Кроме того поправить DirectoryIndex в директории, описанной как DocumentRoot (в примере /home/www-data):
                

                    Options Indexes FollowSymLinks

                    DirectoryIndex authorize.php

                    AllowOverride None

                    Order allow,deny

                    Allow from all

                    

Все это необходимо для того, чтобы любой http запрос, перенаправленный на этот сервер, приводил к запуску скрипта аутентификации. Сам скрипт authorize.php должен располагаться в папке DocumentRoot (/home/www-data).

Необходимость прерывания пользовательской сессии возникает в следующих случаях:

Пользователь исчерпал свой баланс

Административный запрос на блокировку

Пользовательский запрос на остановку сессии по окончании работы с целью пресечь возможный несанкционированный доступ с использованием его ip адреса

Разрыв сессии по таймауту при отсутствии активности с данного ip адреса в течение заданного времени

Во всех случаях для разрыва сессии необходимо запустить script_stop с нужными параметрами. Первые два случая - это штатная возможность АСР: при блокировке(административной, пользовательской либо по балансу) агент запускает vg_off=script_stop. Пользовательский запрос (3ий случай) инициируется через браузер. Механизм запуска скриптов здесь аналогичен п. 3: можно спровоцировать запуск vg_off=script_stop, либо вызвать скрипт напрямую (в authorize.php реализован первый способ).
Для обработки 4го случая необходима переодическая проверка активных "сессий". Для этих целей можно воспользоваться следующим скриптом, который должен запускаться с заранее определенным интервалом (через cron).
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.
Вы читаете: Статьи » Сеть » Настройка Web аутентификации для Wi-Fi соединений
Статьи по теме:
  • Графический счётчик на PHP
  • Установка свойств для элементов управления и объектов
  • Как узнать размер базы данных MySQL через php
  • Как узнать размер базы данных MySQL через php
  • Время выполнения SQL запросов
  •  (голосов: 0)
    Просмотров: 5842 :: Комментарии: (0) :: :: Напечатать

    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
     
    Design by PODPOLE