Mudanças entre as edições de "Servidor de Aplicações em Contêineres"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 11: Linha 11:
 
Devido à falta de informações suficientes providas pelo LDAP, não foi possível usar os usuários de rede dos alunos. De maneira a agilizar a criação e remoção de contas, foram criados scripts para realizar essa função. <br />
 
Devido à falta de informações suficientes providas pelo LDAP, não foi possível usar os usuários de rede dos alunos. De maneira a agilizar a criação e remoção de contas, foram criados scripts para realizar essa função. <br />
  
<blockquote style="color: black; border: solid thin gray;">
+
<syntaxhighlight lang=c>
  
#!/bin/bash <br />
+
#!/bin/bash
  
cut -d: -f1 /etc/passwd > /home/scripts/username <br />
+
cut -d: -f1 /etc/passwd > /home/scripts/username
  
while IFS=, read -r matricula nome sobrenome <br />
+
while IFS=, read -r matricula nome sobrenome
do<br />
+
do
   echo "Usuario $nome $sobrenome de matricula $matricula"<br />
+
   echo "Usuario $nome $sobrenome de matricula $matricula"
   ldap=$(ldapsearch -h 200.135.37.117 -b "dc=cefetsc,dc=edu,dc=br" -x "(&(cn=$nome)(sn=$sobrenome))"  | sed -n 's/dn: uid=\(.*\),ou=Alunos,dc=cefetsc,dc=edu,dc=br/\1/p')<br />
+
   ldap=$(ldapsearch -h 200.135.37.117 -b "dc=cefetsc,dc=edu,dc=br" -x "(&(cn=$nome)(sn=$sobrenome))"  | sed -n 's/dn: uid=\(.*\),ou=Alunos,dc=cefetsc,dc=edu,dc=br/\1/p')
   usuariolocal=$(cat username |grep "^$ldap")<br />
+
   usuariolocal=$(cat username |grep "^$ldap")
  
   if [ "$usuariolocal" = "$ldap" ]; then<br />
+
   if [ "$usuariolocal" = "$ldap" ]; then
  
     echo "O usuário $usuariolocal já existe no sistema!."<br />
+
     echo "O usuário $usuariolocal já existe no sistema!."
     echo " "<br />
+
     echo " "
  
   else<br />
+
   else
  
     echo "Criando usuario $ldap para o aluno $nome $sobrenome"<br />
+
     echo "Criando usuario $ldap para o aluno $nome $sobrenome"
     useradd -m -d /home/alunos/$ldap -s /bin/bash  -c "$nome $sobrenome" $ldap<br />
+
     useradd -m -d /home/alunos/$ldap -s /bin/bash  -c "$nome $sobrenome" $ldap
  
     echo "Usando a matricula $matricula como senha do usuario $ldap."<br />
+
     echo "Usando a matricula $matricula como senha do usuario $ldap."
     echo "$ldap:$matricula" |chpasswd<br />
+
     echo "$ldap:$matricula" |chpasswd
 
    
 
    
     echo "Obrigando usuario a mudar senha no proximo login."<br />
+
     echo "Obrigando usuario a mudar senha no proximo login."
     chage -d 0 $ldap<br />
+
     chage -d 0 $ldap
  
     echo "Adicionando usuario $ldap ao grupo alunos"<br />
+
     echo "Adicionando usuario $ldap ao grupo alunos"
     addgroup $ldap alunos<br />
+
     addgroup $ldap alunos
 
    
 
    
     echo "Mudando a permissao da pasta /home/alunos/$ldap"<br />
+
     echo "Mudando a permissao da pasta /home/alunos/$ldap"
     chmod -R 700 /home/alunos/$ldap<br />
+
     chmod -R 700 /home/alunos/$ldap
  
     echo "Mudando grupo dono da pasta /home/alunos/$ldap."<br />
+
     echo "Mudando grupo dono da pasta /home/alunos/$ldap."
     chown -R $ldap:alunos /home/alunos/$ldap<br />
+
     chown -R $ldap:alunos /home/alunos/$ldap
  
     echo "Dando permissão de leitura aos usuários do grupo professores."<br />
+
     echo "Dando permissão de leitura aos usuários do grupo professores."
     setfacl -m g:professores:r /home/alunos/$ldap<br />
+
     setfacl -m g:professores:r /home/alunos/$ldap
 
   
 
   
     echo "Conta $ldap do usuario $nome $sobrenome criada"<br />
+
     echo "Conta $ldap do usuario $nome $sobrenome criada"
     echo " "<br />
+
     echo " "
  
   fi<br />
+
   fi
done < novos<br />
+
done < novos
  
</blockquote>
+
<code>

Edição das 15h42min de 29 de março de 2017

Sistema Operacional hospedeiro: CoreOS stable (1298.6.0);
Forma de execução das aplicações: Em contêineres Docker.;
Versão do Docker: 1.12.6 64 bits;

O CoreOS

O CoreOS é um sistema operacional de código aberto voltado à execução de contêineres. Seu objetivo é permitir a execução de aplicações em qualquer ambiente.

Scripts para criação de usuários

Devido à falta de informações suficientes providas pelo LDAP, não foi possível usar os usuários de rede dos alunos. De maneira a agilizar a criação e remoção de contas, foram criados scripts para realizar essa função.

<syntaxhighlight lang=c>

  1. !/bin/bash

cut -d: -f1 /etc/passwd > /home/scripts/username

while IFS=, read -r matricula nome sobrenome do

 echo "Usuario $nome $sobrenome de matricula $matricula"
 ldap=$(ldapsearch -h 200.135.37.117 -b "dc=cefetsc,dc=edu,dc=br" -x "(&(cn=$nome)(sn=$sobrenome))"  | sed -n 's/dn: uid=\(.*\),ou=Alunos,dc=cefetsc,dc=edu,dc=br/\1/p')
 usuariolocal=$(cat username |grep "^$ldap")
 if [ "$usuariolocal" = "$ldap" ]; then
   echo "O usuário $usuariolocal já existe no sistema!."
   echo " "
 else
   echo "Criando usuario $ldap para o aluno $nome $sobrenome"
   useradd -m -d /home/alunos/$ldap -s /bin/bash  -c "$nome $sobrenome" $ldap
   echo "Usando a matricula $matricula como senha do usuario $ldap."
   echo "$ldap:$matricula" |chpasswd
 
   echo "Obrigando usuario a mudar senha no proximo login."
   chage -d 0 $ldap
   echo "Adicionando usuario $ldap ao grupo alunos"
   addgroup $ldap alunos
 
   echo "Mudando a permissao da pasta /home/alunos/$ldap"
   chmod -R 700 /home/alunos/$ldap
   echo "Mudando grupo dono da pasta /home/alunos/$ldap."
   chown -R $ldap:alunos /home/alunos/$ldap
   echo "Dando permissão de leitura aos usuários do grupo professores."
   setfacl -m g:professores:r /home/alunos/$ldap

   echo "Conta $ldap do usuario $nome $sobrenome criada"
   echo " "
 fi

done < novos