#!/bin/bash # Vérifier si le script est exécuté avec les privilèges root if [[ $EUID -ne 0 ]]; then echo "Ce script doit être exécuté en tant que root" exit 1 fi # Variables SSH_DIR="/home/superman/.ssh" AUTHORIZED_KEYS="$SSH_DIR/authorized_keys" SSHD_CONFIG="/etc/ssh/sshd_config" NEW_SSHD_CONFIG="/etc/ssh/sshd_config_new" # Clé SSH à ajouter (remplace la clé ci-dessous par la tienne) SSH_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfymQEcnZ0mzIGOWtUbj6DBIZxkGESkuCzDTRYXJ4Zc7Kith446/r05KLDA/AoOI5H63RKtiNZ4hnbAxsODz1k94WhkLqtXuvGChUGn9GhIT/DMtSN2kTBpQ8BwFZdgSARpqzGY/RztOBu9P/rZ5Wdlwpo3QhySnCMvuT4/WTyS1gpwGCSRnPbdbQja3Ol3OlrkYnv1PfJHcbZyrFb23XhL10extvOdF8iO7raltCgQFFluX7rkQgJGERiCyS7JrhBzVAzRM1hIYErD7fK6abJ4g1OXz/TU05xlMNlgLIn+0cNjnyZEl0WH3ZeiHt2XHHdkbZSTkbzR7LXG8OGifpFqF4vlb/K4GDaMQpydwb0M9q41cWT+c/WjOudrJtImCxM9OqifOtzqz3+Dirz/MLCbQcDxcgo83pqbS/Q9w/9yLzGfSeKb6m3Yr2WRU4WsFjSD/OSSTX6EJKML4PcGI6qxqO3g9wmrb9enWr3hij01apanRmyVpmix1m3UW3yoE8t8978b7BQJunjnizrOqOgElVMgNelfJAqQPMJBfIr0Gl+pS3avBHFwxaQLbT8Y5Ci0pqWgfVOCgz/SeSt2uOt5VlmIQRT5GNrXDrpj9LMPLKhMui+ljajN07lbAyTaFSgmUhhUbY3QhXnIaeKEGyKYDT8WXX1bDRA4ZQ/haoj7/ekQ==" # Créer le dossier .ssh si nécessaire if [ ! -d "$SSH_DIR" ]; then mkdir -p "$SSH_DIR" chown superman:superman "$SSH_DIR" chmod 700 "$SSH_DIR" echo "Répertoire $SSH_DIR créé." fi # Ajouter la clé SSH dans le fichier authorized_keys echo "$SSH_KEY" >> "$AUTHORIZED_KEYS" chown superman:superman "$AUTHORIZED_KEYS" chmod 600 "$AUTHORIZED_KEYS" echo "Clé SSH ajoutée à $AUTHORIZED_KEYS." # Renommer le fichier sshd_config existant if [ -f "$SSHD_CONFIG" ]; then mv "$SSHD_CONFIG" "/etc/ssh/sshd_config_backup" echo "Le fichier sshd_config a été renommé en sshd_config_backup." fi # Créer un nouveau fichier sshd_config avec les paramètres spécifiés cat < $NEW_SSHD_CONFIG # Configuration SSH personnalisée LoginGraceTime 2m PermitRootLogin no PubkeyAuthentication yes PasswordAuthentication no PermitEmptyPasswords no EOL # Remplacer l'ancien fichier sshd_config par le nouveau mv $NEW_SSHD_CONFIG $SSHD_CONFIG echo "Nouveau fichier sshd_config créé avec succès." # Redémarrer le service SSH pour appliquer les changements echo "Redémarrage du service SSH..." systemctl restart ssh # Vérification de l'état du service SSH if systemctl status ssh | grep -q "active (running)"; then echo "Le service SSH a été redémarré avec succès." else echo "Le redémarrage du service SSH a échoué." fi