terça-feira, 28 de agosto de 2012

Linux - Lentidão para logar no SSH

Eae pessoal,

montei um servidor com CentOs 6.2 a uns dias atrás e estava encafifado com a demora para logar nele via SSH, então aí vai a dica:

Edite o arquivo /etc/ssh/sshd_config

Adicione a linha: UseDNS = no

Salve o arquivo.

De um restart no ssh: /etc/init.d/sshd restart

Pronto, vai logar normalmente!

Vlw

quinta-feira, 23 de agosto de 2012


Olá pessoal,

abaixo segue um arquivo do samba "smb.conf" feito no CentOs6.2, com este arquivo você tem:

* Domínio
* Troca de senha do usuário pelo Windows
* Script de logon
* Log de auditoria
* Compartilhamento de arquivos
* Lixeira


#******CONFIGURACOES DO SAMBA******

[global]
        #Grupo de trabalho ao qual o servidor pertence
        workgroup = HOERLLE

        #Nome do servidor, atraves do qual sera identificado na rede Windows
        netbios name = PDC

        #String de identificacao do servidor: NAO AFETA EM NADA AS CONFIGURACOES
        server string = Servidor PDC

        domain master = yes
        domain logons = yes

        #Script de inicializacao que os usuarios utilizarao ao logar no dominio
        logon script = netlogon.bat

        #Se estiver configurando o servidor como controlador de dominio a opcao deve ser "USER"
        security = user

        #Encrypt passwords deve estar ativado para conversar com maquinas windows, pois as mesmas usam criptografia desde a versao Windows 95 OSR/2 e Windows NT4 SP3
        encrypt passwords = yes

        #Clientes poderao trocar sua senha de login
        password sync = yes

        enable privileges = yes

        #Base de dados com as senhas dos usuarios que serao utilizados. O recomendado para nosso dominio samba em uma rede com muitos usuarios  e o TDBSAM.
        #Em casos onde nao estamos utilizando um dominio pode ser utilizado o backend "SMBPASSWD"
        #Para verificar os usuarios cadastrados na base TDBSAM de o comando "pdbedit - Lw" no linux.
        #Em casos onde usamos o LDAP o nosso paramaetro aqui sera o "ldapsam"
        passdb backend = tdbsam

        # Level para ganhar a "eleicao" para ser o "mestre" a montar e atualizar a lista de compartilhamentos disponiveis e envialas aos demais recursos da rede.
        # Os clientes Windows tambem fazem esse trabalho, definindo este valor como 100 o Samba sempre ganhara a eleicao das maquinas WIndows.
        # O samba faz este trabalho muito bem e por isso normalmente definimos para ele fazer essa tarefa.
        # Obs importante: Nunca colocar dois servidores samba na rede com o mesmo OS Level e a opcao Preferred Master ativada, eles iniciarao uma disputa fazendo com
        #que a rede fique intermitente.
        os level = 100

        # Usando o mesmo criterio acima, quando a opcao local master esta como "YES" isso faz com que o samba convoque uma nova eleicao sempre que ele achar
        #necessario para defender sua "candidatura".
        local master = yes

        #Ainda no mesmo criterio acima se a opcao "preferred master" estiver ativada, no caso de um empate na "eleicao" o servidor samba sera escolhido
        preferred master = Yes

        #Deixar ativada para o samba atuar como servidor Wins.
        #Wins e um protocolo auxiliar dentro das redes microsoft responsavel pela navegacao na rede, listagem de compartilhamentos, etc
        #A rede vai funcionar bem sem WINS mas sem ele os clientes passam a usar pacotes de broadcast para navegacao aumentando o trafego na rede.
        #E necessario configurar os clientes para utilizar o servidor Wins. No Windows e feito nas avancadas do TCP IP
        #Se tiver um servidor DHCP e possivel parametrizar para enviar a configuracao do WINS automaticamente
        #No linux para configurar um cliente basta add a opcao "WINS SERVER = IP DO SERVIDOR" na configuracao do SAMBA.
        wins support = Yes

        #A opcao "wins server" deve ser deixada em branco a menos que tenha outro servidor Wins na rede.
        wins server =

        #Limita para o samba ser acessado apenas pela(s) placa de rede selecionada
        interfaces = eth1
        bind interfaces only = yes

        #Ao logar no dominio ele pode procurar um perfil remoto, se deixarmos o logon path em branco ele cria um diretorio local no windows para o usuario de dominio
        logon path =

        #Com estas opcoes ativadas, ao alterar a senha de um usuario com o "smbpasswd" automaticamente ele altera a senha do usuario local no linux como se voce desse tambem um "passwd"
        #unix password sync = yes
        #passwd program = /usr/bin/passwd %u
        #passwd chat = "Changing password for*\nNew password*" %n\n "*Retype new password*" %n\n"

        #A opcao abaixo faz o linux testar ate X niveis o usuario digitado para autenticar no samba. Acontece que o linux nao é case sensitive como o Windows.
        #Desta maneira se o usuario no linux tiver a primeira letra minuscula e no windows for digitado com ela em maiusculo dara erro
        #Como exemplo a nossa opcao esta setada para 2 e o teste do usuario "vini" ficaria assim "VIni" "vINi" "Vini" "vInI"
        #username level = 2

        #Essas duas linhas fazem o servidor salvar os arquivos nos diretorios todos com letras minusculas, agilizando assim a busca devido a problemas case sensitive.
        #preserve case = no
        #default case = lower

        #Esta opcao deve incluir a faixa de IP ou os Ip's dos computadores que podem acessar o servidor
        #Se for definir uma faixa inteira pode digitar apenas 192.168.30 ou 10.1.1 por exemplo

        #hosts allow = 192.168.30

        #Esta opcao faz o contrario da opcao acima, aqui voce pode dizer quais maquinas nao podem acessar o servidor

        #hosts deny = 192.168.30.90

        #******AUDITANDO ACESSOS NO LINUX******
        #A partir da versao SAMBA 3.04 podemos utilizar desta forma
        #A configuracao abaixo pode ser usada na sessao GLOBAL para pegar todos os compartilhamentos ou na configuracao de cada compartilhamento
        #Apos fazer toda a configuracao abaixo e necessario ainda editar o arquivo /etc/syslog.conf e add a linha: local5.notice /var/log/samba-full_audit.log
        #Ativa a auditoria
        vfs objects = full_audit

        #Define quais operacoes serao auditadas
        full_audit:sucess = open, opendir, write, unlink, rename, mkdir, rmdir, chmod, chown

        #Onde cada opcao se trata de:

       
        #open = ler um arquivo
        #opendir = ver os arquivos dentro de uma pasta
        #write = alterar um arquivo
        #unlink = deletar um arquivo
        #rename = renomear um arquivo
        #mkdir = criar um diretorio
        #rmdir = remover um diretorio
        #chmod = alterar as permissoes de acesso de um diretorio
        #chown = mudar o dono de um arquivo

        #Define as informacoes que serao incluidas no log
        full_audit:prefix = %u|%I|%S

        #Onde cada opcao se trata de

        #%u = Nome do usuario. %I = IP do computador. %S = Nome do compartilhamento onde foi feito a acao.

        #Evita que um grande volume de mensagens de alerta sejam logadas
        full_audit:failure = none

        #Configura o nivel dos alertas
        full_audit:facility = local5
        full_audit:priority = notice

