O dono de todos os diretórios criados será o usuário root;
Todos os usuários terão permissão total dentro do diretório publico;
Os usuários de cada grupo terão permissão total dentro de seu respectivo diretório;
Os usuários não poderão ter permissão de leitura, escrita e execução em diretórios de departamentos que eles não pertencem;
OBS: Para solução do problema foi utilizado o ubuntu server 20.04.6
Logue como super usuário
sudo su
Crie um diretório no diretório raiz /
mkdir /scripts
Utilize o nano para criar o seu arquivo shell script, ele que vai automatizar todo o seu trabalho
nano <nome_script>.sh
Note que o script ainda está com a cor branca, indicando que ele ainda não tem permissão de execução, para dar permissão, execute chmod +x script-infrastructure-as-code.sh
E ele mudará de cor para verde.
Dentro do seu arquivo cole os seguintes comandos:
#!/bin/bash
echo "Criando diretórios..."
mkdir /publico
mkdir /adm
mkdir /ven
mkdir /sec
echo "Criando grupos..."
groupadd GRP_ADM
groupadd GRP_VEN
groupadd GRP_SEC
echo "Criando usuários..."
useradd joao -c "João da Silva" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd carlos -c "Carlos Santos" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd maria -c "Maria Melo" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd debora -c "Débora Carla" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd sebastiao -c "Sebastião Silva" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd roberto -c "Roberto Firmino" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd josefina -c "Josefina Maria" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd amanda -c "Amanda Melo" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
useradd rogerio -c "Rogério Carlos" -m -s /bin/bash -p $(openssl passwd -crypt senha123)
echo "Adicionando usuários aos grupos..."
usermod -G GRP_ADM joao
usermod -G GRP_ADM carlos
usermod -G GRP_ADM maria
usermod -G GRP_VEN debora
usermod -G GRP_VEN sebastiao
usermod -G GRP_VEN roberto
usermod -G GRP_SEC josefina
usermod -G GRP_SEC amanda
usermod -G GRP_SEC rogerio
echo "Adicionando permissões..."
chown root:GRP_ADM /adm
chown root:GRP_VEN /ven
chown root:GRP_SEC /sec
chmod 770 /adm
chmod 770 /ven
chmod 770 /sec
chmod 777 /publico
echo "FIM DO SCRIPT!"
Pronto. Agora é só executar o comando com ./<nome_script>.sh
que ele irá automaticamente criar toda sua infrastrutura com as devidas permissões.
Agora é só verificar se os resultados saíram como planejados