Debian_PostInstall/script.sh
2024-09-24 21:48:03 +02:00

101 lines
3.4 KiB
Bash

#!/bin/bash
################# CONFIGURATION
# Définissez la clé publique RSA
cle_publique="CLE rsa public"
# Définissez l'utilisateur
utilisateur="Utilisateur"
################
# Vérifie si l'utilisateur est root (gid 0)
if [ "$(id -u)" -eq 0 ]; then
echo "Le script est en cours d'exécution en tant que root."
# Placez ici les commandes que vous souhaitez exécuter en tant que root
else
echo "Ce script doit être exécuté en tant que root."
exit 1
fi
# Ajouter le chemin au fichier /root/.bashrc
echo 'export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin' >> /root/.bashrc
source /root/.bashrc
# Commenter la première ligne du fichier /etc/apt/sources.list
sed -i '1s/^/#/' /etc/apt/sources.list
echo "Première ligne de /etc/apt/sources.list commentée"
echo "Optimisation du démarrage avec GRUB"
sed -i '7s/.*/GRUB_TIMEOUT=0/' /etc/default/grub
update-grub > /dev/null 2>&1
echo "Mise à jour de la distribution"
# Mettre à jour la liste des paquets
apt update > /dev/null 2>&1
# Update
apt ugrade -y > /dev/null 2>&1
echo "Installation de : Vim, Python3, UFW, Nano, Curl, Wget, Sudo et Nano"
# Installer les paquets Vim, UFW, Nano, Curl et Wget
apt install -y vim python3 ufw nano curl wget nano sudo > /dev/null 2>&1
echo "Ajouter utilisateur dans sudoers"
# Ajouter utilisateur dans sudoers
echo "$utilisateur ALL=(ALL:ALL) ALL" | tee -a /etc/sudoers > /dev/null 2>&1
echo "Installation de node exporter"
curl -s https://api.github.com/repos/prometheus/node_exporter/releases/latest|grep browser_download_url|grep linux-amd64|cut -d '"' -f 4|wget -qi - > /dev/null 2>&1
mkdir /etc/prometheus > /dev/null 2>&1
tar -xvf node_exporter-*.linux-amd64.tar.gz > /dev/null 2>&1
mv node_exporter-*.linux-amd64/ /etc/prometheus/node_exporter > /dev/null 2>&1
cat <<EOF > /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
ExecStart=/etc/prometheus/node_exporter/node_exporter
[Install]
WantedBy=default.target
EOF
useradd --no-create-home --shell /bin/false prometheus > /dev/null 2>&1
chown -R prometheus:prometheus /etc/prometheus/node_exporter > /dev/null 2>&1
systemctl daemon-reload > /dev/null 2>&1
systemctl enable --now node_exporter > /dev/null 2>&1
#Définition de UFW
echo "Configuration du firewall"
echo "y" | ufw enable > /dev/null 2>&1
ufw allow 22 > /dev/null 2>&1
ufw allow 9100 > /dev/null 2>&1
ufw reload > /dev/null 2>&1
echo "Installation de la clé RSA"
# Ajoutez la clé publique au fichier authorized_keys
mkdir /home/$utilisateur/.ssh
chown -R $utilisateur:$utilisateur /home/$utilisateur/.ssh
chmod 700 /home/$utilisateur/.ssh
echo "$cle_publique" >> /home/$utilisateur/.ssh/authorized_keys
chown -R $utilisateur:$utilisateur /home/$utilisateur/.ssh/authorized_keys
chmod 600 /home/$utilisateur/.ssh/authorized_keys
echo "Configuration de ssh"
# Ajouter "PasswordAuthentication no" à la ligne 57 de /etc/ssh/sshd_config
sed -i '57s/.*/PasswordAuthentication no/' /etc/ssh/sshd_config > /dev/null 2>&1
systemctl restart sshd > /dev/null 2>&1
echo "Installation des agents XenServer"
curl -s https://api.github.com/repos/xenserver/xe-guest-utilities/releases/latest|grep browser_download_url|grep amd64|cut -d '"' -f 4|wget -qi - > /dev/null 2>&1
apt install -f ./xe-guest-utilities_*_amd64.deb > /dev/null 2>&1
echo "Suppression des fichiers et dossier de configuration"
rm -rf xe-guest-utilities_*_amd64.deb
rm -rf node_exporter-*.linux-amd64.tar.gz