Portail captif + proxy transparent

De SLM - MediaWiki

Retour

Configuration du réseau invité

Ajouter l’interface.

Interfaces -> Assignations

Assignation1.png

Assignation2.png


Configurer l'interface

Interfaces -> opt1

Interface.png


Configurer le DHCP

Services -> DHCPv4 -> LANGUEST

Dhcp.png


Renseigner DNS

Système -> Paramètres -> Général

Serveurdns.png


Redirection DNS

Pare-feu -> Nat -> Redirection de port

Dns.png


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)

Rules1.png


Isoler le réseau Guest :

Pare-feu -> Règles -> LANGUEST

Rules2.png


Configuration du portail captif

Import Template

Services-> Portail Captif -> Administration -> Modèles

Pc-template.png

Pc-template2.png


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.

Pc-conf.png

Pc-conf2.png


Configuration du proxy

Créer une autorité de certification interne

Systeme -> Trust -> Autorités

Ca-proxy.png

Activer le proxy

Services -> Proxy Web -> Administration

Onglet: General proxy settings

Proxy-conf.png


Activer le cache

Onglet: Local cache settings

Proxy-cache.png


Activer la QOS

Onglet: Traffic Management Settings

Proxy-qos.png


Configuration du proxy

Onglet: Forward Proxy

Proxy-forward.png


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

Proxy-blacklist.png


Télécharger les ACLs et les appliquer

Proxy-blacklist-acl.png

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/ada1
bsdlabel -w ada1s1
newfs -U /dev/ada1s1a


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)

Hote.png


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)

Créer un fichier tiscom_crontab dans le répertoire /etc/cron.d/

touch /etc/cron.d/tiscom_crontab

Mettre les droits

chmod +X /etc/cron.d/tiscom_crontab

Ajouter dans le fichier:

# /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
#
59      23      *       *       *       (csh /etc/tiscom/scripts/backup_squid_log_ftp.sh) > /dev/null

Pour verifier:

crontab -l

ou modifier /etc/crontab et ajouter

# Tiscom Script save log
53      23      *       *       *       root    csh /etc/tiscom/scripts/backup_squid_log_ftp.sh