Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:dpi:dpi_options:use_cases:dpi_bestpractice_wifi_login:start [2023/10/10 08:25] – external edit 127.0.0.1 | en:dpi:dpi_options:use_cases:dpi_bestpractice_wifi_login:start [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Subscriber athorization in WiFi network by a phone number ====== | ||
- | {{indexmenu_n> | ||
- | |||
- | <note important> | ||
- | There is an option for self-implementation of this module below.</ | ||
- | |||
- | ===== Introduction ===== | ||
- | Due to the tightening of the rules for access through public WiFi hotspots to the operator' | ||
- | |||
- | ===== Workflow ===== | ||
- | Sequencing: | ||
- | - the subscriber connects to the WiFi network | ||
- | - a welcome page appears with information, | ||
- | - the subscriber opens the browser, when going to any URL, the subscriber is redirected to the identification page | ||
- | - the subscriber enters a phone number, requests an access code | ||
- | - the access code is sent to the phone number via SMS | ||
- | - the subscriber enters the received access code | ||
- | - session cookies are written to the subscriber device with storage for 24 hours ((session cookies are used to re-identify the subscriber in the network so that it is not required to re-identify the subscriber by sending SMS, the storage period can be regulated by the operator independently.)) and the transition to the requested one occurs. user URL. | ||
- | |||
- | For the network settings you will need: | ||
- | - DHCP server for the centralized issuance of subscribers addresses with a possibility when issuing a new IP address to call a shell script ((feel plugged in to DPI)) | ||
- | - The virtual machine with installed Apache WEB-server (httpd), [[en: | ||
- | - Access to the service for sending SMS messages ((in this example www.smsdirect.ru service)) | ||
- | - (Optional) the NAT to reduce usage of IPv4 addresses, and the NAT log record translations IP <-> IP, PORT ((will not be considered further, to simplify the scheme)) | ||
- | - (Optional) the Radius authentication to get network subscriber identifier ((will not be considered further, to simplify the scheme)) | ||
- | |||
- | Network diagram (inline): | ||
- | - WiFi router, configured to recieve IP from external DHCP server, and a welcome page setted ((welcome page is on the WEB server)) | ||
- | - Network routers | ||
- | - Stingray Service Gateway | ||
- | - Border router | ||
- | |||
- | Thus, all subscriber traffic passes through the SSG. | ||
- | |||
- | The sequence of operation: | ||
- | - Subscriber unit is connected to a WiFi router | ||
- | - WiFi router requests a new IP from the DHCP server | ||
- | - DHCP server runs a shell script when new IP issued and sends the data to WiFi router | ||
- | - Shell script sets on the SSG Allow list service for subscriber and rate plan with access restrictions | ||
- | - Welcome page is shown to subsriber, the subscriber activates the browser and enters any URL | ||
- | - The SSG redirects the subcriber to athoruzation page, WEB-server shows the athorizathion page ((as verified by the presence of a cookie, if the cookie is there, then there is an automatic check-in according to the subscriber' | ||
- | - WEB-server receives a request for an access code generates a random number and sends it to the subscriber' | ||
- | - WEB-server receives a request for confirmation of access code if the code is correct, is a shell script to remove the service Allow list and activate WiFi default rate plan, sets a cookie in the browser and redirects to the requested URL. | ||
- | |||
- | [[http:// | ||
- | |||
- | ===== Stingray Service Gateway Settings ===== | ||
- | Using class description in protocols.txt | ||
- | http cs0 | ||
- | https cs0 | ||
- | dns cs0 | ||
- | default cs1 | ||
- | |||
- | Converting: | ||
- | cat protocols.txt|lst2dscp / | ||
- | |||
- | From the source code copy the directory to DPI server: | ||
- | htdocs/ | ||
- | | ||
- | Create a tariff file default_policing.cfg for Internet access via WiFi - 10 mbit: | ||
- | htb_inbound_root=rate 10mbit | ||
- | htb_inbound_class0=rate 1mbit ceil 10mbit | ||
- | htb_inbound_class1=rate 1mbit ceil 10mbit | ||
- | htb_inbound_class2=rate 8bit ceil 10mbit | ||
- | htb_inbound_class3=rate 8bit ceil 10mbit | ||
- | htb_inbound_class4=rate 8bit ceil 10mbit | ||
- | htb_inbound_class5=rate 8bit ceil 10mbit | ||
- | htb_inbound_class6=rate 8bit ceil 10mbit | ||
- | htb_inbound_class7=rate 8bit ceil 10mbit | ||
- | htb_root=rate 10mbit | ||
- | htb_class0=rate 1mbit ceil 10mbit | ||
- | htb_class1=rate 1mbit ceil 10mbit | ||
- | htb_class2=rate 8bit ceil 10mbit | ||
- | htb_class3=rate 8bit ceil 10mbit | ||
- | htb_class4=rate 8bit ceil 10mbit | ||
- | htb_class5=rate 8bit ceil 10mbit | ||
- | htb_class6=rate 8bit ceil 10mbit | ||
- | htb_class7=rate 8bit ceil 10mbit | ||
- | |||
- | Create a tariff file captive_portal_hard.cfg to block access to the Internet together with an Allow list: | ||
- | htb_inbound_root=rate 256kbit | ||
- | htb_inbound_class0=rate 8bit ceil 256kbit | ||
- | htb_inbound_class1=rate 8bit ceil 8bit | ||
- | htb_inbound_class2=rate 8bit ceil 8bit | ||
- | htb_inbound_class3=rate 8bit ceil 8bit | ||
- | htb_inbound_class4=rate 8bit ceil 8bit | ||
- | htb_inbound_class5=rate 8bit ceil 8bit | ||
- | htb_inbound_class6=rate 8bit ceil 8bit | ||
- | htb_inbound_class7=rate 8bit ceil 8bit | ||
- | htb_root=rate 256kbit | ||
- | htb_class0=rate 8bit ceil 256kbit | ||
- | htb_class1=rate 8bit ceil 8bit | ||
- | htb_class2=rate 8bit ceil 8bit | ||
- | htb_class3=rate 8bit ceil 8bit | ||
- | htb_class4=rate 8bit ceil 8bit | ||
- | htb_class5=rate 8bit ceil 8bit | ||
- | htb_class6=rate 8bit ceil 8bit | ||
- | htb_class7=rate 8bit ceil 8bit | ||
- | |||
- | Configure an Allow list service: | ||
- | cp_server=yoursite.ru/ | ||
- | |||
- | ===== DHCP Configuration ===== | ||
- | - configure [[en: | ||
- | - set to trigger to issue a new IP: ssh dpi_user@dpi_host "/ | ||
- | |||
- | ===== Web Server Configuration ===== | ||
- | - configure [[en: | ||
- | - configure Apache, example in directory conf/ of source code: \\ в conf.d/ | ||
- | - copy htdocs/ in / | ||
- | - edit / | ||
- | - edit / | ||