initial commit
This commit is contained in:
14
Readme.md
Normal file
14
Readme.md
Normal file
@@ -0,0 +1,14 @@
|
||||
##### Programmation Shell
|
||||
|
||||
Cible: b3 admin linux
|
||||
|
||||
Durée: 4h en autonomie
|
||||
|
||||
|
||||
Prérequis:
|
||||
|
||||
Support: prog shell
|
||||
|
||||
|
||||
À rendre: le script réalisé
|
||||
|
||||
49
tp_prog_shell_2.md
Normal file
49
tp_prog_shell_2.md
Normal file
@@ -0,0 +1,49 @@
|
||||
##### Programmation Shell
|
||||
|
||||
Objectif: Mettre en place un mécanisme permettant de limiter les actions que peut faire un utilisateur sur un système
|
||||
|
||||
Durée: 4h en autonomie
|
||||
|
||||
|
||||
Mettez en place les mécanismes suivants:
|
||||
|
||||
* un utilisateur "operateur" ayant le droit de se connecter en ssh sur le système, par clé publique / clé privée (avec votre clé, et la mienne: https://infra.opendoor.fr/id_rsa.pub)
|
||||
* une fois qu'il s'est connecté, il n'a pas d'accès shell, mais un menu s'affiche, présentant la liste des actions possibles:
|
||||
* lister les utilisateurs existants
|
||||
* changer le mot de passe de l'utilisateur
|
||||
* afficher l'état du service httpd
|
||||
* redémarrer le service httpd
|
||||
|
||||
```bash
|
||||
# ssh test@cours.opendoor.fr -p XXXX
|
||||
Hello, What do you want to do ?
|
||||
1 - restart apache
|
||||
2 - show apache status
|
||||
3 - list user
|
||||
4 - change user password
|
||||
...
|
||||
0 - exit
|
||||
|
||||
Enter selection:
|
||||
|
||||
|
||||
```
|
||||
|
||||
l'utilisateur devra être autorisé à exécuter ces commandes (en terme de droits)
|
||||
|
||||
La configuration sudo sera dans /etc/sudoers.d/operateur
|
||||
|
||||
Le script sera écrit dans /usr/local/bin/menuaction.sh
|
||||
|
||||
Ce script devra *logguer* chaque action effectuée avec la date et l'heure dans le fichier /var/log/operateur.log
|
||||
|
||||
Ce fichier de log sera archivé quotidiennement, sa période de rétention sera de 1 an. (fichier /etc/logrotate.d/opreateur.log)
|
||||
|
||||
Ex de fichier de log:
|
||||
|
||||
```bash
|
||||
Jan 25 11:16:41 epsii1g11 epsi[26321]: get apache status
|
||||
Jan 25 11:16:55 epsii1g11 epsi[26323]: restart apache
|
||||
```
|
||||
|
||||
Bonus si vous utilisez la lib "whiptail".
|
||||
Reference in New Issue
Block a user