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.
Pour vous connecter en SSH à perso, exécutez cette commande dans n'importe quel terminal :
ssh ARISEID@perso3.iiens.net
En remplaçant ARISEID
par votre AriseID (nom2042
par exemple)
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 yes
pour 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.
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:~$
Si vous en avez marre de taper votre mot de passe à rallonge, il est possible d'utiliser une clé SSH pour s'authentifier. Il existe un très bon guide à ce sujet, mais pour résumer :
Tapez la commande suivante depuis votre ordinateur, en gardant les options par défaut :
ssh-keygen
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.net
Félicitation, vous pouvez maintenant vous connecter sans mot de passe.
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 vim
Puis de rajouter ces quelques lignes :
Host perso HostName perso3.iiens.net User ARISEID
Voilà, vous êtes opérationnel pour vous connecter simplement à perso.
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 guide sur FTP.
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.
Que ce soit pour du php ou du web classique, tous les fichiers devront se trouver dans le dossier ~/html/
.
ls ~/html -ld
drwx--s--- 13 nom2042 eleves 31 Feb 7 17:37 /home/users/2042/nom2042/html
Si les permissions ne sont pas drwx--s---
, alors exécutez la commande suivante :
chmod 710 ~/html
Vous pouvez ensuite créer index.html
ou index.php
et commencer à développer votre site.
~/html/
), pour par exemple héberger une appli PHP sans exposer les fichiers PHP directement dans le web (type Laravel par exemple)
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.
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.
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
.
Les logs de votre site web sont disponibles dans le dossier $WEBLOG_DIR
. Pour y accéder :
cd $WEBLOG_DIR
Vous pourrez y retrouver 4 fichiers :
apache_access.log apache_error.log php_access.log php_error.log
apache_access.log
recense tous les logs d'accès à votre site, et apache_error.log
toutes les erreurs rencontrées.
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
)
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é.
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.sh
Vous pouvez ensuite y mettre toutes les commandes à lancer :
#!/bin/bash echo "Le serveur a redémarré !" >> logs.txt
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.
à définir.
Limite de 500 processus par utilisateur, non modifiable.
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
.
Pour y accéder :
cd $VAR_HOME
.bashrc
global pour que les sockets et donc que le daemon fonctionnent.
export PM2_HOME="$VAR_HOME/.pm2"
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 0
Il faudra alors supprimer quelques fichiers.
Afin de créer un nouveau compte sur perso3 et de pointer votre site monsite.iiens.net
sur perso3, il faut exécuter la commande:
switch_to_perso3 enable
Pour copier vos fichiers (html, scripts, etc.), ARISE fournit une commande pour copier facilement vos fichiers. Vous pouvez aussi manuellement utiliser scp
ou rsync
.
# Copie tous les fichiers (sauf les dotfiles) transfer_dir * # Copie le dossier html transfer_dir html
Si jamais vous n'arrivez pas à vous connecter en ssh sur perso2, c'est surement que votre client est trop à jour par rapport à la version du serveur. Ajoutez cette ligne à votre fichier de config ssh (~/.ssh/config
) :
Host perso2 HostName perso2.iiens.net PubkeyAcceptedKeyTypes ssh-rsa
Puis :
ssh pouet2042@perso2