Installer les certificat SSL et changer les ports.
Sécurisation SSL et changement des ports
Objectif de sécurité
Nous allons générer des certificats auto-signés pour chiffrer vos données. En parallèle, nous déplacerons les services Apache (Web) et SSH/SFTP sur des ports personnalisés pour libérer les ports standards (80/443) et limiter les tentatives d'intrusion.
1. Configuration du SSL pour Apache
La première étape consiste à activer le module SSL et à générer votre certificat de sécurité.
A. Activer les modules :
sudo a2enmod ssl sudo a2ensite default-ssl B. Créer le certificat auto-signé : Cette commande génère une clé de 2048 bits valable 1 an.
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt Remplissez les informations demandées. Pour "Common Name", utilisez l'adresse IP de votre Raspberry Pi.
2. Personnalisation des ports Apache
Nous allons maintenant dire à Apache d'écouter sur les ports 8080 (HTTP) et 9443 (HTTPS).
A. Modifier le fichier ports.conf :
sudo nano /etc/apache2/ports.conf Remplacez Listen 80 par Listen 8080 et Listen 443 par Listen 9443.

B. Modifier le VirtualHost SSL :
sudo nano /etc/apache2/sites-enabled/default-ssl.conf Changez la ligne <VirtualHost _default_:443> par <VirtualHost _default_:9443>.
C. Redémarrer pour appliquer :
sudo apache2ctl configtest sudo systemctl restart apache2 Connexion sécurisée : https://192.168.1.xxx:9443
3. Sécurisation du serveur FTP (FTPS)
Nous appliquons le même principe de chiffrement pour vos transferts de fichiers.
A. Générer le certificat FTP :
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/certs/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem B. Configurer vsftpd : Ajoutez les options SSL dans /etc/vsftpd.conf.
ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES ssl_tlsv1=YES
sudo systemctl restart vsftpd 4. Changer le port SSH/SFTP (Port 2222)
Le port 22 est la cible prioritaire des attaques. Nous allons le déplacer sur le port 2222.
sudo nano /etc/ssh/sshd_config Cherchez #Port 22, retirez le # et remplacez par Port 2222. Puis redémarrez :
sudo systemctl restart ssh Ne fermez pas votre console actuelle avant d'avoir testé la connexion sur une nouvelle fenêtre avec : ssh -p 2222 user@IP. En cas d'erreur, vous pourrez corriger sans être bloqué dehors.