12 Apr 2025, 00:00

Activation du Wake-On-Lan (sur un Dell Optiplex 3050)

Le but est d’activer le WoL sur un Dell Optiplex 3050.

https://www.dell.com/support/kbdoc/en-uk/000129137/wake-on-lan-wol-troubleshooting-best-practices

Il faut bien sûr que le matériel supporte le WoL. C’est le cas de l’Optiplex 3050.
Il est nécessaire de paramétrer le BIOS, mais également le pilote sous l’OS que l’on utilise, car il va déterminer le comportement de la carte réseau à l’extinction de l’OS.

Paramétrage BIOS

J’ai commencé par faire une mise à jour du BIOS vers la version la plus récente, pour limiter les risques de bug logiciel du BIOS.
Vérifier les paramètres suivants :

  • System configuration -> Integrated NIC -> Enabled
  • Power Management -> Wake on LAN/WLAN -> Lan Only (ou autre réglage qui active sur le WoL sur le LAN)
  • Power Management -> Deep Sleep control -> Disabled

À ce stade, normalement le WoL est actif. Il se voit par l’allumage d’une des 2 LEDs de la carte réseau.
On peut “réinitialiser” le statut WoL en débranchant électriquement le poste puis en le rebranchant. Il devrait s’allumer un court instant, puis s’éteindre, mais la LED du NIC doit rester allumée.

Paramétrage Debian

Lorsqu’on éteint le poste via la commande sudo poweroff, la carte réseau s’éteint complètement, car l’OS peut contrôler son comportement à l’extinction.
Il faut donc lui dire de maintenir la carte en fonctionnement.

On commence par installer ethtool, qui permet de voir/gérer l’état des cartes réseau :
apt install ethtool

On définit la carte à gérer :
iface=ethX

et on peut consulter une carte avec :
sudo ethtool $iface ou
sudo ethtool $iface | grep -i Wake-on

et on a notamment les lignes :

Supports Wake-on: pumbg
Wake-on: d

Chaque lettre a une signification, trouvable dans man ethtool, et qui sont :

p   Wake on PHY activity
u   Wake on unicast messages
m   Wake on multicast messages
b   Wake on broadcast messages
a   Wake on ARP
g   Wake on MagicPacket™
s   Enable SecureOn™ password for MagicPacket™
f   Wake on filter(s)
d   Disable  (wake on nothing).  This option clears all previous options.

Le WoL implémenté généralement est le “MagicPacket™”, il faut donc avoir que la carte supporte “g”.

L’état “Wake-on” correspond à l’état actuel ; on voit ici qu’il est désactivé, donc si j’éteins le poste, la carte-réseau n’aura aucune LED allumée et il sera impossible de le rallmuer via WoL.
À ce stade, le WoL restera désactivé même si on va dans le bios, qu’on sauvegarde, qu’on ré-éteint le poste.
Il est nécessaire de débrancher/rebrancher électriquement le poste pour que le WoL recommence à fonctionner.

Pour activer le WoL, il faut entrer cette commande :
sudo ethtool -s $iface wol g

dont la réussite se voit dans la sortie de :
sudo ethtool $iface | grep -i Wake-on

Si on éteint le poste, le WoL restera activé.
Mais au prochain boot, le status WoL sera à nouveau défini sur d !

Il faut donc l’activer à chaque démarrage.
Des infos ici : https://wiki.debian.org/fr/WakeOnLan

Je passe par la méthode de création d’un service systemd : On peut créer le fichier de définition du service avec cette commande, à lancer en root :

if [ -z "$iface" ] ; then echo -e '\nIl faut définir la variable $iface !\n' ; else echo "[Unit]
Description=Configure Wake-up on LAN

