# Se connecter en root
$ ssh root@server_ip
# Changer le mot de passe root
$ passwd root
# Ajouter un utilisateur et remplir ses infos
$ adduser hb
# Ajouter l'utilisateur dans le groupe sudo
$ usermod -aG sudo hb
# Changer d'utilisateur et passer sur l'user hb
$ su hb
# Configurer le firewall : lister les ports contrôlés
$ sudo ufw list
# Autoriser OpenSSH par le firewall
$ sudo ufw allow OpenSSH
# On active le firewall
$ sudo ufw enable
# DEPUIS LE PC (on sort du VPS !!) : on génère une paire de clés RSA
$ ssh-keygen -t rsa -b 4096 -c "mail@gmail.com"
# DEPUIS LE PC : On copie la clé PUBLIQUE ssh
$ cat c:/Users/HB/.ssh/id_rsa.pub
### SOIT depuis une console Unix sur le PC :
$ ssh-copy-id hb@server_ip
### SOIT depuis le serveur distant :
# On se reconnecte au serveur en SSH :
$ ssh hb@server_ip
# On enregistre dans le serveur la clé SSH :
$ mkdir ~/.ssh
$ touch ~/.ssh/authorized_keys
$ vim ~/.ssh/authorized_keys
# COLLEZ la clé SSH copiée avec cat c:/Users....
En étant dans le serveur :
# On met à jour le système
$ sudo apt update && sudo apt upgrade -y
# Installation de Apache
$ sudo apt install apache2
# Mise à jour du firewall
$ sudo ufw allow "Apache Full"
# Installation de MySQL
$ sudo apt install mysql-server
# Sécurisation
$ sudo mysql_secure_installation
# Installation de PHP
$ sudo apt install php libapache2-mod-php php-mysql
# Installation de Composer
$ sudo apt install composer
# Installation de PHP 7.3 en ajoutant un nouveau dépôt contenant php7.3
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install -y php7.3
# Installation de dépendances pour Symfony
$ sudo apt install zip unzip php-zip php-xml
# Installation du projet :
$ cd /var
$ sudo chmod -R 777 www
$ git clone https://github.com/project/SymfonyProject
$ cd SymfonyProject
# Création du .env.local
$ cp .env .env.local
# Édition du .env.local (mise à jour des infos de la BDD par exemple)
$ vim .env.local
## Pour éditer dans vim, appuyez une première fois sur "i".
## Pour quitter vim : Échap, puis ":wq", puis Entrée
# Installation des dépendances du projet :
$ composer install
# Rediriger Apache vers le bon dossier :
$ sudo vim /etc/apache2/sites-available/000-default.conf
### Modifier le dossier DocmentRoot par /var/www/SymfonyProject/public et rajoutez <Document></Document> :
DocumentRoot /var/www/project/public
<Directory /var/www/project/public>
AllowOverride All
Order Allow,Deny
Allow from All
</Directory>
### Le site s'affiche sur l'URL du serveur !
# Ajout du .htaccess pour l'url-rewriting (faire marcher les liens)
$ composer require symfony/apache-pack
# Relancer Apache
$ sudo service apache2 reload
# Et tout marche!