Perso 3 - votre propre serveur
Perso (version 3) est un espace personnel proposé par ARISE pour vous permettre d'héberger un site internet, compiler des projets ou encore d'exécuter du code dans un environnement linux.
Se connecter
Pour vous connecter en SSH à perso, exécutez cette commande dans n'importe quel terminal :
ssh ARISEID@perso3.iiens.neten remplaçant
ARISEIDpar votre AriseID (nom2042par exemple).Si vous n’avez pas de terminal à votre disposition, vous pouvez vous y connecter via stages.iiens.net ou perso.iiens.net/shell
The authenticity of host 'perso3.iiens.net (193.54.225.88)' can't be established. ECDSA key fingerprint is SHA256:UJ+9C9yaSHrPqUgY9igPSSq05Lc3aCVdjtkem989xzQ. Are you sure you want to continue connecting (yes/no/[fingerprint])?Ici, tapez
yespour valider l'empreinte du serveur.Warning: Permanently added 'perso3.iiens.net,193.54.225.88' (ECDSA) to the list of known hosts. nom2042@perso3.iiens.net's password:Tapez votre mot de passe.
C'est tout à fait normal si rien ne s'affiche lorsque vous tapez, c'est une sécurité de Linux.
Vous voilà connecté 🎉, avec un petit rappel sur votre quota de stockage. Plus d'informations dans la partie quotas.
* Utilisation disque : 7.29G / 50.00G
* Espace libre : 42.71G
nom2042@perso:~$Clé SSH
Si vous en avez marre de taper votre mot de passe à rallonge ? Eh bien il est possible d'utiliser une clé SSH pour s'authentifier. Il existe un /tutos/ssh/cles_ssh à ce sujet, mais pour résumer :
Tapez la commande suivante depuis votre ordinateur, en gardant les options par défaut :
ssh-keygenEn laissant le champ passphrase vide (touche entrée), vous n'aurez plus à taper de mot de passe. Cela reste sécurisé, car vous êtes le seul possesseur de la clé privée sur votre ordinateur.
Cependant, garder un mot de passe possède un certain intérêt : l'authentification à deux facteurs.
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa2
Your public key has been saved in /home/user/.ssh/id_rsa2.pub
The key fingerprint is:
SHA256:U5Kr55fkF/Zd4G83qxyu2jJ4GJ9dWU0e5TD6Is+nWqg user@laptop
The key's randomart image is:
+---[RSA 3072]----+
| o o|
| . . =.|
| o . . o+|
| + ...o|
| S . ..+. |
| o ..=o+. .|
| . *o+o=+.o.|
| = B=o+oo.=|
| Eo==o+.o+|
+----[SHA256]-----+Pour ajouter la clé fraichement générée sur perso : (en supposant que la clé soit ici : ~/.ssh/id_rsa.pub)
ssh-copy-id -i ~/.ssh/id_rsa.pub ARISEID@perso3.iiens.netFélicitation, vous pouvez maintenant vous connecter sans mot de passe.
Config SSH
Pour te simplifier la vie
On peut encore se simplifier la vie en ne tapant que ssh perso. Comment réaliser ce tour de passe-passe ? Il suffit de modifier le fichier ~/.ssh/config (le créer s'il n'existe pas).
nano ~/.ssh/config # ou vimPuis de rajouter ces quelques lignes :
Host perso
HostName perso3.iiens.net
User ARISEIDVoilà, vous êtes opérationnel pour vous connecter simplement à perso.
Pour l’authentification
Le fichier de configuration SSH sert aussi pour l’authentification en SSH à d’autres services (autres que par la commande SSH).
Cette configuration vous sera indispensable dans votre perso, pour vous connecter à un git par exemple.
Vous pouvez ainsi y configurer la clé utilisée pour un service spécifique :
Host <adresse_du_service> # (Exemple : git.iiens.net)
IdentityFile ~/.ssh/<fichier_clé_privée>Vous pouvez écrire * à la place du Host pour une configuration par défaut et ajouter plusieurs IdentityFile.
Transférer des fichiers
Il existe deux manières de transférer des fichiers entre son perso et son ordinateur personnel
SCP
La commande scp fonctionne de la même manière que cp, sauf que l’on peut spécifier des chemins sur un ordi distant aussi avec la syntaxe <ariseid>@perso.iiens.net:<chemin-vers-fichier>. Voici des exemples :
#
scp mon-fichier.truc nom2042@perso.iiens.net:destination.machFTP (File transfer protocol)
Vous pouvez également vous connecter à perso en FTP (plus précisément SFTP) pour transférer des fichiers plus facilement depuis votre PC.
Pour plus de détails, lire le /services_arise/ftp.
Héberger un site web
Une des fonctionnalités principales de perso est l'hébergement de sites web. Il y a plusieurs façons de faire, en fonction de la technologie que vous souhaitez utiliser. Si vous débutez, référez-vous à la section HTML statique.
PHP / HTML statique
Que ce soit pour du php ou du web classique, tous les fichiers devront se trouver dans le dossier ~/html/.
Assurez-vous que les permissions sur ce dossier sont bonnes ! Pour le vérifier :```bash
ls ~/html -ld
drwx------ 5 nom2042 eleves 9 Feb 6 2026 /home/users/2042/nom2042/htmlSi les permissions ne sont pas `drwx--x---`, alors exécutez la commande suivante :
chmod a=,u=rwx,g=x ~/htmlVous pouvez ensuite créer index.html ou index.php et commencer à développer votre site.
Vous pouvez demander à Arise de changer votre dossier racine web (le ~/html/), pour par exemple héberger une appli PHP sans exposer les fichiers PHP directement dans le web (type Laravel par exemple)
Reverse proxy (Node, Java, Python, ...)
Dès l'instant où vous développez dans d'autres langages, votre serveur web fonctionnera en autonomie et il faut pouvoir le relier au serveur web de perso.
Si votre site écoute sur un port pour pouvoir fonctionner, c'est que vous avez besoin d'un reverse proxy.
Pour cela, il faut l'intervention manuelle d'un ariser. Demandez donc au bureau ou sur arise@iiens.net.
Une fois l'intervention réalisée, configurez votre serveur pour qu'il écoute sur le port 1443. Ce port n'est pas modifiable.
Vous ne pouvez pas avoir à la fois un site statique (php, html) et un site en reverse proxy. Cependant, il existe un compromis : le préfixe statique.
Fichiers statiques
Si vous souhaitez mettre à disposition sur votre perso des fichiers (photos, code, etc.) malgré le reverse proxy, cela peut s'avérer être une tâche compliquée.
Vous pouvez demander un préfixe statique pour cela. Par défaut, ce préfixe est static. Si vous choisissez foo, alors vos fichiers ~/foo seront accessibles à l'adresse https://nom.iiens.net/foo.
Logs
Les logs de votre site web sont disponibles dans le dossier $WEBLOG_DIR. Pour y accéder :
cd $WEBLOG_DIRVous pourrez y retrouver 4 fichiers :
apache_access.log apache_error.log php_access.log php_error.logapache_access.log recense tous les logs d'accès à votre site, et apache_error.log toutes les erreurs rencontrées.
PHP
Si votre site utilise la configuration PHP par défaut (sans reverse proxy), vous bénéficierez en plus des logs PHP. (php_access.log et php_error.log)
Reverse proxy
Si le reverse proxy a été configuré sur votre compte, alors vous devrez gérer vous-même les logs en fonction du framework et du langage utilisé.
Exécuter des commandes au redémarrage du serveur
ARISE peut être amené à redémarrer le serveur de perso, arrêtant tous les processus qui tournaient sur votre compte (site internet en reverse proxy, bot, tmux, etc.)
Pour y remédier et relancer toutes vos tâches au plus vite, vous pouvez utiliser le script startup.sh, présent à la racine de votre home. Si le fichier n'existe pas, il suffit de le créer :
echo -e '#!/bin/bash\n\n# Scripts à lancer au redémarrage de la machine' > ~/startup.sh
chmod +x ~/startup.shVous pouvez ensuite y mettre toutes les commandes à lancer :
#!/bin/bash
echo "Le serveur a redémarré !" >> logs.txtQuotas
Disque
Le quota par défaut est de 50 Go. Il peut être augmenté par simple demande au bureau d'ARISE si vous utilisez activement votre perso.
RAM
à définir.
CPU
Limite de 500 processus par utilisateur, non modifiable.
Problèmes fréquents
Sockets
Les sockets ne marcheront pas dans votre home, car les fichiers sont sur NFS. Pour résoudre le problème, vous avez accès à un second home dans le dossier /var.
Attention, le quota de ce dossier est de 120Mo.
Pour y accéder :
cd $VAR_HOMEPar exemple, pour PM2 la ligne suivante est présente dans le .bashrc global pour que les sockets et donc que le daemon fonctionnent.
export PM2_HOME="$VAR_HOME/.pm2"Disk quota exceeded (PHP)
Si vous rencontrez une de ces erreurs, c'est sûrement que votre dossier $VAR_HOME est plein.
PHP Warning: Unknown: write failed: Disk quota exceeded (122) in Unknown on line 0
PHP Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/sessions) in Unknown on line 0Il faudra alors supprimer quelques fichiers.