[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s $iface wol g

[Install]
WantedBy=basic.target" > /etc/systemd/system/wol.service ; fi

On active le service au démarrage, ainsi qu’immédiatement, et on recharge le démon systemd :

sudo systemctl enable wol
sudo systemctl start wol
sudo systemctl daemon-reload

On doit normalement avoir “g” sur le paramètre “Wake-on” à chaque démarrage, et donc pouvoir éteindre le poste via poweroff en maintenant le status WoL actif.

Paramétrage Windows

https://www.dell.com/support/kbdoc/en-uk/000129137/wake-on-lan-wol-troubleshooting-best-practices

Il semblerait que ce soit via le gestionnaire de périph, aller dans les propriétés du NIC -> Power Management ->
Allow this device to wake the computer
Only allow a magic packet to wake the computer

advanced tab
Energy-Efficient Ethernet -> Disabled

config panel :
Turn on fast startup ?

Allumage à distance

On note l’adresse mac de la cible à réveiller :
distantmacaddr=00:11:22:33:44:55

Sous Debian il y a au moins 2 outils pour réveiller un poste via WoL :
sudo apt install etherwake wakeonlan

On peut utiliser etherwake, qui nécessite les droits root et de préciser explicitement l’interface qui envoie le paquet magique :
sudo etherwake -i ethX $distantmacaddr

ou bien wakeonlan :
wakeonlan $distantmacaddr

Consommation électrique

Sur l’Optiplex 3050, je constate environ 0.9W lorsque le poste est éteint avec WoL activé.

En phase de BIOS/démarrage, je constate environ 20W, et lorsque Debian est lancé mais sans aucune activité, je constate environ 9W.

En lançant quelques processus u peu gourmands en CPU/RAM/disque (mais sans être un test intensif non plus), je monte à 40W.

12 Jul 2024, 00:00

Communication avec un switch Cisco par le port console

Une source quie m’a aidé

Identification du switch et du port série

Modèle de switch : Catalyst 3560 v2
Port console RJ45 à l’arrière du switch ; câble fourni RJ45 <-> DB9

Sur une Debian Bookworm ; on utilise setserial pour identifier le port, puis minicom pour interagir avec le switch.
apt install minicom setserial
Pour identifier le port série utilisé :
sudo setserial -g /dev/ttyS*

À noter qu’un convertisseur usb sera probablement de la forme /dev/ttyUSB0 .

Ici, le port utilisé est /dev/ttyS0.

Configuration et usage de minicom

La doc Cisco nous indique la config nécessaire : 9600 bauds ; 8b de données ; 1b d’arrêt ; aucune parité ; aucun contrôle de flux.
C’est une config assez classique connue sous la forme “9600 8N1”.

sudo minicom -s
A -> entrer “/dev/ttyS0”
La configuration étant assez classique, elle fait partie des options prédéfinies ; on la sélectionne :
E -> C puis Q ; on vérifier que la config actuelle est bien “9600 8N1”
Entrée
Entrée
Enregistrer config sous .dsl (écrit /etc/minicom/minirc.dfl )

“Sortir de minicom” quitte vraiment minicom
“Sortir” quitte la config et nous affiche l’interface avec le port série.

Il est possible qu’il faille relancer minicom pour activer la config qu’on vient de définir.

Pour quitter minicom :
Ctrl-A -> X

Afficher l’aide :
Ctrl-A -> Z

Communication avec le switch

Une fois minicom lancé, on branche le switch au port serie, on le branche au secteur, et au bout de qqs instants, le log du démarrage devrait apparaître dans minicom.

Une fois le démarrage du switch terminé, avec Entrée on lance l’invite de commande ( Switch> )

Pour afficher les infos ip :
show ip interface

24 Mar 2023, 00:00

Téléphonie via Teams

Vocabulaire

Auto-attendant = SVI (serveur vocal interactif, navigation à l’aide des touches)
Call queue = file attente (message/musique attente + transfert des appels aux agents)
PSTN = RTC (réseau téléphonique commuté)

Généralités

Pour pouvoir utiliser la téléphonie Teams, chaque utilisateur a besoin de :

  • une licence Teams Phone Standard (Téléphonie Teams) : nécessaire pour se connecter au réseau RTC MS
  • une licence forfait d’appel
  • un numéro de téléphone attribué

Une fois ces 3 conditions validées (et un certain délai éventuel), chaque utilisateur verra apparaître le pavé de numérotation dans Teams, section Appels.
Si le pavé n’apparaît pas, voir cette page.

Gérer les numéros de téléphone

Se fait via le Teams Admin Center (TAC) :

Voice -> Phone numbers

Nombre de numéros de tél disponibles :

Numéro User : (nombre de calling plans*1.1) + 10 + pay-as-you-go-licences
Numéro Service (Voice App) (payant pour les appelants) : 5
Numéro Service (gratuit pour les appelants) : ?

Dépassement du forfait et numéros payants

Pour pouvoir continuer à appeler lorsque les minutes de forfait sont épuisées, et pouvoir appeler des numéros spéciaux (082* etc.), il faut acheter des crédits de communication.
Une fois les crédits achetés, il faut affecter la licence Crédits de communication à chaque utilisateur qui doit pouvoir les utiliser.

Numéro de service

Aussi appelé “Voice App”.
Peut être partagé entre plusieurs utilisateurs.
Il faut un compte de ressources, un numéro affecté à l’usage Service (voice app), une licence (gratuite) Teamps Phone ressource Account (Teams système téléphonique utilisateur virtuel).

Teams Admin Center -> Voice -> Call queues
Ajouter, choisir le compte de ressource créé auparavant.
Une fois créé et les utilisateurs (“agents”) affectés, chacun d’eux pourra appeler en tant que ce numéro de service.

Délégation

Déléguer sa ligne à une ou plusieurs personnes leur permet de recevoir les appels et répondre au nom du délégueur.
Pour ça, c’est fait directement par le client :
Teams -> Paramètres -> General -> Gérer les délégués

Par défaut, le délégué appelle avec son propre numéro, à moins de cliquer sur la petite flèche à côté de Appeler.

Compte de ressources

TAC -> Voices -> Ressource accounts (-> Add)

Choisir “Call queue” pour associer (plus tard) ce compte de ressource à une file d’attente.
L’utilisateur sera alors créé, visible également dans le Office Admin Center.

Si on veut lui assigner un numéro de téléphone, il est nécessaire que cet utilisateur possède une licence (gratuite) de type “Téléphonie Microsoft Teams Standard - Utilisateur virtuel”.
Une fois la licence assignée, et quelques minutes écoulées, on peut lui assigner un numéro (qui doit être de type “Voice app”) via le bouton “Assign/Unassign”. Choisir “Calling Plan” si le plan d’appel est fourni par Microsoft.

Les modifications mettent quelques minutes à se propager.

Files d’attente

TAC -> Voice -> Call queues (-> Add)

Un appel sur une file d’attente sera réparti entre tous les utilisateurs appartenant à cette file d’attente.
Il y’a plusieurs stratégies (tous en même temps, le 1er dispo, le + longtemps inactif etc).

Il est nécessaire, à la création, de l’associer à un compte de ressource.

On peut ensuite affecter des utilisateurs (ou un Canal standard d’une Team - les canaux privés ne fonctionnent pas) à cette file d’attente : ce sont tous les utilisateurs qui seront sollicités lors d’un appel sur ce numéro.

Le “Conference Mode” permet apparemment de recevoir les appels plus rapidement, et ne semble être incompatible qu’avec Skype for Business.

Répondeur partagé (numéro de service)

Via un groupe créé manuellement

Créer un groupe Microsoft 365 (OAC -> Groupes -> Nouveau groupe M365).
Ajouter les personnes qui doivent recevoir le message en tant que membres.

Paramétrer la call queue pour rediriger les appels non-répondus vers un boite vocale partagée (shared voicemail) ; choisir celle du groupe précédemement créé
Les membres du groupe recevront les appels dans outlook, dans la section Groupes

Il faut toutefois ajouter chaque utilisteur manuellement au groupe ; je n’ai pas trouvé comment ajouter un groupe de sécurité à un groupe MS365.

Via une Team

Chaque équipe possède une adresse mail ; il faut la trouver dans Teams, et activer le transfert des mails aux membres de l’équipe ( -> Administrateur -> Teams -> Choisir l’équipe -> Paramètres -> “Envoyer des copies des emails aux membres” ).

Paramétrer la call queue pour rediriger les appels non-répondus vers l’adresse mail de l’équipe.
Ainsi chaque membre recevra un mail (contenant le message vocal en PJ).

Pour les voir dans Teams directement ??

https://dynamicconsulting.com/2020/06/02/shared-voicemail-displaying-in-teams/

Appels en tant que numéro de service

Pour forcer le changement du numéro affiché lors des appels sortants pour un utilisateur, dans le TAC :
Voice -> Caller ID policies

Ajouter une politique, choisir un numéro de service (ou compte de ressource) qui sera utilisé pour les appels sortants.

Ensuite, toujours dans le TAC, Users -> Manage Users, sélectionner tous les utilisateurs à modifier, Policies -> Edit -> Caller ID Policy et choisir la stratégie créée précedemment.

Il semble que l’on peut toujours appeler en tant que délégueur si la stratégie s’applique uniquement au délégué.

Rendre muet la sonnerie d’un appel

Dans le client Teams :
Paramètres -> Notifications -> Apparence et sons -> Désactiver "Faire jouer le son..."

https://answers.microsoft.com/en-us/msteams/forum/all/need-to-be-able-to-mute-incoming-calls-while-on-a/8366dd59-0573-4daa-b6c9-3c669adea0b3?page=2

Appeler en numéro masqué

Dans la stratégie Caller ID, c’est le paramètre “Override Caller ID Policy” (ou “EnableUserOverride” via powershell).
Elle n’override rien directement, elle permet à l’utilisateur final d’overrider (=passer en anonyme uniquement). Aucun effet si la stratégie passe déjà les appels en anonyme.

L’utilisateur final peut ensuite aller dans les paramètres de l’appli Teams -> Appels -> Identifiant de l’appelant.

Quelques minutes nécessaires pour appliquer le changement (~3-5 minutes selon mes tests)

https://learn.microsoft.com/en-us/microsoftteams/how-can-caller-id-be-used-in-your-organization#end-user-control-of-outbound-caller-id

Affectation à une stratégie en fonction d’un groupe de sécurité

TAC -> Voice -> (stratégie à définir) -> Group policy assignment
On peut choisir un groupe de sécurité puis une stratégie définie précédemment, et tous les membres du groupe recevront automatiquement la stratégie.

Enregistrer un appel

https://learn.microsoft.com/en-us/microsoftteams/cloud-recording

Enregistré dans onedrive

Powershell

Nécessite le module MicrosoftTeams

https://learn.microsoft.com/fr-fr/skypeforbusiness/set-up-your-computer-for-windows-powershell/download-and-install-the-skype-for-business-online-connector

Rapports

TAC -> Analytics & Reports -> usage reports

Les rapports PSTN usage indiquent tous les appels émis/reçus par les numéros gérés par Teams.
Le “Display Name” ou “Username” correspondent au numéro géré par Teams qui est concerné, que ce soit un appel entrant ou sortant.
Pour actualiser le rapport, il faut agir dessus, par exemple changer l’ordre de tri, ou générer un autre rapport puis re-générer le rapport souhaité.

Dans le cas d’un appel sortant,

  • le type sera “user-out”
  • si l’utilisateur a paramétré le numéro masqué, on verra quand même son nom dans le rapport, mais le “Caller ID” sera vide
  • si l’utilisateur appelle en tant que numéro de service, on verra quand même son nom, mais le “Caller ID” sera celui du numéro de service

Dans le cas d’un appel entrant,

  • si c’est un numéro de service qui reçoit, le type sera “ucap_in”
  • si c’est directement un numéro utilisateur qui reçoit, le type sera “user_in”
  • si l’appelant a masqué son numéro, le “Caller ID” sera vide

Liens divers

Présentation :
https://docs.microsoft.com/fr-fr/microsoftteams/what-is-phone-system-in-office-365
https://docs.microsoft.com/en-us/microsoftteams/what-is-phone-system-in-office-365 (anglais)

Fonctionnalités :
https://docs.microsoft.com/fr-fr/microsoftteams/here-s-what-you-get-with-phone-system
https://docs.microsoft.com/en-us/microsoftteams/here-s-what-you-get-with-phone-system (anglais)

Gestion des licenses :
https://docs.microsoft.com/fr-fr/microsoftteams/teams-add-on-licensing/virtual-user
https://docs.microsoft.com/en-us/microsoftteams/teams-add-on-licensing/virtual-user (anglais)
6.70€/util/mois

https://docs.microsoft.com/fr-fr/microsoftteams/teams-add-on-licensing/microsoft-teams-add-on-licensing?tabs=small-business
https://docs.microsoft.com/fr-fr/microsoftteams/set-up-calling-plans

Transférer numéros :
https://docs.microsoft.com/fr-fr/microsoftteams/phone-number-calling-plans/transfer-phone-numbers-to-teams
https://docs.microsoft.com/fr-fr/microsoftteams/phone-number-calling-plans/manually-submit-port-order (demande manuelle, car transfert auto non dispo pour la france)

Demande contact
https://info.microsoft.com/ww-landing-Contact-Me-Business-Voice-Contact-Me.html?lcid=en-us

Microsoft 365 business standard : 10.5€/mois/user
Office 365 E3 : 19.7€/mois/user

02 Mar 2023, 00:00

Notes sur l'administration d'un réseau Unifi

Général

Il est nécessaire d’avoir un contrôleur pour gérer un réseau Unifi, et paramétrer les appareils. Ceci peut être une console Unifi (Dream Machine, etc), mais aussi n’importe quel poste (Windows, Linux, Raspi etc).
Centre de téléchargement Unifi

Si le soft est installé sur un PC, il lance un serveur web en local. On peut ensuite accéder à la config via navigateur en accédant à l’IP du matériel sur lequel est installé le serveur web sur le port 8443 (par exemple http://localhost:8443 ).

Une fois configuré, le matériel fonctionne sans la console ; mais il faudra le relancer pour modifier la configuration.

Les appareils peuvent se gérer individuellement en se connectant à leur IP, mais aussi en centralisé via https://unifi.ui.com. Ceci nécessite d’avoir un compte sur https://ui.com et d’avoir paramétré le contrôleur avec ces identifiants.
Il faut également que le paramètre Remote Access soit activé. (Console Settings -> Advanced)

La paramétrage, ainsi que le backup/restore, se fait à plusieurs niveaux différents : au niveau d’UnifiOS, qui est l’interface de gestion du contrôleur complet, et au niveau de chaque application (Network, Protect, etc).

Éteindre matériel via écran LCD :
sur écran : Settings -> Shut down
Pour revenir en arrière sur les menus de l’écran, swipe vers le haut ou le bas.

Interface

Il est possible de revenir à l’ancienne interface de l’appli Network, permettant plus de fonctionnalités/paramétrages.

Pour ceci, dans l’app Network : Settings -> System -> Advanced -> Interface : Legacy.

Backup/Restore

Pour backuper UnifiOS au complet (il me semble que cela inclut les paramétrages des applications), il faut être Owner du contrôleur. Être admin ne suffit pas. A priori un superadmin pourrait le faire aussi, mais je n’ai pas trouvé comment ajouter un superadmin.

Dans UnifiOS (https://unifi.ui.com/dashboard), choisir le contrôleur, puis Console Settings, de là on peut backuper le fichier sur les serveurs d’Unifi, et télechargera également le fichier en local. (ficheir .unifi)

Après restauration usine d’un contrôleur, si on le paramètre avec le même Owner que le contrôleur backupé, on peut le restaurer depuis les serveurs ou depuis un fichier local.
Attention, un backup n’est restaurable que sur un matériel ayant le même Owner !

On peut également backuper/restaurer les paramètres de chaque application individuellement (pour Network : Settings -> System -> Backup) (ficheir .unf)

Réseau

Modifier adressage réseau :
App Network -> Settings (bas gauche) -> Networks -> choisir le réseau et le modifier

DHCP bail fixe client :
App Network -> Topology -> choisir l’équipement -> activer Fixed IP

Changer serveur DNS distribué par DHCP :
App Network -> Settings -> Network -> Advanced -> DHCP -> DHCP DNS Server -> Enable -> Entrer entre 1 et 4 serveurs DNS

Redirection de port :
App Network -> Settings -> Firewall & Security -> Redirection de ports

IP fixe WAN routeur :
App Network -> Settings (bas gauche) -> Internet -> choisir le réseau WAN -> Advanced (Manuel) -> IPv4 Connection -> Static -> régler paramètres réseau

Fixer vitesse port routeur :
Topology (ou Unifi Devices) -> choisir l’équipement -> Ports -> Port Manager -> choisir le port et régler sa vitesse

Guest Hotspot :
Network app -> Settings -> Profiles -> Guest Hotspot

Isolation de réseau invité

https://vninja.net/2019/08/08/creating-isolated-networks-ubiquiti/

On peut créer un réseau “Guest” qui permet aux invités d’accéder à Internet, mais en le séparant du réseau principal.
Pour ceci, App Network -> Settings -> Network -> Create New Network.

Si on choisit “Guest” comme type de réseau, cela permet de restreindre l’accès via des codes/coupons etc. (???)

On peut également associer un réseau wifi à ce réseau invité.

Une fois le réseau créé, il sera cependant en mesure d’accéder (au moins pinger) les ressources du réseau principal. Pour empêcher ceci :
Network App -> Settings -> Firewall & Security -> New Rule.
Type : LAN In
Rule Applied Before predefined rules
Drop
Source : Network -> Choisir le réseau invité
Destination : Network-> choisir le réseau principal

Une fois appliquée, cette règle empêche aux clients du réseau invité d’accéder au réseau principal.
(vérifier si l’inverse est vrai aussi ?)

Note : pour vérifier, il faut tester un ping vers un vrai client sur le réseau principal, et non l’IP de la passerelle sur le réseau principal, car toutes les IP de la passerelle Unifi sont accessibles depuis tous les réseaux (ce sont des passerelles virtuelles, et le trafic réseau ne passe pas d’un réseau à l’autre, ça reste en interne).

Bornes Wifi

Explication des LED

blanc clignotant (0.5s) : démarrage
blanc fixe : en attente d’adoption (configuration/intégration ?)
blanc clignotant très rapide : bug, redémarrer l’AP

bleu fixe : adopté, foncitonnement normal
blanc/bleu clignotant rapide : upgrade en cours
bleu/éteint clignotant 5s : perte de connectivité WiFi
bleu/éteint rapide : mode “locate” activé dans l’appli unifi

bleu-blanc-off : TFTP mode (pour y rentrer, maintenir bouton reset lors de la mise en route jusqu’à apparition de ce motif)

Désactiver temporairement une borne

Ceci peut se faire logiciellement, mais uniquement dans l’ancienne interface. Pour ceci :
Devices -> choisir la borne à désactiver -> Config (engrenage) -> Manage device -> bouton Disable

On peut également complètement couper une borne alimentée en PoE en désactivant le PoE sur son port, via le Port Manager.

Caméras

Orientation

Dans l’appli Protect, aller dans la artie playback, ouvrir la caméra à réorienter, clic sur l’engrenage (en bas) et choisir Orientation.

Device groups

Settings -> General

Notifications mail

Si le “Remote Access” est activé, ce sont directement les serveurs Unifi qui sont utilisés pour l’envoi SMTP.

Pour tester l’envoi des mails, dans l’app Network, ancienne interface : Settings -> Network Application -> Test Cloud email.

Dans le portail Unifi, choisir un contrôleur puis System Log -> Push Notification Settings

Dans l’appli Network : System Logs -> Push Notification Settings.

Dans l’appli Protect : Settings -> Notification (-> Custom)

autre

port isolation conseils https://help.ui.com/hc/en-us/articles/115000166827-UniFi-Guest-Portal-and-Hotspot-System

Ports : https://help.ui.com/hc/en-us/articles/218506997

https://evanmccann.net/blog/ubiquiti/unifi-comparison-charts

Adoption : https://help.ui.com/hc/en-us/articles/204909754-UniFi-Layer-3-methods-for-UAP-adoption-and-management

13 Dec 2022, 00:00

Logs sous PfSense

Les journaux sont stockés sous forme de log circulaire. Pour les lire, il faut utiliser clog.

En SSH :

cd /var/log
clog mylog.log | less

Par défaut ils sont limités à environ 500ko/log, et à 50 lignes dans l’affichage webGUI. Dans Status -> System Logs -> Settings, on peut augmenter ces valeurs. La taille des journaux ne sera toutefois réellement changée que lors d’un réinitialisation des logs.

13 Apr 2021, 00:00

Forecer Firefox à accepter le TLS1.1 et inférieur

Chez Mozilla about:config

security.tls.version.min
1 => TLS 1.0
2 => TLS 1.1
3 => TLS 1.2 (actuellement par défaut)

10 Apr 2021, 00:00

Tester le débit entre 2 machines sous Linux

Source

Sur les 2 machines :
apt install iperf

Sur le serveur :
iperf -s

Sur le client :
iperf -c SERVER_IP

Par défaut, cela transmet du client vers le serveur (upload). On peut inverser le sens (download) avec le flag -R.
Par défaut, le test dure 10s. Ce temps peut se controler avec le paramètre -t num_sec.
On peut changer le port par défaut (5201) avec -p 5202.

29 Oct 2020, 00:00

Notes sur PfSense

Interfaces

Les interfaces sont des configurations réseau que l’on peut associer aux ports physiques du routeur, dans Interfaces -> Assignments.

Dans Interfaces -> iface_name, on peut configurer l’interface en question : lui donner un nom explicite, son adresse IP, et la passerelle qui lui est accessible.

Passerelles

Les passerelles sont à configurer individuellement, dans System -> Routing -> Gateway. La petite terre indique l’interface actuellement par défaut (peut changer en fonction de l’état des liens). Un double-clic sur une passerelle permet de la configurer.

On donne l’interface par laquelle cette passerelle est accessible (par exemple WAN), on donne un nom (que l’on choisit) à cette passerelle, on entre l’IP sur laquelle elle est accessible (par exemple 192.168.1.1), et une adresse IP de monitoring (qui sera pinguée régulièrement, pour s’assurer que cette connexion est toujours vivante ; par exemple 8.8.8.8).

⚠ l’IP de monitoring ne sera jamais accessible depuis une autre interface du routeur PfSense. Faire attention de ne pas bloquer les serveurs DNS d’une interface.

⚠ Pour une connexion qui doit être utilisée même si elle est instable (par exemple une connexion basse qualité de secours, préférable à une absence de connexion), je conseille de cocher Disable Gateway Monitoring, afin qu’elle soit toujours considérée vivante.

En cliquant sur Display Advanced, on peut définir les seuils à partir desquels la connexion est considérée comme perdue.

DNS

Si le routeur est défini comme serveur DNS pour les clients, il faut configurer sa résolution DNS. Pour ça, on va dans System -> General Setup. Dans le cas de multi-WAN, il est nécessaire d’avoir au moins 1 serveur DNS par passerelle.

Par souci de simplicité, je choisis le serveur DNS de cette passerelle comme adresse de monitoring pour cette passerelle. Ainsi, si c’est le serveur DNS qui tombe (empêchant la navigation internet), la connexion sera considérée comme défectueuse, et le routeur basculera sur une autre connexion.

Dual WAN en failover

Dans System -> Routing -> Gateway Groups, on ajoute un groupe de passerelle. Il faut lui donner un nom (par exemple “Gateways_Failover”).

Dans Gateway Priority, on donne une priorité à chaque passerelle existante. Si “Never”, elle ne sera pas utilisée dans ce groupe de passerelles. Toutes les passerelles d’un même Tier seront utilisées en même temps, en commençant par le Tier 1. Si les conditions de ligne défectueuse (perte de paquet, forte latence ou lien coupé) se présentent, le routeur basculera sur la/les passerelles du Tier 2, etc. (C’est aussi en mettant plusieurs passerelles dans le même Tier que l’on peut faire de l’équilibrage de charge, dont on peut affiner la forme en modifiant le poids de chaque passerelle.)
Pour Virtual IP, on laisse généralement “Interface adress”. Il peut être utile de faire différemment si on a un cluster de routeurs PfSense redondants, pour simuler une même interface entre tous les routeurs.
Le Trigger Level permet de choisir l’évenement qui déclenche un basculement vers le Tier suivant (perte de paquets, haute latence, lien coupé). Le détail des seuils peut être reglé pour chaque passerelle individuellement (voir ci-dessus).

Dans System -> Routing, une fois le groupe de passerelle créé, on peut le définir comme passerelle par défaut, pour IPv4 et/ou IPv6.
NOTE : il semble que ce ne fut pas possible pendant longtemps. Dans le cas où ce choix ne serait pas disponible, il faut aller dans Firewall -> Rules, aller dans l’onglet LAN (car le choix de passerelle s’applique aux paquets qui se présentent sur l’interface LAN, dans le but de sortir sur une autre interface), éditer chaque règle pertinente (par défaut uniquement une règle pour IPv4 et une règle pour IPv6 qui autorise tout le trafic vers les autres interfaces), cliquer Display Advanced et définir la Gateway sur le groupe précedemment créé. C’est aussi la solution à choisir pour un filtrage plus granulaire.

Diagnostic

Pour voir l’état actuel des passerelles, on peut aller dans Status -> Gateways. Ceci donne l’état de chaque passerelle, individuellement.
On peut aller dans l’onglet Gateway groups pour voir l’état du groupe de passerelle.

20 Jun 2020, 00:00

Nmap

Ping scan : nmap -sn 10.0.0.1-255

Nmap est plus efficace lorsqu’il est lancé avec les droits root, car il peut aller directement consulter la table ARP, alors que sans les droits root, il tente la connection sur un/des ports courants.

https://security.stackexchange.com/questions/74493/different-results-using-nmap-with-without-sudo

Parfois, même ainsi, tous les appareils en ligne ne sont pas listés (genre 10 resultats maximum). Il semble que passer l’option -v pour augmenter la verbosité aide à les visualiser tous.

Pour n’avoir que les IP affichées, on peut poser ça après notre commande nmap : | grep report | awk '{print $5}'

21 Dec 2019, 00:00

Compiler et installer inadyn sous Debian Buster

J’ai besoin du logiciel inadyn pour mettre à jours mes enregistrements dyndns chez OVH.
La version de Inadyn packagée par Debian est trop ancienne, et non compatible avec OVH, contrairement aux versions plus récentes dispos sur github.

Compilation et installation

## Prérequis
sudo aptitude install wget libssl-dev libgnutls28-dev autoconf libconfuse2 libconfuse-dev checkinstall pkg-config

## Répertoires nécessaires pour checkinstall
sudo mkdir /usr/local/share/doc
sudo mkdir /usr/local/share/man
sudo mkdir /usr/local/share/doc/inadyn


## libite
wget -c https://github.com/troglobit/libite/releases/download/v2.1.0/libite-2.1.0.tar.xz
tar -xvf libite-2.1.0.tar.xz
cd libite-2.1.0/
./configure
make -j5
sudo checkinstall ## Valider avec entrée plusieurs fois ; modifier les valeurs si souhaité
sudo dpkg -i libite_2.1.0-1_amd64.deb
sudo ldconfig	


## inadyn
cd ..
wget -c https://github.com/troglobit/inadyn/releases/download/v2.5/inadyn-2.5.tar.xz
tar -xvf inadyn-2.5.tar.xz
cd inadyn-2.5/
./configure
make
checkinstall
sudo dpkg -i inadyn_2.5-1_amd64.deb

Fichier de conf

/etc/inadyn.conf

provider default@ovh.com {
    ssl         = true
    username    = monsite-admin
    password    = superpassword
    hostname    = {domaine.monsite.fr}
    checkip-command = /root/.local/bin/scripts/checkIP.sh
}

provider default@ovh.com:2 {
    ssl         = true
    username    = monsite-admin
    password    = superpassword
    hostname    = {autredomaine.monsite.fr}
    checkip-command = /root/.local/bin/scripts/checkIP.sh
}

Pour que les utilisateurs du serveur ne puissent lire les identifiants :

sudo chmod 600 /etc/inadyn.conf

On peut ajouter autant de hostname qu’on veut, en changeant le chiffre après default@ovh.com:.
Les username/password doivent être définis sur l’interface OVH.

Script de reconnaissance d’IP (checkIP.sh)

#!/bin/sh
curl ipecho.net/plain; echo

Chemin à mettre en concordance avec inadyn.conf.
Ne pas oublier de sudo chmod +x checkIP.sh.

Crontab

Je préfère lancer le programme ponctuellement et régulièrement via cron que de le laisser tourner en demon.
Voici mon entrée dans le crontab pour ce faire :

# Lance inadyn toutes les 5 minutes
*/5 * * * * /usr/local/sbin/inadyn -1 -f /etc/inadyn.conf > /dev/null 2>&1