Aller au contenu principal

Oracle Cloud Always Free

Installer la passerelle sur une instance Oracle Cloud gratuite : créer l'instance, ouvrir les ports 80 et 443 aux deux niveaux de filtrage, y faire pointer un domaine, puis lancer la commande d'installation.

L'offre Always Free d'Oracle Cloud vous donne un petit serveur sans coût mensuel. La passerelle y tient à l'aise : elle n'a besoin d'aucun serveur de base de données ni d'aucun autre service, et elle tourne sur les processeurs ARM des instances gratuites.

En résumé, une fois l'instance créée, le domaine pointé vers elle et les ports 80 et 443 ouverts aux deux niveaux :

curl -fsSL https://sms-gateway.araylab.com/install.sh | sudo bash -s -- --domain sms.example.com --yes

Cette page ne couvre que ce qui est propre à Oracle. Le parcours complet (achat, clé, premier compte, activation, appairage) est dans Installation.

La console Oracle change souvent. Les étapes ci-dessous décrivent ce qu'il faut faire, pas les libellés exacts des écrans. Les ressources comprises dans l'offre gratuite et les règles d'Oracle sur les instances inactives sont fixées par Oracle : vérifiez-les sur son site avant de commencer.

Pourquoi cette offre convient

Point Ce que cela signifie pour vous
Processeur ARM (Ampere A1) La passerelle est publiée pour ARM (arm64) comme pour amd64 : Docker choisit la bonne
Peu de mémoire nécessaire La passerelle consomme très peu de mémoire, et rien d'autre ne tourne à côté, hormis un petit serveur HTTPS
Rien à compiler La passerelle est téléchargée prête à l'emploi
Joignable depuis internet Les téléphones se connectent de partout, 4G comprise, en HTTPS

Étape 1 : créer l'instance

Dans la console Oracle, créez une instance de calcul :

  • Forme (shape) : une forme Ampere A1 (ARM), la plus généreuse de l'offre gratuite. Une forme x86 gratuite fonctionne aussi, mais elle est bien plus modeste.
  • Image : un Ubuntu ou un Oracle Linux récent. La passerelle ne dépend pas de la distribution.
  • Clé SSH : conservez la clé proposée à la création, elle vous servira pour vous connecter.

Notez l'adresse IP publique de l'instance.

Étape 2 : ouvrir les ports, à deux niveaux

C'est ce qui coince le plus souvent sur Oracle Cloud : le trafic est filtré deux fois, et un port doit être ouvert aux deux niveaux pour être joignable.

Niveau Quoi ouvrir
Le réseau virtuel (Security List ou Network Security Group) Console Oracle, réseau de l'instance, règles entrantes TCP 80 et 443 depuis 0.0.0.0/0
Le pare-feu de l'instance Sur l'instance elle-même, en SSH TCP 80 et 443

Sur les images Ubuntu d'Oracle, le pare-feu local est généralement fait de règles iptables enregistrées :

sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 443 -j ACCEPT
sudo netfilter-persistent save

Sur Oracle Linux, c'est firewalld :

sudo firewall-cmd --permanent --add-service=http --add-service=https
sudo firewall-cmd --reload

Ce sont des commandes du système d'exploitation, pas de la passerelle. Si un port semble ouvert dans la console mais reste injoignable, c'est presque toujours le pare-feu de l'instance.

N'ouvrez pas le port 8080. En mode domaine, la passerelle n'écoute qu'à l'intérieur de l'instance ; le serveur HTTPS placé devant elle est la seule chose exposée, sur 80 et 443. Le port 80 doit rester ouvert même si tout le trafic utile passe en HTTPS : il sert à obtenir et à renouveler le certificat.

Étape 3 : le nom de domaine

Créez un enregistrement DNS A qui pointe vers l'adresse IP publique de l'instance (un sous-domaine comme sms.votre-entreprise.com suffit), puis vérifiez :

dig +short sms.example.com

La réponse doit être l'adresse IP de l'instance. Un nom de domaine est indispensable ici : sans lui, il ne reste que le mode réseau local, qui suppose des téléphones sur le même réseau que la machine, ce qui n'est jamais le cas pour une instance cloud.

Étape 4 : installer

En SSH sur l'instance (l'utilisateur est ubuntu ou opc selon l'image) :

curl -fsSL https://sms-gateway.araylab.com/install.sh | sudo bash -s -- --domain sms.example.com --yes

Le script installe Docker, vérifie que le domaine pointe vers l'instance, démarre la passerelle et son serveur HTTPS, puis affiche l'adresse du tableau de bord et le code d'installation (sms-gateway setup-code le réaffiche tant qu'aucun compte n'existe). Toutes les options de la commande, avec leurs valeurs par défaut, sont dans Installation.

Vérifiez :

sms-gateway status
curl -fsS https://sms.example.com/health

Ouvrez ensuite https://sms.example.com et poursuivez avec Installation, étape 4.

Si le certificat n'est pas obtenu

Le navigateur signale un certificat invalide, ou le site ne s'ouvre pas en HTTPS. Lisez les journaux du serveur HTTPS :

sms-gateway logs caddy

Dans presque tous les cas, le port 80 est fermé à l'un des deux niveaux de l'étape 2, ou le domaine ne pointe pas encore vers l'instance. Corrigez la cause, puis sms-gateway restart.

Mettre vos données à l'abri

  • Oracle peut récupérer une instance gratuite qu'il juge inactive, selon les conditions de son offre. Gardez une sauvegarde hors de l'instance.
  • La sauvegarde automatique reste sur l'instance. La passerelle sauvegarde sa base chaque nuit, mais sur l'instance elle-même : copiez régulièrement une sauvegarde ailleurs, voir VPS (sauvegarder hors de la machine) et Sauvegarde et restauration.
  • Pour passer plus tard sur une autre machine, voir Changer de serveur.

Récapitulatif des commandes

# Sur l'instance, après avoir ouvert 80 et 443 aux deux niveaux et configuré le DNS
curl -fsSL https://sms-gateway.araylab.com/install.sh | sudo bash -s -- --domain sms.example.com --yes

# Vérifier
sms-gateway status
curl -fsS https://sms.example.com/health
sms-gateway logs

# Plus tard
sms-gateway update
sms-gateway backup

Rechercher dans la documentation

Saisissez quelques mots, puis choisissez une page.