#******COMPARTILHAMENTO DE ARQUIVOS ******
#Algumas opcões que podem ser utilizadas

#path = /dados #Caminho do diretorio a ser compartilhado
#comment = Arquivos #Comentario sobre o diretorio
#read only = yes/no #Diretorio sera ou nao apenas para leitura
#hosts allow = #Aqui voce coloca os IP's ou faixa de Ip's que terao acesso a esse compartilhamento, obs. Se definido este parametro na secao GLOBAL, vale o da GLOBAL.
#hosts deny = #Aqui voce coloca os IP's ou faixa de IP's que nao terao acesso a esse compartilhamento, obs. Se definido este parametro na secao GLOBAL, vale o da GLOBAL.
#browseable = yes/no #Define se o compartilhamento sera visivel na rede ou sera oculto
#available = yes/no #Define se o compartilhamento esta ou nao ativo
#writable = yes #Define permissao de leitura e escrita para o compartilhamento
#valid users = usuario, +grupo #Ao definir esta opcao todos os outros usuarios e grupos que nao estiverem aqui listados, nao terao acesso ao compartilhamento
#invalid users = usuario, +grupo #Funciona da mesma forma que "valid users" porem ao contrario.
#write list = joao #Se voce definir o grupo "arquivos" no valid users, o joao faz parte desse grupo e como apenas ele esta no write list, so ele vai poder alterar os arquivos
                   #Para usar esta opcao, a opcao writable deve estar setada como NO


