segunda-feira, 13 de junho de 2011

Erro "Access is denied" ao efetuar logon em servidor de terminal service

Recentemente, me deparei com um problema um tanto bizarro. Ao tentar efetuar logon em servidor de terminal services com o Windows Server 2008 R2 SP1 instalado, utilizando uma conta do Active Directory que era membro de muitos grupos, era obtida a mensagem de erro: "Access is Denied".
Bem, ao olhar no event viewer, nenhum erro foi encontrado. Ao efetuar logon com conta, diretamente na máquina, o erro não acontecia. Ao testar em um servidor com o Windows Server 2008 SP2, o logon era efetuado com sucesso, sem erros.
Primeiramente, poderia-se pensar no problema do limite de 1015 grupos suportado pelo Active Directory, conforme descrito no artigo http://support.microsoft.com/kb/328889/en-us, porém, a conta era membro de muitos grupos, mas não chegava a 1015.
Após várias pesquisas e testes, um companheiro meu encontrou a reposta. Neste artigo da Microsoft, é descrito o valor MaxTokenSize e fala justamente sobre o problema do usuário ser membro de muitos grupos. No entanto, o documento diz que é só instalar o último service pack do sistema operacional que o problema é resolvido.
Neste caso, o último service pack estava instalado :( . Bem, encontrou-se então outro documento, situado neste link: http://support.microsoft.com/kb/938118/en-us. Ele mostra como alterar o valor MaxTokenSize.
Assim, no servidor de terminal service com problemas, foi criado o valor abaixo no registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters
Entrada: MaxTokenSize
Tipo: REG_DWORD
Valor: 65535
Em seguida, o servidor foi reiniciado. Após isso, o problema foi resolvido e os usuários conseguiram efetuar logon sem problemas!

 
Um abraço e até a próxima!

sexta-feira, 14 de janeiro de 2011

Bloquear gravação de arquivos indesejados em compartilhamentos do Samba

O Windows Server, a partir da versão 2003 R2, possui o recurso File Screening, o qual é possível bloquear a gravação de arquivos no servidor, utilizando uma lista com extensões. Por exemplo, para a criação de uma política que bloqueia arquivos de música, as extensões mp3, wma, ogg, entrariam para a lista.
Bem, felizmente, para quem utiliza a dupla Linux/Samba, também é possível realizar tal bloqueio e de forma simples. Vamos supor que se deseja negar a gravação dos arquivos de música citados acima nos compartilhamentos.
No arquivo de configuração do Samba, vá até a seção das opções do compartilhamento e insira a diretiva abaixo:

veto files = /*.mp3/*.wma/*.ogg/

Na realidade, a política se aplica a arquivos que terminam com o nome .mp3, .wma e .ogg. Desta forma, também possível, por exemplo, bloquear arquivos que contém a string xxx no nome:

veto files = /*xxx*/

Abaixo há um exemplo da diretiva aplicada a um compartilhamento:

[documentos]
        comment = Documentos da rede
        path = /var/documentos
        valid users = @usuarios
        write list = @admin
        read only = No
        create mask = 0770
        directory mask = 0770
        veto files = /*.mp3/

Lembrando que após esta alteração é necessário reiniciar o daemon do Samba.
Esta diretiva irá não só bloquear a gravação dos arquivos, mas também irá ocultar os que já existem. Os usuários não conseguirão visualizá-los ao acessar a pasta compartilhada.
Uma outra dica é excluir ou mover os arquivos indesejados nas pastas compartilhadas do servidor de arquivos:

# find /var/documentos -name "*.mp3" -exec rm -fv {} \; (Para excluir os arquivos)
# find /var/documentos -name "*.mp3" -exec mv {} /var/lixo \; (Para mover os arquivos)

Um abraço e até a próxima.

sexta-feira, 3 de dezembro de 2010

Bloqueando broadcast no rádio Mikrotik

Recentemente, adquirimos dois rádios da Mikrotik para interligar a unidade principal da empresa a um prédio que fica próximo, alguns metros de distância. Os rádios foram instalados nos dois locais e configurados no modo bridge. Desta forma, todos os pacotes são encaminhados entre os rádios, gerando um problema: se tudo é transferido para a outra ponta, o tráfego broadcast também e? A resposta é sim!
Isso gerou vários transtornos, pois eles interligam duas sub-redes com faixa de endereços IP diferentes, porém, com o broadcast viajando pra todo lado, uma estação ao ser ligada, por exemplo, enviava um broadcast solicitando um endereço IP para um servidor DHCP e, às vezes, recebia resposta do que estava instalado em outra sub-rede.
Bem, após várias consultas ao Google, encontrei um fórum onde simplesmente era dito que se deveria "criar um filtro para o tráfego de broacast na bridge". Legal, mas e aí, onde raios fica isso? Bem, resolvi escrever este artigo, pois ele complementa, explicando como realizar a tal configuração.
Outro comentário que gostaria de fazer é que também foi criado um filtro para bloquear os pacotes arp, pois, ele só é utilizado na comunição de computadores em uma mesma sub-rede.
Bem, vamos a obra.
Gostaria de lembrar que na interface web do rádio não há esta opção. É necessário utilizar o winbox.
Após efetuar o logon, na tela inicial, clique em Bridge.



Em seguida, será aberta a tela de configuração da bridge. Vá na aba Filters e clique no botão indicado na figura abaixo.




Primeiramente, vamos criar o filtro que bloqueia os pacotes arp. Assim, nas configurações do novo filtro, deve-se escolher o chain FORWARD, o qual é aplicado aos pacotes que trafegam através do rádio, de uma interface a outra. As configurações devem ficar iguais a exibida na figura abaixo.



Para finalizar, é necessário acessar a aba Action e escolher drop.




Após clicar em OK, o filtro será criado.
Agora, vamos para a criação da regra que bloqueia o broadcast.
Na tela de criação do novo filtro, com exceção da opção MAC Protocol, as demais são iguais a do filtro para o protocolo arp.




Em seguida, deve-se acessar a aba Advanced e em Packet Type selecionar Broadcast.




Para finalizar, escolha drop na aba Action e clique em OK para salvar as alterações.
Após a criação dos filtros, eles serão exibidos conforme abaixo.




Um abraço e até a próxima.