Script création utilisateur et modification ssh selinux firewalld |
Article original Publié le : 05 avril 2021 Mise a jour le : – |
Un vieux script interactif que j’utilisais pour la préparation de vm dans mon labs sous Centos 7
- Création d’un compte utilisateur et ajout dans le groupe sudoers
- Désactivation du compte root en ssh
- Changement du port ssh
- Changement des permissions selinux
- Ajout du nouveau port et de l’ip publique autorisé à se connecter sous FirewallD
- Redémarrage du daemon ssh et kill de la session
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
#!/bin/bash # Récupération de paquet nécessaire echo "installation de paquet nécessaire" yum install -y net-tools perl policycoreutils-python # Création de l'utilisateur echo read -p "Entrer un nom d'utilisateur : " utilisateur read -s -p "Enter un mot de passe : " mot2passe echo read -p "Entrer un port ssh : " ssh echo read -p "Entrer l'ip publique autorisé en ssh : " ippub pass=$(perl -e 'print crypt($ARGV[0], "mot2passe")' $mot2passe) useradd -m -p "$pass" "$utilisateur" echo # Ajout dans le groupe sudoers echo "$utilisateur ALL=(ALL) ALL" >> /etc/sudoers # Ajout du nouveau port ssh pour selinux semanage port -a -t ssh_port_t -p tcp $ssh # Conf ssh sed -i 's/Port 22//g' /etc/ssh/sshd_config sed -i 's/PermitRootLogin yes//g' /etc/ssh/sshd_config echo "Port $ssh" >> /etc/ssh/sshd_config echo "Allowusers $utilisateur" >> /etc/ssh/sshd_config echo "PermitRootLogin no" >> /etc/ssh/sshd_config # Restriction de ou des ip's publiques dans firewalld firewall-cmd --permanent --zone=internal --add-source=$ippub/32 firewall-cmd --permanent --zone=internal --add-port=$ssh/tcp firewall-cmd --reload # Message de déconnexion IP=$(ifconfig eth0 | awk '/inet / {print $2}' | cut -d ':' -f2) echo echo "Compte créer" echo "Cette session va se déconnecter, le compte root va être désactivé en ssh" echo "Seule l'adresse $ippub peut se connecter a cette machine" echo echo "Se connecter maintenant avec [ $utilisateur@$IP -p$ssh ]" echo # Redémarrage ssh et kill de la session systemctl restart sshd kill -9 $PPID |