Configuration d'un SBC pour 3CX
Liens utiles :
iso Raspbian : https://downloads.raspberrypi.com/raspios_lite_armhf/images/raspios_lite_armhf-2024-03-15/2024-03-15-raspios-bookworm-armhf-lite.img.xz
Raspberry Pi Imager : https://downloads.raspberrypi.org/imager/imager_latest.exe
Advanced IP Scanner : https://www.advanced-ip-scanner.com/fr/download/
PuTTY (version portable) : https://the.earth.li/~sgtatham/putty/latest/w64/putty.exe
Préparez l'ensemble de votre matériel :

1 - Commencez par fixer vos refroidisseurs
2 - Fixez les patins sous le boitier
3 - Insérez ensuite le RaspberryPI dans le boitier AVANT de connecter les câbles et d'insérer la carte MicroSD (sauf dans le cas d'un Raspberry Pi Zero, pour lequel on met la carte MicroSD avant de mettre le Raspberry dans le boitier)
4 - Branchez l'alimentation UNIQUEMENT en sortie du Raspberry, sans l'alimenter pour l'instant
5 - Branchez le câble HDMI si vous voulez afficher l'interface de votre RaspberryPI sur un écran externe. Vous pouvez également brancher un clavier USB si vous voulez taper les commandes directement dessus.
6 - Connectez votre carte MicroSD au PC (via un adaptateur si vous n'avez pas de port SD/MicroSD)

7 - Téléchargez l'image Raspbian sur votre PC et extrayez l'IMG du zip

Téléchargez Raspberry Pi Imager, installez le, puis lancez le.
Vous pouvez alors CHOISIR LE MODELE

Sélectionnez bien le modèle correspondant

A l'invite Système d'exploitation, choisissez Use custom

Sélectionnez le fichier IMG précédemment extrait, puis Open

A l'invite Stockage, sélectionnez bien votre carte MicroSD

Enfin, cliquez sur Suivant

A l'invite Utiliser la personnalisation de l'OS, Sélectionnez MODIFIER REGLAGES

Sur la page de personnalisation, dans l'onglet GENERAL
Validez l'ensemble avec ENREGISTRER

Dans l'onglet SERVICES, activez bien le SSH.
Validez l'ensemble de la configuration en cliquant sur ENREGISTRER

Enfin, a l'invite Utiliser la personnalisation de l'OS ?, répondez OUI

Au message d'avertissement, répondez encore OUI.
Patientez, votre carte MicroSD est en train d'être préparée.

Une fois l'écriture de la carte réussie,
vous pouvez cliquer sur CONTINUER,
Ejectez votre carte,
Insérez la dans le Raspberry,
vous pouvez maintenant l'allumer.

Pour les manipulations suivantes, vous pouvez :

Une fois sur l'invite de commande, logguez-vous avec l'utilisateur ajouté plus tôt,
puis saisissez la commande suivante :
sudo nano /etc/ssh/sshd_config

Dans le fichier sshd_config ouvert,
Remplacez le port 22 par le port 2223 (retirez le # devant s'il est présent) ,
Sauvegardez. ( CONTROL X puis SAVE )

Vous pouvez entrer la nouvelle commande :
sudo nmtui

On rentre dans l'utilitaire de configuration des interfaces réseaux
Choisir "Edit a connection"

Sur l'écran suivant, choisir la partie Ethernet

Remplir de la manière suivante :
ATTENTION ici l'adresse de passerelle (Gateway) est 192.168.1.1
Une fois terminé, allez sur OK

On va ensuite configurer l'interface sans fils (Wi-Fi)

Remplir une nouvelle fois de la manière suivante :
ATTENTION ici l'adresse de passerelle (Gateway) est 192.168.1.254
Une fois terminé, allez sur OK

Une fois terminé, il ne reste plus qu'a aller sur Quit

on va ensuite programmer un redémarrage du SBC tous les jours a 3h du matin.
Lancer l'éditeur crontab, si il demande, choisissez l'éditeur nano [1]
sudo crontab -e
rentrez la ligne suivante a la fin du fichier
0 3 * * * /sbin/shutdown -r now
Faire CTRL + X puis Y puis ENTREE pour sauver
Enfin, à l'invite de commande, vous pouvez redémarrer le RaspberryPI avec la commande suivante :
sudo reboot

Connectez vous sur la console d'admin de 3CX.
Dans le menu Trunks SIP,
faites +Ajouter SBC

Le nom correspond au nom d'hôte de votre Raspberry,
Validez avec OK.

Notez ici l'URL de provisioning,
et la CLE D'ID authentification,
qui vous serviront bientôt.

Votre Raspberry a eu le temps de redémarrer,
reprenez la main dessus (attention, si vous passez par PuTTy vous avez changé son adresse et son port SSH !)
une fois connecté sur le RaspberryPI, Saisissez la commande suivante :
sudo bash -c "$(wget -qO- http://downloads-global.3cx.com/downloads/sbc/3cxsbc.zip)"

Si la dernière commande échoue, il va être nécessaire d'éditer le Zip avant de le lancer
Pour cela rendez vous dans le chapitre en fin de procédure (Annexe), puis revenez ici ensuite.
Une fois la dernière commande exécutée vous arrivez sur cet écran,
faites OK.

En bas de page, faites Accept

Saisissez maintenant l'URL de provisionning fournie plus tôt sur 3CX
Faites OK

De même, saisissez maintenant la CLE D'ID également fournie plus tôt
Validez avec OK

Votre SBC est en train de se configurer et va se connecter à 3CX

Votre SBC est maintenant configuré et connecté, validez par OK

Vous pouvez vérifier son état sur la console d'admin de 3CX dans la partie Trunks SIP

Aller sur le site de LinkT et faire un ticket sur la ligne en question
Texte a insérer en demande :
Bonjour,
Merci de bien vouloir ajouter les règles de nat suivantes :
ip nat inside source static tcp 192.168.1.151 2223 interface Dialer1 50022
ip nat inside source static tcp 192.168.1.150 80 interface Dialer1 50080
ip nat inside source static tcp 192.168.1.150 443 interface Dialer1 50443Bien à vous
Dans ce cas, il va être nécessaire d'éditer le Zip avant de le lancer.
Commencez par le télécharger le fichier avec la commande :
wget http://downloads-global.3cx.com/downloads/sbc/3cxsbc.zip

Patientez jusqu'au téléchargement complet.

Ouvrez le fichier téléchargé qui est en fait un simple texte avec l'éditeur Nano, comme suit :
nano 3cxsbc.zip

Faites alors une recherche (Ctrl + W) du mot download

localisez la ligne tcxurl avec l'adresse http://downloads-global.3cx.com
et remplacez la par (passage de http en https) :
https://downloads-global.3cx.com

Quittez l'éditeur avec Crtl + X,
validez la modification du fichier avec O pour Oui.

Et enfin Entrée pour l'écrire.

Lancez la commande pour exécuter le fichier
sudo bash 3cxsbc.zip

Retournez au chapitre 5 pour finaliser l'installation
Si besoin de changer le lien de provisioning de la VM 3cx
connectez vous sur le SBC et éditez le fichier suivant :
sudo nano /etc/3cxsbc.conf
La partie suivante contient toutes les infos modifiables du SBC
