grimboite/articles/sys/installation-d-un-nouveau-s...

2.8 KiB
Raw Blame History

Installation et configuration d'un nouveau serveur Scaleway

Préparer la connexion

$ ssh-keygen -t ed25519
$ cat .ssh/id_ed25519.pub

et ajouter cette valeur dans l'interface de Scaleway. Les clés publiques sont prises en considération au boot de la machine. Si une nouvelle clé est ajoutée, il faut redémarrer la machine (ou ajouter la clé manuellement):

$ ssh-copy-id -i ~/.ssh/id_ed25519.pub username@remote-server.org

Sur le serveur (en root)

apt update && apt upgrade
apt install unattended-upgrades needrestart build-essentials
apt install ufw
apt install haveged curl git unzip zip
apt install rkhunter
apt install fail2ban

Et adaptez les valeurs dans le fichier /etc/fail2ban/jail.d/defaults-debian.conf:

[sshd]
enabled = true
bantime = 3600
maxretry = 3
findtime = 600

Configuration d'ufw

Voir ici : https://www.citizenz.info/firewall-utiliser-ufw-sur-scaleway

On change la politique INPUT par défaut à ACCEPT et non plus DROP $ sudo vim /etc/default/ufw DEFAULT_INPUT_POLICY="ACCEPT"

2 - On ajoute une règle DROP-ALL à la fin du fichier suivant, juste avant la ligne finale COMMIT : $ sudo vim /etc/ufw/after.rules -A ufw-reject-input -j DROP

3 - On désactive le logging d'UFW. Scaleway n'aime pas trop : $ sudo ufw logging off

4 - On n'oublie surtout pas d'activer SSH pour pouvoir accéder au serveur : $ sudo ufw allow ssh

5 - enfin on active UFW : $ sudo ufw enable

Et ensuite ici :) https://www.citizenz.info/ufw-un-par-feu-facile-a-utiliser-pour-son-serveur

Configuration nginx

apt install nginx
apt install certbot
systemctl stop nginx
certbot certonly --standalone --standalone-supported-challenges http-01 --email fred@grimbox.be -d grimbox.be -d benjamin.grimbox.be -d cloud.grimbox.be -d nearflagey.be -d alexis.grimbox.be
systemctl start nginx

Le certificat généré se trouvera dans /etc/letsencrypt/live

Configuration Mariadb

Depuis les dépôts de l'éditeur, pour éviter le clash: https://downloads.mariadb.org/mariadb/repositories/#mirror=nucleus&distro=Debian&distro_release=stretch--stretch&version=10.2. A noter qu'on peut rester sur la récupération des clés pour i386, amd64 et ppc64el, même sur un arm v7.

apt install software-properties-common dirmngr
apt install mariadb-server
mysql_secure_installation

PHP 7

# apt install php-common php-pear php-zip php-cli php-curl php-dev php-fpm php-gd php-imap php-i ntl php-json php-mbstring php-mysql php-opcache php-pspell php-readline php-recode php-snmp php-tidy php-xml

Wordpress

# adduser wordpress
# cd /var/www/
# chown -R wordpress:www-data r<>pertoire_du_blog

https://serverfault.com/questions/11659/what-steps-do-you-take-to-secure-a-debian-server