[netlogon]
        comment = Servico Logon
        path = /var/samba/netlogon
        browseable = No

[dados]
        comment = Dados
        path = /dados
        browseable = yes
        write list = vinicius
       
        #Ativa a lixeira do samba
        vfs object = recycle
        #Define o diretorio onde serao jogados os arquivos deletados, nesse caso utilizamos o parametro %U para criar um diretorio para cada usuario com seus arquivos deletados.
        recycle:repository = /dados/lixeira/%U
        #Organiza os arquivos deletados da mesma forma como estavam dentro do diretorio original
        recycle:keeptree = yes
        #Evita que os arquivos com estas extensoes sejam guardados na lixeira
        recycle:exclude = *.iso, *.avi, *.divx
        #Evita que os diretorios listados sejam guardados na lixeira
        recycle:exclude_dir = tmp
        #Guarda varias versoes do mesmo arquivo deletado. Ex: samba1.txt samba2.txt samba3.txt
        recycle:versions = yes

#OBS: Caso deseje ativar a lixeira para todos compartilhamentos, pode-se definir sua configuracao na sessao GLOBAL.


#*********************OUTRAS CONFIGURACOES**********************#
#Com a configuracao acima, basta reiniciar o servidor samba que seu dominio estara criado. Porem ainda precisamos cadastrar a conta root no samba, criar os usuários que pertencem a esse domínio e também é necessário criar uma conta bloqueada para cada computador que adicionaremos aqui.
#Precisamos ainda criar o diretorio "Netlogon" onde ficara o arquivo de incializacao dos usuarios e o diretorio profile.pds. O profile.pds é onde o Windows armazena as informacoes de sessão cada vez que o usuário loga no dominio
#Precisamos adicionar no arquivo /etc/shells a linha: /bin/false

#Para cadastrar a conta root no samba
#smbpasswd -a root

#Para criar o diretorio profile.pds
#Vamos cria-lo dentro de /etc/skel/ assim automaticamente sera criado para cada usuario
#mkdir /etc/skel/profile.pds

#Para criar o diretorio netlogon
#mkdir -p /var/samba/netlogon
#chmod 775 /var/samba/netlogon

#Edite o arquivo /etc/shells e adicione a linha "/bin/false" sem as aspas

#Para cadastrar usuarios de dominio
#adduser vinicius
#smbpasswd -a vinicius

#Para cadastrar a conta de maquina que quer entrar no dominio
#useradd -d /dev/null -s /bin/false WINXP$
#passwd -l WINXP$
#smbpasswd -a -m WINXP

#ONDE -d /dev/null significa que a conta nao tem um diretorio HOME
#-s /bin/false significa que nao possui um shell valido
#passwd -l significa que esta travada
#-m significa que e uma conta de maquina

#Crie dentro de /var/samba/netlogon o arquivo netlogon.bat
#Nesse arquivo voce pode configurar para mepar uma unidade por ex. quando o usuario fizer logon no dominio
#net use X: \\192.168.0.10\dados /yes

#***********************OUTRAS OBSERVACOES************************#
#Se voce estiver com o SELINUX e/ou IPTABLES ativado e nao configurados corretamente, pode ocorrer uma falha ao add um computador no dominio. Isso ocorre devido ao bloqueio gerado por uma das duas ferramentas.