consamba.sh
Publicado por lourival araujo da silva 10/12/2008
[ Hits: 5.912 ]
Programa interativo de configuração de perfis do Servidor Samba. Comporta quatro perfis:
pdc - controlador de domínio;
srv - servidor de arquivos;
cds - perfil misto de pdc e srv;
cld - cliente de dominio.
#!/bin/bash ############################################################################ # Script Basico de Configuracao de Dominio Samba Linux - Versao 0.3.7 # # Lourival Araujo da Silva - 5° CTA - Recife / PE - 2008 # # Liberado sob GPL em 02 de novembro de 2008 # ############################################################################ ############################################################################ # Changelog # # # # Versao 0.3.7 Novembro 2008 # # - Inclusão de perfis de configuracao: pdc => Controlador de Dominio # # srv => Servidor de Arquivos # # cds => Dominio e Arquivos # # cld => Cliente de Dominio # # - Inclusão de Controle Horario de Acesso ao Servidor # # - Liberacao sob licença GPL # # # # Versao 0.3.6 Outubro 2008 # # - Inclusao de codigo de controle de erro na adicao de usuario # # - Adicao de controle dos compartilhamentos do Servidor (pam_mount) # # # # Versao 0.3.5 Setembro 2008 # # - Reformulacao do codigo do programa com inclusao de funcoes # # # # Versao 0.3.4 Abril 2008 # # - Inclusao de configurador de Cliente Linux no Servidor PDC # # Essa funcionalidade não deve ser testada no Servidor, pois provoca a # # desconfiguracao do mesmo.Reconfigurando-o como cliente de Dominio. # # ( NAO UTILIZAR ESTA FUNCIONALIDADE NO SERVIDOR ) # # # # Versao 0.3.3 Marco 2008 # # - Inclusao de compartilhamento publico; # # - Adicao de Changelog # # # # Versao 0.3.2 Janeiro 2008 # # - Inclusao de bloqueio e desbloqueio de usuarios; # # - Inclusao de compartilhamento restrito: leitura ou leitura/escrita; # # # # Versao 0.3.1 Novembro 2007 # # - Criacao de autenticador de dominio; # # - Adicao do diretorio dos compartilhamentos; # # - Adicao de grupos ao servidor; # # - Adicao de usuarios aos grupos do servidor; # # - Adicao de maquinas ao dominio; # # # ############################################################################ ############################################################################ trap ' ' 2 3 15; while true; do clear ############################################################################################################################################### ############################################################################################################################################### ############################################################################################################################# ############################################################################################################################# cria_dominio(){ echo -n "Digite um nome de Dominio: " # criar o dominio de logon read dominio echo -n "Digite o nome do Servidor: " read servidor echo -n "Digite o nome da conta do Administrador do Servidor Samba (root): " read admin echo -n "Digite a Rede do Servidor (192.168.0.0/16): " read rede sudo smbpasswd -a $admin echo " [globals] workgroup = $dominio netbios name = $servidor domain master = yes logon script = netlogon.bat logon home = \\%U\.profiles logon path = \\%L\profiles\%U logon drive = j: security = user encrypt passwords = yes os level = 100 log file = /var/log/samba/log.%m max log size = 1000 socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 hosts allow = 127.0.0.0/8 $rede obey pam restrictions = Yes smb passwd file = /etc/samba/smbpasswd passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . winbind use default domain = yes winbind enum users = yes winbind enum groups = yes idmap uid = 10000-20000 idmap gid = 10000-20000 template homedir = /home/%U template shell = /bin/bash [netlogon] comment = Servico de logon path = /var/samba/netlogon guest ok = yes browseable = no [profiles] path = /var/samba/profile writable = yes browseable = no create mask = 0600 directory mask = 0700 [home] path = /home browseable = no" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old sudo mv /tmp/smb.conf /etc/samba/smb.conf sudo mkdir -p /var/profiles sudo chmod 1777 /var/profiles sudo mkdir -p /var/samba/netlogon sudo chmod 775 /var/samba/netlogon echo "Configurando o horario de acesso ao Servidor..." echo " login;*;*;Wd0800-1800 & !SaSu0000-2359 ssh;*;*;Wd0800-1800 & !SaSu0000-2359 ">/tmp/time.conf sudo cat /tmp/time.conf >>/etc/security/time.conf } cria_base(){ echo -n "Indique a localizacao do Diretorio dos compartilhamentos (/dados): " # Criar o diretorio-base read base sudo mkdir -p $base sudo chmod -R 2777 $base/ echo -n "Diretorio-Base criado em $base" } cria_publico(){ echo -n "Digite o nome do Diretorio [publico]: " # Criar compartilhamento de leitura/escrita para todos read compart echo -n "Indique o diretorio de compartilhamento (/dados): " read base echo "Criando compartilhamento publico... " sudo mkdir -p $base/$compart if( ! (grep nobody /etc/passwd ) );then sudo useradd -s /bin/bash -d /dev/null -g nogroup nobody 2>/dev/null sudo passwd -l nobody 2>/dev/null sudo smbpasswd -a nobody fi sudo chown -R nobody.nogroup $base/$grupo sudo chmod 2777 $base/$compart echo " [$compart] path = $base/$compart writable = yes browseable = yes public = yes guest ok = yes" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old sudo cat /tmp/smb.conf >>/etc/samba/smb.conf echo "Compartilhamento publico criado em $base... " sleep 2 echo "Exportando compartilhamento publico criado no Servidor..." echo " volume * smbfs $servidor $compart ~/$compart uid=&,gid=&,dmask=0750 - - ">/tmp/pam_mount.conf sudo cat /tmp/pam_mount.conf >>/etc/security/pam_mount.conf sleep 3 } cria_grupo(){ echo -n "Digite o nome do Grupo: " # Incluir grupos no Servidor de dominio read grupo echo -n "Digite o caminho do Diretorio dos compartilhamentos no Servidor (/dados): " read base echo "Criando compartilhamento no Servidor... " echo -n "Deseja criar o diretorio do grupo somente para leitura ? [sim/nao] " read resp if [ $resp == sim ];then sudo groupadd $grupo echo "Criando compartilhamento somente para leitura... " # Compartilhar somente leitura para sudo mkdir -p $base/$grupo # os membros do grupo sudo chgrp -R $grupo $base/$grupo sudo chmod -R 2750 $base/$grupo echo " [$grupo] path = $base/$grupo writable = no browseable = yes read list = @$grupo write list = @$grupo admin users = @$grupo @secinfo" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old sudo cat /tmp/smb.conf >>/etc/samba/smb.conf echo "Criando compartilhamento sem escrita em $base... " sleep 2 echo "Exportando compartilhamento sem escrita criado no Servidor..." echo " volume * smbfs $servidor $compart ~/$compart uid=&,gid=&,dmask=2750, - - ">/tmp/pam_mount.conf sudo cat /tmp/pam_mount.conf >>/etc/security/pam_mount.conf sleep 3 else sudo groupadd $grupo echo "Criando compartilhamento para leitura e escrita do grupo... " # Compartilhar leitura/escrita sudo mkdir -p $base/$grupo # somente para os membros do grupo sudo chgrp -R $grupo $base/$grupo sudo chmod -R 2770 $base/$grupo sudo echo " [$grupo] path = $base/$grupo writable = yes browseable = yes read list = @$grupo write list = @$grupo admin users = @$grupo @secinfo" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old sudo cat /tmp/smb.conf >>/etc/samba/smb.conf echo "Criando compartilhamento com escrita em $base... " sleep 2 echo "Exportando compartilhamento com escrita criado no Servidor..." echo " volume * smbfs $servidor $compart ~/$compart uid=&,gid=&,dmask=2770 - - ">/tmp/pam_mount.conf sudo cat /tmp/pam_mount.conf >>/etc/security/pam_mount.conf sleep 3 fi echo -n " Grupo $grupo criado em $base." sleep 4 } inclui_usuario(){ echo "Incluindo novo usuario..." RESP=sim # Incluir usuarios nos grupos ja existentes no Servidor until [ RESP = "nao" ];do echo -n "Indique o Grupo para inclusao do usuario: " read grupo GRP="$(grep $grupo /etc/group |cut -d: -f1)" if [ ! $GRP ];then echo "O grupo $grupo nao existe." sleep 2 continue fi echo -n "Digite o nome do Usuario: " read usuario # chattr -i /etc/passwd # Opcoes utilizaveis caso se queira bloquear o acesso aos arquivos de senhas # chattr -i /etc/shadow # chattr -i /etc/group sudo useradd -s /bin/bash -d /home/$usuario -m -g $grupo $usuario # incluir o usuario no grupo if [ $? = 1 ];then echo "Nao foi possivel cadastrar o usuario. Verifique se usou caracter especial." fi sudo mkdir -p /home/$usuario/profile.pds # criar perfil para cada usuário sudo chown -R $usuario. /home/$usuario/profile.pds # atribuir propriedade sobre o perfil para cada usuário # chattr +i /etc/passwd # Opcoes utilizaveis caso se queira bloquear o acesso aos arquivos de senhas # chattr +i /etc/passwd # chattr +i /etc/group # sudo smbpasswd -a $usuario # incluir o usuario no grupo echo "Deseja adicionar um novo usuario ? " echo -n "Responda [sim ou nao]: " read RESP if [ "$RESP" = "nao" ];then echo "Adicao de usuario concluida." sleep 2 clear break fi done } exclui_usuario(){ echo -n "Digite o nome do usuário a ser excluido: " # Excluir usuarios cadastrados read usuario if( ! (grep $usuario /etc/passwd ) );then echo "Nao foi possivel excluir o usuario." sleep 2 clear continue fi if( grep $usuario /etc/passwd ); then sudo smbpasswd -x $usuario 2>/dev/null sudo userdel -r $usuario 2>/dev/null echo "Usuario excluido com sucesso." sleep 2 clear continue fi } bloqueia_usuario(){ echo -n "Digite o nome do usuario a ser bloqueado: " # Bloqueio temporario de usuarios no dominio (ferias) read usuario if( ! (grep $usuario /etc/passwd ) );then echo "Nao foi possivel bloquear o usuario." sleep 2 clear continue fi sudo smbpasswd -d $usuario 2>/dev/null sudo passwd -l $usuario 2>/dev/null if [ $? == 0 ]; then echo -n "Usuario bloqueado com sucesso." sleep 2 clear continue fi } desbloqueia_usuario(){ echo -n "Digite o nome do usuario a ser desbloqueado: " # Desbloqueio de usuarios no dominio read usuario if( ! (grep $usuario /etc/passwd ) );then echo "Nao foi possivel desbloquear o usuario." sleep 2 clear continue fi sudo passwd -u $usuario 2>/dev/null sudo smbpasswd -e $usuario 2>/dev/null echo -n "Usuario desbloqueado com sucesso." sleep 2 clear continue } adiciona_maquina(){ # Inclui conta de maquina no dominio echo -n "Digite o nome da maquina a ser incluida no Dominio: " read nome maquinas="$(grep maquinas /etc/group |cut -d: -f1)" if [ ! $maquinas ];then sudo groupadd maquinas fi if( ! (grep $nome /etc/passwd ) );then sudo useradd -s /bin/false -d /dev/null -g maquinas $nome$ sudo passwd -l $nome$ smbpasswd -a -m $nome echo "criada conta de maquina no dominio." sleep 4 continue else echo "maquina $nome ja cadastrada anteriormente." sleep 4 continue fi } exclui_maquina(){ echo -n "Digite o nome da maquina a ser excluida: " # Excluir maquinas cadastradas no dominio read maquina # smbpasswd -x $maquina sudo userdel -r $maquina$ echo -n "Maquina excluida do Dominio." sleep 2 } valor_invalido(){ clear tput cup 17 18;echo "Valor inadequado. Digite um valor valido. " sleep 2 continue } ########################################################################################################################################## cria_samba(){ echo -n "Digite um nome do seu Dominio ou Grupo de Trabalho: " read dominio echo -n "Digite o nome desse Servidor Samba: " read servidor echo -n "Digite o nome da conta do Administrador desse Servidor Samba (admin): " read admin echo -n "Digite a Rede desse Servidor (192.168.0.0/16): " read rede sudo smbpasswd -a $admin echo -n "Deseja juntar o Servidor Samba a um Dominio ? [sim|nao] " read resp if [ $resp == sim ];then echo -n "Digite o nome do Dominio: " read ndominio echo -n "Digite o nome do Servidor de Dominio: " read nservidor echo -n "Digite o nome do administrador do Dominio [admin]: " read nadmin sudo net rpc join -W $ndominio -S $servidor -U $nadmin continue else clear continue fi echo " [globals] workgroup = $dominio netbios name = $servidor domain master = no security = user encrypt passwords = yes os level = 30 log file = /var/log/samba/log.%m max log size = 1000 socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 hosts allow = 127.0.0.0/8 $rede obey pam restrictions = Yes passwdb backend = /etc/samba/smbpasswd passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n*password\supdated\ssuccessfully* . winbind use default domain = yes winbind enum users = yes winbind enum groups = yes idmap uid = 10000-20000 idmap gid = 10000-20000 template homedir = /home/%U template shell = /bin/bash [home] path = /home browseable = no" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old sudo mv /tmp/smb.conf /etc/samba/smb.conf echo "Configurando o horario de acesso ao Servidor..." echo " login;*;*;Wd0800-1800 & !SaSu0000-2359 ssh;*;*;Wd0800-1800 & !SaSu0000-2359 ">/tmp/time.conf sudo cat /tmp/time.conf >>/etc/security/time.conf } ######################################################################################################################################## ######################################################################################################################################## pdc(){ tput cup 0 19; trap ' ' 2 3 15; while true; do tput cup 10 12;echo " #################################################################### PROGRAMA DE CONFIGURACAO DE SERVIDOR DE DOMINIO LINUX - Versao 0.3.7 Autor: LOURIVAL ARAUJO DA SILVA - 5º CTA - RECIFE - PE Liberado sob GPL em 02 de novembro de 2008 #################################################################### 1 - Criar o DOMINIO (PDC Samba) 2 - Criar Grupos no Servidor de Dominio 3 - Incluir usuario nos Grupos do Dominio 4 - Excluir usuario do Dominio 5 - Bloquear senha de usuario do Dominio 6 - Desbloquear senha de Usuario do Dominio 7 - Adicionar maquina ao Dominio 8 - Excluir maquina do Dominio 9 - Sair do programa de configuracao #################################################################### #################################################################### " echo " " echo -n " Digite a opcao de configuracao desejada: " read opcao case $opcao in 1) cria_dominio ;; 2) cria_grupo ;; 3) inclui_usuario ;; 4) exclui_usuario ;; 5) bloqueia_usuario ;; 6) desbloqueia_usuario ;; 7) adiciona_maquina ;; 8) exclui_maquina ;; 9) clear; break; ;; *) valor_invalido; ;; esac done } ################################################################################################### ################################################################################################### srv(){ tput cup 0 19; trap ' ' 2 3 15; while true; do tput cup 10 12;echo " ###################################################################### PROGRAMA DE CONFIGURACAO DE SERVIDOR DE ARQUIVOS LINUX - Versao 0.3.7 Autor: LOURIVAL ARAUJO DA SILVA - 5º CTA - RECIFE - PE Liberado sob GPL em 02 de novembro de 2008 ###################################################################### 1 - Criar SERVIDOR DE ARQUIVOS SAMBA 2 - Criar o Diretorio dos Compartilhamentos no SERVIDOR 3 - Criar Grupos e Compartilhamentos Restritos 4 - Criar Compartilhamento Publico 5 - Incluir usuario nos Grupos do Servidor de Arquivos 6 - Excluir usuario do Servidor de Arquivos 7 - Bloquear senha de usuario do Servidor de Arquivos 8 - Desbloquear senha de Usuario no Servidor de Arquivos 9 - Sair do programa de configuracao ##################################################################### ##################################################################### " echo " " echo -n " Digite a opcao de configuracao desejada: " read opcao case $opcao in 1) cria_samba ;; 2) cria_base ;; 3) cria_grupo ;; 4) cria_publico ;; 5) inclui_usuario ;; 6) exclui_usuario ;; 7) bloqueia_usuario ;; 8) desbloqueia_usuario ;; 9) clear break ;; *) valor_invalido; ;; esac done } ############################################################################################################################################## ############################################################################################################################################## cds(){ tput cup 10 19; trap ' ' 2 3 15; while true; do tput cup 10 12;echo " ##################################################################### PROGRAMA DE CONFIGURACAO DE SERVIDOR DE DOMINIO LINUX - Versao 0.3.7 Autor: LOURIVAL ARAUJO DA SILVA - 5º CTA - RECIFE - PE Liberado sob GPL em 02 de novembro de 2008 ##################################################################### 1 - Criar SERVIDOR DE DOMINIO E ARQUIVOS (PDC Samba) 2 - Criar o Diretorio dos Compartilhamentos no SERVIDOR 3 - Criar Grupos e Compartilhamentos Restritos 4 - Criar Compartilhamento Publico 5 - Incluir usuario nos Grupos do Dominio 6 - Excluir usuario do Dominio 7 - Bloquear senha de usuario do Dominio 8 - Desbloquear senha de Usuario do Dominio 9 - Adicionar conta de maquina ao Dominio 10 - Excluir maquina do Dominio 11 - Sair do programa de configuracao #################################################################### #################################################################### " echo " " echo -n " Digite a opcao de configuracao desejada: " read opcao case $opcao in 1) cria_dominio ;; 2) cria_base ;; 3) cria_grupo ;; 4) cria_publico ;; 5) inclui_usuario ;; 6) exclui_usuario ;; 7) bloqueia_usuario ;; 8) desbloqueia_usuario ;; 9) adiciona_maquina ;; 10) exclui_maquina ;; 11) clear break ;; *) valor_invalido; ;; esac done } ############################################################################################################################################## ############################################################################################################################################## cld(){ #!/bin/bash #PROGRAMA DE CLIENTE DE DOMINIO - SERVIDOR DE DOMINIO $HOSTNAME #Programa ConSamba.sh liberado,em 20Set08, sob licença GPL #por LOURIVAL ARAUJO DA SILVA - 5º CTA - RECIFE - BRASIL trap ' ' 2 3 15; while true; do # clear adiciona_usuario(){ echo -n "Digite o nome do usuario a ser incluido: " read usuario cadastro="$(grep -i $usuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $usuario nao existe. Criando o usuario $usuario..." echo -n "Digite o grupo do usuario: " read grupo GRP=$(grep $grupo /etc/group |cut -d: -f1) if [ ! $GRP ];then echo "O grupo $grupo nao existe." sleep 2 continue fi sudo useradd -d /home/$usuario -s /bin/bash -g $grupo -m $usuario sudo passwd $usuario sleep 2 fi echo -n "Deseja incluir outro usuario ? [sim/nao] " read resp while [ $resp = sim ];do echo -n "Digite o nome do novo usuario: " read nusuario cadastro="$(grep -i $nusuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $nusuario nao existe. Criando o usuario $nusuario..." echo -n "Digite o grupo do novo usuario: " read ngrupo GRP=$(grep $ngrupo /etc/group |cut -d: -f1) if [ ! $GRP ];then echo "O grupo $ngrupo nao existe." sleep 2 continue fi sudo useradd -d /home/$nusuario -s /bin/bash -m -g $ngrupo $nusuario sudo passwd $nusuario sleep 2 fi echo -n "Deseja incluir outro usuario ? [sim/nao] " read resp if [ $resp = nao ]; then echo "Adicao de usuario concluida." sleep 2 break fi done } bloqueia_usuario(){ echo -n "Digite o nome do usuario a ser bloqueado: " read usuario cadastro="$(grep -i $usuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $usuario nao existe." sleep 2 continue else sudo passwd -l $usuario echo "Usuario $usuario bloqueado." sleep 2 continue fi } desbloqueia_usuario(){ echo -n "Digite o nome do usuario a ser desbloqueado: " read usuario cadastro="$(grep -i $usuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $usuario nao existe." sleep 2 continue else sudo passwd -u $usuario echo "Usuario $usuario desbloqueado." sleep 2 continue fi } atualiza_senha(){ echo "Atualizacao de senha." echo -n "Digite o nome do usuario: " read usuario cadastro="$(grep -i $usuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $usuario nao existe." sleep 2 continue else sudo passwd $usuario echo "Senha do usuario $usuario atualizada." sleep 2 continue fi } exclui_usuario(){ echo -n "Digite o nome do usuario a ser excluido: " read usuario cadastro="$(grep -i $usuario /etc/passwd|cut -d: -f1)" if [ ! "$cadastro" ];then echo "Usuario $usuario nao existe." sleep 2 continue else sudo userdel -r $usuario echo "Senha do usuario $usuario atualizada." sleep 2 continue fi } inclui_dominio(){ echo -n "Digite um nome do Dominio: " read dominio echo -n "Digite o nome do Servidor de Domínio: " read servidor echo -n "Digite o nome da Maquina a ser incluida no Dominio: " read maquina echo -n "Digite a conta do Administrador de Domínio (admin): " read admin echo " [globals] workgroup = $dominio netbios name = $maquina security = domain encrypt passwords = yes os level = 10 log file = /var/log/samba/log.%m socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 hosts allow = 127.0.0.0/8 $rede obey pam restrictions = Yes smb passwd file = /etc/samba/smbpasswd winbind use default domain = yes winbind enum users = yes winbind enum groups = yes idmap uid = 10000-20000 idmap gid = 10000-20000 [home] comment = Directorio Pessoal create mask = 0700 directory mask = 0700 browseable = No [printers] path = /tmp browseable = No comment = Impressoras de Rede guest ok = No read only = No print ok = Yes" >>/tmp/smb.conf sudo cp /etc/samba/smb.conf /tmp/smb.conf.old sudo mv /tmp/smb.conf /etc/samba/smb.conf sudo echo " ">/tmp/login sudo echo " #PAM - 1.0 # Arquivo gerado pelo script ConSamba.sh Versao 0.3.5 - Setembro 2008 - $(date +%H:%M:%S-%d/%m/%Y) #/etc/pam.d/login auth requisite pam_securetty.so auth requisite pam_nologin.so auth required pam_unix.so auth required pam_cracklib.so auth required pam_mount.so use_first_pass auth sufficient pam_winbind.so use_first_pass account required pam_unix.so account sufficient pam_winbind.so use_first_pass session optional pam_mkhomedir.so skel=/etc/skel umask=0022 session required pam_mount.so use_first_pass session required pam_limits.so session optional pam_motd.so password required pam_unix.so password sufficient pam_winbind.so use_first_pass" >>/tmp/login sudo cp /etc/pam.d/login /tmp/login.old sudo mv /tmp/login /etc/pam.d/login sudo echo " ">/tmp/kdm sudo echo " #PAM - 1.0 # Arquivo gerado pelo script ConSamba.sh Versao 0.3.5 - Setembro 2008 - $(date +%H:%M:%S-%d/%m/%Y) #/etc/pam.d/kdm auth requisite pam_nologin.so auth required pam_unix.so auth required pam_cracklib.so auth required pam_mount.so use_first_pass auth sufficient pam_winbind.so use_first_pass account required pam_unix.so account sufficient pam_winbind.so use_first_pass session optional pam_mkhomedir.so skel=/etc/skel umask=0022 session required pam_mount.so use_first_pass session required pam_limits.so session optional pam_motd.so password required pam_unix.so password sufficient pam_winbind.so use_first_pass" >>/tmp/kdm cp /etc/pam.d/kdm /tmp/kdm.old sudo mv /tmp/kdm /etc/pam.d/kdm sudo echo " ">/tmp/nsswitch.conf sudo echo " # Arquivo gerado pelo script ConSamba.sh Versao 0.3.5 - Setembro 2008 - $(date +%H:%M:%S-%d/%m/%Y) #/etc/nsswitch.conf passwd: compat winbind group: compat winbind shadow: compat winbind hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis" >>/tmp/nsswitch.conf sudo cp /etc/nsswitch.conf /tmp/nsswitch.conf.old sudo mv /tmp/nsswitch.conf /etc/nsswitch.conf apt-get install libpam-modules libpam-mount libpam-cracklib winbind net rpc join -W $dominio -S $servidor -U $admin 2>>/tmp/errodominio wbinfo -u 2>>/tmp/errodominio wbinfo -g 2>>/tmp/errodominio getent passwd 2>>/tmp/errorusiarios getent group 2>>/tmp/errousuarios sleep 2 continue } sair(){ clear break } valor_errado(){ clear tput cup 17 18;echo "Valor invalido. Digite um valor aceitavel. " sleep 2 clear continue } tput cup 10 19;echo " ==================================================== CADASTRO DE USUARIOS - CLIENTE PDC SAMBA/NT VERSAO 0.2.0 - SET 2008 ==================================================== CLIENTE DE DOMINIO $HOSTNAME ==================================================== 1) Adicionar usuario local 2) Bloquear usuario local 3) Desbloquear usuario local 4) Atualizar senha local 5) Excluir usuario local 6) Juntar a maquina ao DOMINIO 7) Sair ==================================================== " tput cup 25 10; echo -n "Digite sua opcao [1-7]: " read opcao case $opcao in 1) adiciona_usuario ;; 2) bloqueia_usuario ;; 3) desbloqueia_usuario ;; 4) atualiza_senha ;; 5) exclui_usuario ;; 6) inclui_dominio ;; 7) sair ;; *) valor_errado ;; esac done } ################################################################################################################################################### ################################################################################################################################################### tput cup 10 12; echo -n " ###################################################################### # # # Escolha o perfil de Servidor que deseja instalar: # # # # PDC => Controlador de Dominio Samba # # SRV => Servidor de Arquivos Samba # # CDS => Controlador de Dominio Samba com Servidor de Arquivos # # CLD => Cliente de Dominio Samba # # # # S => Sair do Programa de Configuracao. # # # ###################################################################### " tput cup 24 9; echo -n "Digite a sua opcao: "; read opcao case $opcao in PDC) clear; tput cup 10 19;echo "PDC => perfil Controlador de Dominio."; pdc; ;; SRV) clear; tput cup 10 19;echo "SRV => perfil Servidor de Arquivos."; srv; ;; CDS) clear; tput cup 10 19;echo "CDS => perfil Controlador e Servidor."; cds; ;; CLD) clear; tput cup 10 19;echo "CLD => perfil Cliente de Dominio."; cld; ;; S) clear; exit; ;; *) clear; valor_invalido; ;; esac done
Firewall simples, com opções de redirecionamento
Backup de Repositórios Subversion
Monitorar status de transferência das interfaces de rede
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Criando um Pen Drive Bootável no Linux
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (45)
Acento til, agudo e circunflexo nao funcionam com Debian (5)
Como usar o WhatsApp no PC sem precisar escanear o qrcode ou utilizar... (12)