From 59da0dd62f26209a8a0f8b9031eb98e86923915a Mon Sep 17 00:00:00 2001 From: admin_superman Date: Mon, 16 Sep 2024 08:08:07 +0000 Subject: [PATCH] add ssh --- sshd.sh | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 sshd.sh diff --git a/sshd.sh b/sshd.sh new file mode 100644 index 0000000..f88e3f2 --- /dev/null +++ b/sshd.sh @@ -0,0 +1,61 @@ +#!/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