Fedora autenticando no LDAP.
Publicado por Alessandro Dias 04/04/2007
[ Hits: 10.249 ]
Script para configuração de clientes de autenticação LDAP no domínio chamado TESTE.
#!/bin/bash # --------------- permissões do /home chmod 755 /home echo -e "Verifica se o pacote \"openldap-clients\" está instalado...\n" PACOTE=`rpm -qa |grep openldap-clients` if [ "$PACOTE" == "" ]; then echo -e "Pacote \"openldap-clients\" não instalado! Aguarde instalação...\n" yum install dialog fi VER=`grep "ldap.ditec" /etc/openldap/ldap.conf` if [ "$VER" == "" ]; then echo "HOST ldap.ditec.dpf.gov.br" >> /etc/openldap/ldap.conf echo "BASE o=dpf" >> /etc/openldap/ldap.conf echo "TLS_CACERT /etc/pki/tls/certs/ca.crt" >> /etc/openldap/ldap.conf fi echo -e "Verifica se o pacote Dialog está instalado...\n" PACOTE=`rpm -qa |grep dialog-1` if [ "$PACOTE" == "" ]; then echo -e "Pacote Dialog não instalado! Aguarde instalação...\n" yum install dialog fi if [ -f /etc/pki/tls/certs/ca.crt ]; then echo -e "\nCertificado Ok!" echo $porcento else echo -e "\nFazendo download do certificado Ok!" wget http://ditec.dpf.gov.br/download/servicos/software_livre/ca.crt mv -f ca.crt /etc/pki/tls/certs/ca.crt fi # -------------------Retira as máquinas i=1 usuario="teste" TESTE=`ldapsearch -x -Z "(uid=*)" uid |grep uid: | cut -d " " -f 2` nova_lista="" echo -e "\nAguarde enquanto o sistema verifica os usuários...\n" while [ "$usuario" != "" ]; do usuario=`echo $TESTE | cut -d " " -f $i` tam=`expr ${#usuario} \- 1` if [ "${usuario:$tam:1}" != "$" ];then nova_lista=`echo $nova_lista``echo " $usuario"` fi i=`expr $i \+ 1` done #-----Montando lista de usuários para o Dialog usuario="teste" echo -e "\nAguarde enquanto o sistema monta o Dialog...\n" i=1 while [ "$usuario" != "" ]; do usuario=`echo $nova_lista | cut -d " " -f $i` VER=`ls /home/ | grep "$usuario"` if [ "$VER" != "" ]; then USUARIOS[$i]=`echo $usuario``echo -e " \"\" ON"` else USUARIOS[$i]=`echo $usuario``echo -e " \"\" OFF"` fi i=`expr $i \+ 1` done num_users=`expr $i \- 2` escolha=$( dialog --stdout \ --checklist 'Selecione os usuários que utilizarão a sua máquina:' 0 0 0 \ `for ((a=1 ; a<$num_users ; a++));do echo ${USUARIOS[$a]};done` \ `echo ${USUARIOS[$num_users]}` ) CANCELA=$? # Apenda a palavra "fim" usuarios=`echo $escolha``echo " fim"` # Inicializa variáveis user_del="teste" i=1 # ---------------------------------------------- Excluindo Usuários # Apenda a palavra "fim" lista=`ls /home/` lista=`echo $lista``echo " fim"` apagados="" incluidos="" mantidos="" if [ "$CANCELA" != "1" ];then while [ "$user_del" != "fim" ]; do user_del=`echo ${lista} | cut -d " " -f $i` apagar=`echo ${escolha} | grep $user_del` YES=0 if [ "$apagar" == "" -a "$user_del" != "fim" ];then dialog --yesno "Vc realmente quer excluir o usuário $user_del?" 0 0 && YES=1 if [ "$YES" == "1" ];then rm -rf /home/$user_del/ apagados=`echo $apagados``echo " $user_del"` else mantidos=`echo $mantidos``echo " $user_del"` fi fi i=`expr $i \+ 1` done fi # Inicializa variáveis USERNAME="teste" i=1 aplic=0 # ----------------------------------------------- Incluindo Usuários while [ "$USERNAME" != "fim" ]; do USERNAME=`echo ${usuarios} | cut -d " " -f $i` if [ "$USERNAME" != "fim" ]; then len_username=${#USERNAME} len_username=`expr $len_username \- 2` USERNAME=${USERNAME:1:$len_username} if [ -e /home/$USERNAME ];then #echo -e "/home/$USERNAME Ok!\n" mantidos=`echo $mantidos``echo " $USERNAME"` else incluidos=`echo $incluidos``echo " $USERNAME"` mkdir /home/$USERNAME if [ -f /etc/skel/.bash_logout ]; then cp -R /etc/skel/.bash_logout /home/$USERNAME/ fi if [ -f /etc/skel/.bash_profile ]; then cp -R /etc/skel/.bash_profile /home/$USERNAME/ fi if [ -f /etc/skel/.bashrc ]; then cp -R /etc/skel/.bashrc /home/$USERNAME/ fi if [ -f /etc/skel/.gtkrc ]; then cp -R /etc/skel/.gtkrc /home/$USERNAME/ fi chown -R $USERNAME:usuarios /home/$USERNAME chmod -R go-rwx /home/$USERNAME #echo -e "/home/$USERNAME criado!\n" fi aplic=1 fi i=`expr $i \+ 1` done if [ "$aplic" == "1" ]; then todos=`echo $mantidos``echo " $incluidos"` anteriores=`echo $mantidos``echo " $apagados"` #echo -e "Configurando o cliente LDAP...\n" authconfig --enableldap --enableldapauth --enableldaptls --ldapserver ldap.ditec.dpf.gov.br --ldapbasedn o=dpf --kickstart dialog --title "Histórico de atividades" \ --msgbox "\nUsuário do sistema antes das atualizações:\n$anteriores\n\nUsuários incluídos:\n$incluidos\n\nUsuários excluídos:\n$apagados\n\nUsuários do sistema após atualizações:\n$todos" \ 20 50 fi exit 0
Firewall com iproute2 para 2 links com ip fixo
Otimiza.sh - Atualiza seu Ubuntu/Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Direcionar uma URL para Outra No Mikrotik (0)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (1)