Portail captif + proxy transparent : Différence entre versions
 (Created page with "==Configuration du réseau invité== ====Ajouter l’interface.==== ''Interfaces -> Assignations''  |900px  |900px   ====Co...")  | 
				|||
| (8 révisions intermédiaires par 2 utilisateurs non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
| + | [[OPNSense|Retour]]  | ||
| + | |||
==Configuration du réseau invité==  | ==Configuration du réseau invité==  | ||
| − | + | ===Ajouter l’interface.===  | |
''Interfaces -> Assignations''  | ''Interfaces -> Assignations''  | ||
| Ligne 8 : | Ligne 10 : | ||
| − | + | ===Configurer l'interface===  | |
''Interfaces -> opt1''  | ''Interfaces -> opt1''  | ||
| Ligne 14 : | Ligne 16 : | ||
| − | + | ===Configurer le DHCP===  | |
''Services -> DHCPv4 -> LANGUEST''  | ''Services -> DHCPv4 -> LANGUEST''  | ||
| Ligne 20 : | Ligne 22 : | ||
| − | + | ===Renseigner DNS===  | |
''Système -> Paramètres -> Général''  | ''Système -> Paramètres -> Général''  | ||
| Ligne 26 : | Ligne 28 : | ||
| − | + | ===Redirection DNS===  | |
''Pare-feu -> Nat -> Redirection de port''  | ''Pare-feu -> Nat -> Redirection de port''  | ||
| Ligne 32 : | Ligne 34 : | ||
| − | + | ===Création des règles de firewall===  | |
''Pare-feu -> Paramètres -> Avancé''  | ''Pare-feu -> Paramètres -> Avancé''  | ||
En activant cette option, les règles du portail captif (8000 à 10000) et proxy (3128 et 3129) sont créer et gérer par OPNsense (non visible depuis la GUI)  | En activant cette option, les règles du portail captif (8000 à 10000) et proxy (3128 et 3129) sont créer et gérer par OPNsense (non visible depuis la GUI)  | ||
| Ligne 48 : | Ligne 50 : | ||
==Configuration du portail captif==  | ==Configuration du portail captif==  | ||
| − | + | ===Import Template===  | |
''Services-> Portail Captif -> Administration -> Modèles''  | ''Services-> Portail Captif -> Administration -> Modèles''  | ||
| Ligne 56 : | Ligne 58 : | ||
| − | + | ===Configuration du serveur d'authentification===  | |
Plusieurs options sont possibles :  | Plusieurs options sont possibles :  | ||
| − | + | *Vide : Sans authentification  | |
| − | + | *[[Local Database]] : Permet de créer des utilisateurs manuellement qui seront stocké dans la base de donné opnsense  | |
| − | + | *[[Tickets]] : Permet de générer des utilisateurs temporaire en masse  | |
| − | + | *Ldap : (non documenté)  | |
| − | + | *Radius: (Non documenté)  | |
| Ligne 80 : | Ligne 82 : | ||
==Configuration du proxy==  | ==Configuration du proxy==  | ||
| − | ====Créer une autorité de certification interne  | + | ====Créer une autorité de certification interne====  | 
''Systeme -> Trust -> Autorités''  | ''Systeme -> Trust -> Autorités''  | ||
[[File:ca-proxy.png|900px]]  | [[File:ca-proxy.png|900px]]  | ||
| − | |||
====Activer le proxy====  | ====Activer le proxy====  | ||
| Ligne 115 : | Ligne 116 : | ||
''Onglet: Forward Proxy''  | ''Onglet: Forward Proxy''  | ||
l'adresse de la liste:    | l'adresse de la liste:    | ||
| − | + |  ftp://ftp.ut-capitole.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz  | |
| − | |||
[[File:proxy-blacklist.png|700px]]    | [[File:proxy-blacklist.png|700px]]    | ||
| Ligne 122 : | Ligne 122 : | ||
Télécharger les ACLs et les appliquer    | Télécharger les ACLs et les appliquer    | ||
| − | [[File:proxy-blacklist-acl.png|900px]]   | + | [[File:proxy-blacklist-acl.png|900px]]  | 
| − | |||
==Optimisation==  | ==Optimisation==  | ||
| Ligne 159 : | Ligne 158 : | ||
====Formater le HDD====  | ====Formater le HDD====  | ||
| − |   fdisk -I /dev/  | + |   fdisk -I /dev/ada0 # si "Working on device /dev/ada0" continuer tout de même  | 
| − |   bsdlabel -w   | + |   bsdlabel -w ada0s1  | 
| − |   newfs -U /dev/  | + |   newfs -U /dev/ada0s1a  | 
| − | |||
====Changer l'emplacement des log vers le HDD====  | ====Changer l'emplacement des log vers le HDD====  | ||
| Ligne 202 : | Ligne 200 : | ||
Création des répertoires et fichier nécessaire  | Création des répertoires et fichier nécessaire  | ||
  mkdir /var/log/squid/backup  |   mkdir /var/log/squid/backup  | ||
| − |   mkdir -p /etc/  | + |   mkdir -p /etc/tiscom/scripts/  | 
| − |   mkdir /etc/  | + |   mkdir /etc/tiscom/log/  | 
| − |   touch /etc/  | + |   touch /etc/tiscom/log/historique.log  | 
Ajouter le script  | Ajouter le script  | ||
| − |   vi /etc/  | + |   vi /etc/tiscom/scripts/backup_squid_log_ftp.sh  | 
[https://gitlab.calexium.com/sebastien/Opnsense-Portail-captif/blob/b47e094d347dd5f8949f5a4e013f1afe39b30dc9/backup_squid_log_ftp.sh Liens vers script gitlab.calexium]  | [https://gitlab.calexium.com/sebastien/Opnsense-Portail-captif/blob/b47e094d347dd5f8949f5a4e013f1afe39b30dc9/backup_squid_log_ftp.sh Liens vers script gitlab.calexium]  | ||
Mettre les droits  | Mettre les droits  | ||
| − |   chmod +x /etc/  | + |   chmod +x /etc/tiscom/scripts/backup_squid_log_ftp.sh  | 
Planifier le lancement du script tout les jours avant le newssyslog (lancé à minuit)  | Planifier le lancement du script tout les jours avant le newssyslog (lancé à minuit)  | ||
| − | + | Editer crontab  | |
| − | + |   crontab -e  | |
| − | |||
| − | |||
| − | |||
| − | |||
  # /etc/crontab - root's crontab for FreeBSD  |   # /etc/crontab - root's crontab for FreeBSD  | ||
  #  |   #  | ||
| Ligne 230 : | Ligne 224 : | ||
  #  |   #  | ||
  #minute hour    mday    month   wday    who     command  |   #minute hour    mday    month   wday    who     command  | ||
| + |  # Tiscom Script save log  | ||
| + |  59      23      *       *       *       (csh /etc/tiscom/scripts/backup_squid_log_ftp.sh) > /dev/null  | ||
  #  |   #  | ||
| − | |||
| − | Pour   | + | Pour vérifier:    | 
  crontab -l  |   crontab -l  | ||
| − | |||
| − | + | [[Catégorie:OPNSense]]  | |
| − | |||
Version actuelle datée du 8 novembre 2021 à 15:46
Sommaire
Configuration du réseau invité
Ajouter l’interface.
Interfaces -> Assignations
Configurer l'interface
Interfaces -> opt1
Configurer le DHCP
Services -> DHCPv4 -> LANGUEST
Renseigner DNS
Système -> Paramètres -> Général
Redirection DNS
Pare-feu -> Nat -> Redirection de port
Création des règles de firewall
Pare-feu -> Paramètres -> Avancé En activant cette option, les règles du portail captif (8000 à 10000) et proxy (3128 et 3129) sont créer et gérer par OPNsense (non visible depuis la GUI)
Isoler le réseau Guest :
Pare-feu -> Règles -> LANGUEST
Configuration du portail captif
Import Template
Services-> Portail Captif -> Administration -> Modèles
Configuration du serveur d'authentification
Plusieurs options sont possibles :
- Vide : Sans authentification
 - Local Database : Permet de créer des utilisateurs manuellement qui seront stocké dans la base de donné opnsense
 - Tickets : Permet de générer des utilisateurs temporaire en masse
 - Ldap : (non documenté)
 - Radius: (Non documenté)
 
Configuration du portail captif
Services-> Portail Captif -> Administration -> Zones
Dans le champ : Authenticate using
Choisissez le serveur créer plus haut.
Configuration du proxy
Créer une autorité de certification interne
Systeme -> Trust -> Autorités
Activer le proxy
Services -> Proxy Web -> Administration
Onglet: General proxy settings
Activer le cache
Onglet: Local cache settings
Activer la QOS
Onglet: Traffic Management Settings
Configuration du proxy
Onglet: Forward Proxy
Création d’une liste de filtrage de contenu
Onglet: Forward Proxy l'adresse de la liste:
ftp://ftp.ut-capitole.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz
Télécharger les ACLs et les appliquer 
Optimisation
msata + HDD
Dans le cas d'une config sur une msata, pour que les logs squid aillent sur le disque dur, il faut:
Changer l'ordre du boot
Appuyer sur F10
choix "payload [setup]"
par défaut voici l'ordre:
d SATA a USB 1 / USB 2 SS and HS b SDCARD c mSATA e iPXE (disabled)
Ordre de démarrage - tapez la lettre du lecteur pour le déplacer en haut.
Pour avoir cet ordre:
a USB 1 / USB 2 SS and HS b SDCARD c mSATA d SATA e iPXE (disabled)
entrer: e d c b a
pour sauvegarder et quitter entrer "s"
Formater le HDD
fdisk -I /dev/ada0 # si "Working on device /dev/ada0" continuer tout de même bsdlabel -w ada0s1 newfs -U /dev/ada0s1a
Changer l'emplacement des log vers le HDD
Modifier: /etc/fstab et ajouter
/dev/ada1s1a /var/log/squid ufs rw,async 1 2
Redemarrer
Pour vérifier:
root@OPNsense:~ # df -h Filesystem Size Used Avail Capacity Mounted on /dev/gpt/rootfs 13G 1.0G 11G 8% / devfs 1.0K 1.0K 0B 100% /dev /dev/ada1s1a 451G 48K 415G 0% /var/log/squid devfs 1.0K 1.0K 0B 100% /var/dhcpd/dev devfs 1.0K 1.0K 0B 100% /var/captiveportal/zone0/dev
Archiver les log pendants 365jours
Gestion logrodate opnsense
modifier /etc/newssyslog.conf.d/squid comme ci dessous
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num] /var/log/squid/access.log squid:squid 644 365 * @T00 ZB /var/run/squid/squid.pid 30 /var/log/squid/cache.log squid:squid 644 2 * @T00 ZB /var/run/squid/squid.pid 30 /var/log/squid/store.log squid:squid 644 2 * @T00 ZB /var/run/squid/squid.pid 30
Archivage journalier autonome
Création d'une archive aillant pour nom la date et envoi a un serveur ftp en créant l’arborescence
Renseigner le fuseau horaire ainsi que le nom d’hôte et domaine.
C'est ceux-ci qui seront utilisé pour créer le répertoire client sur le serveur FTP (hote.domaine)
Création des répertoires et fichier nécessaire
mkdir /var/log/squid/backup mkdir -p /etc/tiscom/scripts/ mkdir /etc/tiscom/log/ touch /etc/tiscom/log/historique.log
Ajouter le script
vi /etc/tiscom/scripts/backup_squid_log_ftp.sh
Liens vers script gitlab.calexium
Mettre les droits
chmod +x /etc/tiscom/scripts/backup_squid_log_ftp.sh
Planifier le lancement du script tout les jours avant le newssyslog (lancé à minuit)
Editer crontab
crontab -e
# /etc/crontab - root's crontab for FreeBSD # # $FreeBSD$ # SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin # #minute hour mday month wday who command # Tiscom Script save log 59 23 * * * (csh /etc/tiscom/scripts/backup_squid_log_ftp.sh) > /dev/null #
Pour vérifier:
crontab -l
