Slackware 13 com Samba PDC completo

O objetivo desse arquivo é demonstrar de maneira simples como montar um servidor Samba com PDC e perfil móvel. Depois de muita pesquisa chegamos ao resultado desse artigo para que todos que precisarem possam tirar o máximo proveito possível. Todos os créditos serão dados no final do artigo. Bom proveito!

[ Hits: 34.136 ]

Por: Joel Silva em 13/04/2011


Criar usuários e grupos



Aqui demonstrarei como criar grupos e usuários e associá-los. Temos nessa área dicas importantes de nossos colaboradores do VOL e outros grupos.

Como iremos fazer uso de um script em shell para cadastrar os usuários e definir os grupos, vamos primeiro criar todos os grupos que terá na empresa:

# groupadd nomedogrupo

Aqui deverão ser cadastrados os grupos da empresa, como: diretoria, departamento, administrador. Com certeza não terão problemas ao criar os grupos.

Agora para criar o usuário, uma maneira bem simples de se fazer isso é usando um script feito pelo nosso amigo Iran Macedo (http://www.vivaolinux.com.br/script/Adicionando-automagicamente-usuarios).

Faça o download do script: arquivo adiciona_usuario

e antes de executar no terminal, acesse o código usando o editor de sua preferência (vi adiciona_usuario) e localize a linha com a senha padrão para os usuários. A senha padrão original dos usuários criados pelo script é "S3nh4123". Essa é a primeira senha do usuário do Samba. Aqui eu alterei essa senha para "place", pois fica mais fácil de passar para os novos usuários do Samba.

Feito isso execute o script pela primeira vez e cadastre os usuários de maneira simples e rápida. Para cadastrar futuros usuários basta acessar o shell e digitar adiciona_usuario e fazer o cadastro dos mesmos, como diz o Iran, podem ser cadastrados 10, 20, 100 usuários numa única sessão, e o bom é que sempre mostra o último usuário criado, evitando assim que tentemos criar usuários já existentes.

Aqui nesse script já associamos o usuário ao grupo ao qual pertence.

Página anterior     Próxima página

Páginas do artigo
   1. Configuração do Samba - smb.conf
   2. Criar usuários e grupos
   3. Adicionando o Windows no domínio, netlogon e scripts
   4. Ajuste fino na configuração
Outros artigos deste autor

Instalando o Slackware com suporte HT - SMP

Instalando e gerenciando programas no Linux

Blockmail: um filtro de anexos de e-mail

Leitura recomendada

Domínio com perfil móvel no Fedora 10

Instalando um PDC Samba no Debian

Carregando scripts ao se logar no Samba

Implementando um servidor de domínio

Tutorial completo de implementação de LDAP + Samba + Squid

  
Comentários
[1] Comentário enviado por SuperSlackware em 14/04/2011 - 13:42h

Vlw cara era isso mesmo que eu estava precisando..

Slack na Veia.

(Ô\_!_/Ô)

[2] Comentário enviado por carlosalberto4ti em 15/04/2011 - 09:26h

nao esta sendo possivel baixar o script

[3] Comentário enviado por joao@transjori em 15/04/2011 - 09:52h

Cara!!!!

Simplesmente Fantástico... a solução dos meus problemas.

Abraços

[4] Comentário enviado por butters em 15/04/2011 - 10:47h

Muito obrigado pelos comentários e elogios, mas nada disso seria possivel sem a colaboração das pessoas citadas acima.

carlos007, segue o script na integra:

#!/bin/bash

###
### Marco Driemeyer <marco@titansware.com.br>
### 01/02/2011 - Atualizacao dos scripts de login
###
### Havendo alteracoes deve-se manter os creditos do autor
###


###
### Comentarios sao importantes... eu adoro comentarios...
###


###
### No inicio o script era vaziu...
### Entao foram criadas as funcoes...
###


###
### Funcao que verifica as dependencias
###
VERIFICADEPS()
{
# Limpa a tela
clear

# mostra mensagem
echo "Iniciando a verificacao das dependencias..."

# Verifica se o usuario que esta executando eh root
if [ "$(id -u)" != "0" ]; then
echo "Este script deve ser executado pelo usuario root!"
echo "Cancelando a execucao..."
exit 1 # sai com codigo de erro
fi

# verifica a existencia dos comando necessarios
local DEPENDENCIAS="ls unix2dos cat test"
for i in `echo "$DEPENDENCIAS"`; do
which $i 1>/dev/null 2>/dev/null # manda a saida para o buraco negro
if [ "$?" -ne "0" ]; then
echo "O comando $i nao foi encontrado."
echo "Tente instalar ele usando o yum..."
exit 1 # sai com codigo de erro
fi
done

# Verifica se o diretorio scripts existe
if ! test -d ./scripts ; then
echo "O diretorio scripts nao exite no atual diretorio!"
echo "Crie um diretorio chamado scripts e dentro dele um diretorio com o nome cada grupo."
echo "Dentro do diretorio do grupo crie o bat do grupo chamado script.bat."
echo "No diretorio do grupo crie um arquivo chamado usuarios e dentro dele coloque um usuario por linha."
echo "Apos isso, execute o script novamente!"
exit 1 # sai com codigo de erro
fi

# Verifica os grupos de usuarios
GRUPOS

# Verifica se esta tudo ok com os grupos
VERIFI_GRUPOS

# mostra saida e adiciona linha para dividir
echo "Dependencias verificadas com sucesso!"
echo ""

}


###
### Fucnao que verifica se esta tudo ok com os grupos
###
VERIFI_GRUPOS()
{
for i in `echo $GRUPOS`; do # caminha pelos grupos
if ! test -s ./scripts/$i/script.bat ; then # testa o script
echo "O arquivo ./scripts/$i/script.bat nao existe ou esta vaziu!"
echo "Dentro deste arquivo deve estar o script bat de login do grupo $i."
echo "Corrija isso e execute o script novamente!"
exit 1 # sai com codigo de erro
fi
if ! test -s ./scripts/$i/usuarios ; then # testa os usuarios
echo "O arquivo ./scripts/$i/usuarios nao existe ou esta vaziu!"
echo "Dentro deste arquivo deve estar o nome de cada um dos usuarios (um por linha) do grupo $i."
echo "Corrija isso e execute o script novamente!"
exit 1 # sai com codigo de erro
fi
done
}


###
### Funcao que retorna os grupos
###
GRUPOS()
{
GRUPOS=$(ls ./scripts) # lista os grupos
if test -z "$GRUPOS" ; then # Verifica nao existe nenhum grupo
echo "Nao existe nenhum diretorio de grupo dentro do diretorio scripts!"
echo "Dentro do diretorio scripts crie um diretorio com o nome cada grupo."
echo "Dentro do diretorio do grupo crie o bat do grupo chamado script.bat."
echo "No diretorio do grupo crie um arquivo chamado usuarios e dentro dele coloque um usuario por linha."
echo "Apos isso, execute o script novamente!"
exit 1 # sai com codigo de erro
fi
}


###
### Funcao que copia os bats para os usuarios
###
COPIABATS()
{
# mostra mensagem
echo "Iniciando a copia dos scripts bat de login..."
echo ""

for i in `echo $GRUPOS`; do # caminha pelos grupos
echo "Copiando o script bat de login do grupo $i."
for j in `cat ./scripts/$i/usuarios`; do # Caminha pelos usuarios
echo "Copiando o script de login do usuario $j."
cat ./scripts/$i/script.bat > ./$j.bat # copia com o cat
echo "Convertendo o script de login do usuario $j para o formato DOS."
unix2dos ./$j.bat 1>/dev/null 2>/dev/null # convete para o formato dos e manda a saida para o buraco negro
echo "Pronto!"
done
# linha em branco para dividir os grupos
echo ""
done
}


###
### Depois de criar as funcoes o script nao era mais vaziu, dai foram criadas as chamadas do script...
###

###
### Chama a funcao para verificar as dependencias do script
###
VERIFICADEPS


###
### Chamada da funcao que copia o script de login para cada um dos usuarios
###
COPIABATS

###
### Se tudo der certo sai com codigo de exito
###
exit 0

[5] Comentário enviado por rodrigo.kiyoshi em 18/04/2011 - 11:10h

Parabéns pelo tutorial, muito bom.

Uma dica: na ausência do unix2dos, use o sed.

De:
unix2dos ./$j.bat 1>/dev/null 2>/dev/null # convete para o formato dos e manda a saida para o buraco negro

Para:
sed -i 's/$/\r/' ./$j.bat 1>/dev/null 2>/dev/null # convete para o formato dos e manda a saida para o buraco negro


Abraços.

[6] Comentário enviado por qxada07 em 06/05/2011 - 08:34h

1000°

Parabéns

[7] Comentário enviado por yazanki em 02/02/2013 - 06:01h

Criei duas máquinas virtuais com o vmware. A primeira eu instalei o CentOS e defini duas interfaces pra ele, sendo uma NAT e outra HOST, a host por sua vez esta com o ip 192.168.40.130 q no caso seria a rede interna. A segunda maquina virtual, instalei o Windows XP e defini apenas uma interface sendo ela HOST e coloquei o ip 192.168.40.131. O problema é q não consigo adicioná-la no domínio, alguém poderia me explicar o que poderia está acontecendo???


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts