15/11/2024

ZeroShell

Monétisation du portail captif ZeroShell

I. Présentation

Il est possible de monétiser l'accès au portail captif Zeroshell avec les paramètres disponibles sur Zeroshell. Il faut bien entendu qu'un portail captif soit déjà opérationnel. Je vous invite à suivre ce tutoriel si ce n'est pas le cas : Mise en place d'un portail captif sous Zeroshell

Il est possible de mettre en place un système où vous allez donner une valeur à votre accès internet. Il faut pour cela se rendre dans votre portail captif qui doit être opérationnel puis dans l'onglet "Accouting", vous verrez alors cette interface :

ZPortail15

Nous devons commencer par activer la monétisation de l'accès en cochant la case "User Accounting" puis en validant avec "Save".

Attention : Cette documentation a été réalisée avec la version RC2 de Zeroshell, considérez ce détail lors de la lecture du tutoriel et de son application sur des versions plus récentes de Zeroshell

II. Fonctionnement

Il existe plusieurs façons de monétiser votre accès Internet et l'utilisation de ces différentes options dépend de la façon dont vous voulez utiliser l'accès.

On peut par exemple mettre un montant en €/Mb utilisé ou par temps de connexion utilisé. Il est également possible de donner un "forfait" au client pour qu'il se connecte pendant X minute(s) ou alors le faire payer à la fin de sa connexion où il payera alors le total du montant.

C'est ici que l'on voit la deuxième utilité de la fenêtre persistante de connexion du côté du client (celle qu'il ne faut pas fermer), elle sert à afficher le montant à payer pour la connexion en appuyant quand on rafraîchi la fenêtre en cliquant sur "Refresh" ou alors le temps dont le client peut disposer de cette connexion avec un avertissement lorsque la limite de bande passante/de temps est proche. Le client peut d'ailleurs forcer la déconnexion depuis cette fenêtre.

Il faut savoir que c'est lors de la création de l'utilisateur que l'on va gérer le crédit et la classe à laquelle il sera affecté. Il faut d'abord définir la monnaie le nombre de décimales utilisé pour le chiffrage du règlement. Ces paramètres se règlent dans le panneau "Parameters" :

ZPortail13

Il faut ensuite créer des classes dans le panneau "Accouting classe". Une classe sera un modèle de règlement où l'on définit le coût d'une utilisation par heure ou par Mb de la connexion Internet. On définira également si ce sera du prépaiement ou du postpaiement, on pourra également préciser les limites d'utilisation de la connexion en heure, en Mb ou en Mb/s ...

ZPortail16

Nous allons créer plusieurs classes qui correspondront à des utilisations différentes de la monétisation du portail captif.

III. Mise en place d'un système en postpaiement

Nous allons faire un premier exemple où le portail captif sera réglé en postpaiement. Cela signifie que l'administrateur définira un montant par heure ou par Mb ainsi qu'éventuellement une limite d'utilisation et l'utilisateur paieront à la fin de l'utilisation de l'accès en fonction de ce qu'il a consommé ou du temps qu'il a passé dessus.

Il faut donc commencer par créer une classe qui sera réglée en postpaiement. On clique pour cela sur "Add" dans le panneau "Accounting Class" pour avoir cette fenêtre :

ZPortail18

Il faut tout d'abord paramétrer le "Type of charge" en "Postpaid". Nous devons alors définir un coût par heure ou par Mb consommé ("BILLING"). Par exemple ici 1€/Mb dans le cadre du tutoriel, nous aurions pu mettre un coût par heure. On peut ensuite si on le souhaite définir des limites ("LIMITS") d'utilisation, nous définissons ici une limite de 3 heures avec une bande passante maximale de 50Mb/s.

Il faut ensuite cliquer sur "Save" pour finaliser la création de la classe, nous la retrouverons alors dans le panneau "Accounting Class".

Nous devons enfin créer notre utilisateur et l'assigner à la classe que nous venons de créer. Rendez-vous dans "User" dans le menu de gauche puis dans "Add", la création d'un utilisateur est basique, le panneau auquel nous devons nous intéresser et le "RADIUS Accounting" :

ZPortail22

Ici, il nous suffit de changer uniquement "Accounting Class" pour y sélectionner "POSTPAIEMENT1" qui est la classe que nous avons créée. On peut aussi définir une date d'expiration du compte si on le souhaite. Cliquez enfin sur "Submit" en haut à droite pour valider. Avec l'utilisateur créé, nous pouvons tenter une connexion à travers le portail captif, une fois la connexion effectuée, on voit la fenêtre de connexion de l'utilisateur mettre à jour ses données :

ZPortail19

Nous pouvons également voir ces informations du côté de l'interface Web Zeroshell dans le l'onglet "Accouting" :

ZPortail20

Ce panneau affiche l'état de chaque connexion, ces informations restent même si le client ferme son accès. Cela permet d'avoir un historique de l'utilisation de l'accès et du règlement que le client doit effectuer à la fin de l'utilisation de l'accès. Une fois que l'information n'est plus utile, on peut la supprimer en sélectionnant la ligne voulue et en cliquant sur "Remove".

IV. Mise en place d'un système en prépaiement

Dans ce contexte d'utilisation, l'utilisateur va régler à l'avance pour une consommation de bande passante ou un temps prédéfini. Nous commençons par créer une classe qui s’appellera "Pré paiement1", il faut pour cela à nouveau se rendre dans l'onglet "Accounting" puis cliquer sur "Add" dans le panneau "Accouting Class" :

ZPortail21

Ici, nous définissons le type en "Prepaid" puis nous donnons un coût de 1€/Mb, la limite de consommation de l'utilisateur sera donc quand il aura consommé tout le crédit que nous lui avons donné. Nous aurions aussi pu mettre un coût par heure où le fonctionnement aurait été le même. Cliquez sur "Save" pour sauvegarder la classe.

Il faut aller créer ou modifier un utilisateur pour l'assigner à notre nouvelle classe. Dans le panneau de création ou d'édition d'un utilisateur, nous nous intéressons à nouveau au panneau "RADIUS Accouting" :

Zportail23

Nous devons donc définir la date d'expiration de l'accès, la classe à laquelle on l'assigne (ici Pré paiement1) et enfin le crédit que nous lui donnons. Il faut alors cliquer sur le "+" puis entrer la valeur voulue. Nous sauvegardons en cliquant sur "Submit" en haut à droite pour valider les modifications.

Le processus de vérification de la connexion et des coûts est ensuite le même que pour une classe en Postpaid.

author avatar
Mickael Dorigny Co-founder
Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

1 commentaire sur “Monétisation du portail captif ZeroShell

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.