Sobre DNS Policies–Windows Server 2016–volume2–Balanceamento de Carga

11 de abril de 2017 Deixe um comentário

Saudações,

Dando continuidade a nossa série de posts sobre DNS Policies, hoje vou relembrar um post que publiquei a um tempo atrás falando sobre o uso do balanceamento de carga de aplicações.

Para quem ainda não leu o primeiro post desta série, segue abaixo o link:

Sobre DNS Policies – Volume1 – Teoria

1. Planejamento do Balanceamento de carga

Vamos clarificar que, o planejamento para alta disponibilidade e sizing de suas aplicações, você não deve somente se basear no que vamos falar aqui. Você precisa ter em mente os objetivos e tipos de acesso que serão necessários para a sua realidade. O balanceamento de carga pode ser feito via NLB Windows, Failover Clustering ou NLB via hardware (este um recurso mais indicado para aplicações que recebem muitos acessos). No caso de high availability em cloud, verifique as questões de elasticidade em termos desenvolvimento e veja como seu cloud provider trabalha em relação a isso.

Enfim, o balanceamento de carga via DNS Policies deve ser avaliado quanto sua eficácia para o negócio que seu aplicativo visa entregar a um departamento e/ou cliente final. Você precisa estar certo de que esta é a melhor opção para seu cenário.

2. Estudo de caso

Vamos propor aqui, como no artigo original publicado anteriormente, um estudo de caso que nos dará a base para a solução a ser implementada:

2.1. Tenho 4 servidores de aplicação – 1 em São Paulo, 1 no Rio de Janeiro, 1 em Fortaleza e  1 em Belo Horizonte

2.2. Fortaleza e Belo Horizonte possuem links com menos banda que SP e RJ

2.3. Essa aplicação vai atender a todo acesso que vier em qualquer uma das filiais da empresa

3. Cenário

Para atender a esta demanda, temos o seguinte desenho de solução:

 

image

4. Solução técnica

Com o exposto acima, vamos ver agora de forma prática como o DNS Policies nos ajuda a entregar essa solução de forma rápida e tudo via PowerShell!!

Primeiro vamos criar os escopos de zona. É a partir deles que a política vai se orientar para aplicar o que queremos. Para cada localidade onde tenho um servidor de aplicação vou crirar um Scope Zone.

Vou noema-los da seguinte forma:

São Paulo: SP_Scope

Rio de Janeiro: RJ_Scope

Fortaleza: For_Scope

Belo Horizonte: BH_Scope

Como fica as linhas de comando PowerShell para isso:

Add-DnsServerZoneScope –ZoneName “uilson.net” –Name “SP_Scope”

Add-DnsServerZoneScope –ZoneName “uilson.net” –Name “RJ_Scope”

Add-DnsServerZoneScope –ZoneName “uilson.net” –Name “For_Scope”

Add-DnsServerZoneScope –ZoneName “uilson.net” –Name “BH_Scope”

image

Com os Scope Zones criados, vou criar um registro tipo A dentro destes escopos, ou seja, cada escopo estará apontando para o IP do back-end server da localidade correspondente:

Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “AppServer” –IPv4 “10.10.0.10” –ZoneScope “SP_Scope”

Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “AppServer” –IPv4 “10.10.1.10” –ZoneScope “RJ_Scope”

Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “AppServer” –IPv4 “10.10.2.10” –ZoneScope “For_Scope”

Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “AppServer” –IPv4 “10.10.3.10” –ZoneScope “SP_Scope”

image

Agora que já temos os Zone Scopes criados e seus respectivos registros, vamos criar a política que fará o balanceamento de carga via DNS Policies:

Add-DnsServerQueryResolutionPolicy -Name "AppServerPolicy" -Action ALLOW – -ZoneScope "SP_Scope,3;RJ_Scope,3;For_Scope,2;BH_Scope,2" -ZoneName "uilson.net"

image

No comando acima observa-se que ao fim de cada Scope Zone foi colocado uma vírgula e um número (Ex: SP_Scope,3). Isto vai definir que para a cada 10 requisições feitas para o host “appserver.uilson.net”, teremos as 3 primeiras sendo direcionadas para o servidor em São Paulo, as próximas 3 para o servidor do Rio de Janeiro, as 2 seguintes para o servidor em Fortaleza e as 2 últimas para o servidor de Belo Horizonte. Dessa forma conseguimos balancear a carga entre as 3 localidades, respeitando os limites de link de cada uma delas.

5. Conclusão

Este post foi publicado novamente para seguir a série que começamos em 03/abril/2017 sobre DNS Policies. No próximo post falaremos sobre Gerenciamento de tráfego de Rede usando políticas de DNS.

Espero que você tenha gostado e que este conteúdo possa ajuda-lo em suas tarefas diárias.

Abraços

Uilson

Sobre DNS Policies–Windows Server 2016–volume 1–Teoria

3 de abril de 2017 Deixe um comentário

Saudações,

Falando em termos de Windows Server 2016 podemos citar, além de sua total integração e adequação à nuvem também aspectos on-premisses que vão aumentar muito a produtividade de seu datacenter em matéria de Segurança.

Vamos começar hoje uma série de posts voltados a DNS Policies no Windows Server 2016. Nas primeiras versões do ainda recém-divulgado SO Windows Server 2016 TP fiz um laboratório neste espaço acerca do balanceamento de carga de aplicações usando DNS Policies. Vou republicar este post para que a comunidade possa rever o tema e fica como o primeiro de uma série que iremos tratar.

palestra_preview

No que tange à Segurança da Informação levando em mente alguns dos seus principais pilares (Integridade, Disponibilidade e Confidencialidade), o DNS Policies traz possibilidades interessantes de expansão da capacidade de resolução de nomes.

De que forma e como posso configurar DNS Policies? Veja abaixo como:

1. Application Load Balance – Ao implementar vários nodes em uma farm de servidores de aplicação – seja IIS ou outro web server (ou até mesmo um client server) – o DNS Policies pode ser usado para balancear o tráfego entre os nodes desta farm. Diferente do antigo recurso de Round Robin o balanceamento do DNS Policies distribui a carga de forma dinâmica e mais inteligente podendo priorizar um ou mais nodes em relação ao direcionamento das requisições.

2. Gerenciamento de tráfego baseado em Geo-Localização – Para as requisições baseadas em localização geográficas o DNS Policies faz com que servidores DNS primário e secundário fazem o cliente ser redirecionado para o IP do recurso mais próximo, otimizando o tráfego e consumo de banda, dependendo da localização do destino.

3. Split Brain DNS – Com o recurso de Split Brain DNS os registros são divididos em diferentes escopos de zona no mesmo servidor DNS. Os clientes DNS recebem uma resposta baseado onde de fato estes clientes estão – internos ou externos. Este recurso pode ser configurado em zonas integradas ao AD ou para DNS Standalone servers.

4. Filtering – Neste caso você cria filtros de critérios baseados em requisitos definidos na criação da política propriamente dita, ou seja, a resposta de um DNS Server ocorrerá de acordo com a maneira que um cliente faz a query.

5. Foresincs – Um dos recursos que mais gostei nessa parte de políticas. Você pode fazer com que seu DNS redirecione requisições maliciosas para um IP não existente ao invés de direcioná-la para o computador que ela tenta alcançar.

6. Redirecionamento baseado na hora do dia – Vem como uma adicional à política de gerenciamento de tráfego. Você pode direcionar a requisição para um determinado local baseado em uma hora do dia, ou seja, a requisição vai para aquele servidor a partir de um determinado horário do dia.

Novos conceitos

Client Subnet – Um objeto Client Subnet representa uma range IP (IPv4 ou IPv6) a qual as queries são submetidas em um servidor DNS. Você pode criar client subnet’s que vão ser usadas em políticas de DNS que vai resolver/encaminhar uma requisição a um determinado destino baseado na range de IP definida em uma subnet client. Exemplo: Clientes da subnet 10.10.1.0/24 serão encaminhados ao node 2 da farm de servidores de aplicação, enquanto clientes da subnet 10.10.2.0/24 serão encaminhados ao node 1 da minha farm de servidores.

Recursion Scope – Um escopo de recursão contém uma lista de Forwarders e especifica se a recursão está ativada. Um DNS Server pode ter diversos recursion scopes e as políticas atreladas a ele irão ser direcionadas para o escopo que contemple aquela query. Você pode especificar quais forwarders serão utilizados e se utilizarão a recursão.

Zone Scopes – Um DNS Server pode ter diversos escopos de zona (Zone Scopes) contendo neles uma lista de registros. Um mesmo registro pode estar presente em diversos escopos de zona, com diferentes endereços IP. Políticas de Zone Transfer são feitas usando os escopos de zona.

Os conceitos acima se aplicam aos seguintes tipos de política: Query Resolution Policies, Recursion Policies, Zone Transfer Policies, Traffic Management, Block Queries from a Domain, Block Queries from a Subnet, Allow Recursion for Internal Clients, Create a Server Level Zone Transfer Policy, e finalmente, Create a Zone Leve Zone transfer Policy.

No decorrer desta série de posts veremos em exemplos práticos com PowerShell como usar todas as políticas citadas acima em seu ambiente. Não perca! Certamente ela vai ajudar bastante seu dia a dia para assimilar melhor essa nova funcionalidade no Windows Server 2016.

Em breve a parte de balanceamento de carga com DNS Policies será republicada.

A base de estudos para este post foi tirada do link abaixo:

https://technet.microsoft.com/en-us/windows-server-docs/networking/dns/deploy/dns-policies-overview

Abraços

Uilson

Usando PowerShell para corrigir vulnerabilidades via chave de registro

28 de março de 2017 Deixe um comentário

Saudações,

O post de hoje visa ajudar os administradores de rede e analistas de segurança no momento em que precisam planejar a mitigação e correção de alguns tipos de vulnerabilidades em estações de trabalho via chave de registro.

Normalmente, a empresa dispõe de uma ferramenta que faz o scan, encontra, classifica e exibe em relatório quais vulnerabilidades uma ou mais estações têm e como corrigir.

Agora, imaginem uma determinada vulnerabilidade a ser corrigida em diversas estações? Como fazer?

Uma forma é usar o comando PSEXEC do SysInternals para executar este trabalho. A partir de um arquivo de lote eu uma simples variável (%1), o problema pode ser resolvido. Entretanto, como nosso foco é disseminar todas as formas de otimização de tarefas com PowerShell, queria mostrar como o usei para resolver um problema num case real.

Recebemos a notificação de que uma determinada área da empresa precisava ter todas as estações com o parâmetro de SMB Signing habilitado. Este parâmetro criptografa todo fluxo de informações entre a estação e um file server, num processo semelhante ao do SMB Encryption, feito no Windows Server 2012 R2, entretanto, o processo aqui visa proteger estações com Windows 7 Professional.

Não existe uma console administrativa ou um processo via GUI para tal, portanto, como falei, ou você o faz via PSEXEC do SysInternals ou, no nosso caso, usando PowerShell.

O processo consiste na criação de uma chave de registry que vai habilitar o SMB Signing na estação:

Chave a ser criada – EnableSecuritySignature

Tipo – DWORD

Valor – 1

Endereço – HKLM\System\currentcontrolset\services\lanmanworkstation\parameters

Comando PowerShell a ser usado:

Invoke-Command -cn computername {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}

No comando acima, criamos a chave de registry remotamente em uma estação. Estou considerando aqui que o administrador tem amplo acesso ao equipamento remoto. Entretanto você pode se deparar com um ambiente em que seu usuário não tenha acesso àquela estação (ou grupo de estações) e precise declarar seu usuário. Neste caso você pode entrar com o seguinte comando:

$Auth = Get-Credential dominio\usuario
Invoke-Command -cn computername -Cred $Auth {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}

Ao executar este comando, você será solicitado a entrar com o usuário e senha com permissão de acesso na estação:

image

Ao entrar com as credenciais necessárias, o script faz criação da chave com o valor conforme citado acima.

Você pode conferir se a chave foi mesmo criada usando comando abaixo:

Invoke-Command -cn computername {Get-Item -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters"}

Abaixo o resultado:

image

Agora vamos considerar o fato de termos uma lista de estações a serem corrigidas. Como fazer? Você pode usar o PowerShell ISE e criar um script para isso, usando laços do comando For EACH:

ForEach ($WKS in (Get-Content C:\ComputerList.txt)){
    Invoke-Command -cn $WKS {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}
    }

Antes de executar o script acima, você precisa preencher o TXT citado na primeira linha e preencher com os nomes das estações. O processo será realizado em cada uma delas.

Espero que o conteúdo seja útil e ajude no seu dia a dia.

Abraços

Uilson

Criação e adequação em contas de parceiros externos via PowerShell

6 de março de 2017 Deixe um comentário

Saudações,

Neste primeiro post de 2017 vou compartilhar com vocês um trabalho feito a uns dias atrás na empresa onde trabalho.

Cenário – Uma consultoria foi contratada para dar suporte a uma aplicação on-premisses da empresa. O contrato tem duração da data de hoje até 31 de dezembro de 2017. Como se trata de uma solução de ERP instalada em um de nossos servidores, ficou acertado que 4 pessoas desta consultoria deveriam ter acesso como Administrator neste servidor para as devidas manutenções, migrações, etc. Entretanto, não posso simplesmente criar 4 novas contas no domínio e coloca-las como administrator de um servidor. Alguns critérios tiveram que ser seguidos para que as normas de segurança definidas pelo nosso time de Cyber Security não fossem quebradas.

Vou neste post mostrar como fiz, usando alguns exemplos em meu ambiente de laboratório.

Descrição do ambiente:

Domínio: uilson.net

Nome da empresa que vai alocar consultores: 123 Consultoria SA

Passos a serem seguidos na tarefa:

1. Criar uma OU específica para provedores externos

New-ADOrganizationalUnit -Name "ExternalProviders" -Path "DC=uilson,DC=net" -Description "OU para contas de usuários externos"

Acima criei a OU “ExternalProviders” que irá abrigar as OU´s de todos os meu parceiros externos que alocam pessoas em minha organização

2. Criar uma OU dentro daquela criada no item 1 descrevendo o nome da empresa

New-ADOrganizationalUnit -Name "123Consultoria" -Path "OU=ExternalProviders,DC=uilson,DC=net" -Description "OU para contas da 123 consultoria SA"

Acima criei a OU “123Consultoria” que vai ficar dentro da OU “ExternalProviders”.

3. Criar as contas de usuário já dentro dessa nova OU, definindo a senha provisória, solicitando alteração de senha no log on do usuário e seguindo as melhores práticas de segurança definir que cada conta será desabilitada em 31/12/2017

New-ADUser -Name "José da Silva 123 Consultoria" -SamAccountName jose.silva -UserPrincipalName jose.silva.ext@uilson.net -DisplayName "Jose da Silva – consultor externo" -Description "Usuário Consultor da 123 Consultoria" -Title "Jose da Silva – 123 Consultoria" -Enable $true -ChangePasswordAtLogon $true -AccountPassword (ConvertTo-SecureString "!!!zaq12wsx" -AsPlainText -force) -PassThru -Path "OU=123Consultoria,OU=ExternalProviders,DC=uilson,DC=net" | Set-ADAccountExpiration -DateTime "12/31/2017"

O comando acima cria o usuário “jose.silva” com uma senha pré-definida que deverá ser alterada no momento do primeiro log on do usuário, a localização da conta (dentro das OU´s que criamos anteriormente) e para casos como este de usuários externos, definição da data de expiração da conta, ou seja, o projeto ao que este usuário está alocado deverá se encerrar até 31/12/2017, data qual a conta será desabilitada.

O mesmo poderá ser repetido com outros usuários desta mesma empresa que vierem a integrar o quadro de consultores externos.

Agora vamos supor que o gestor do contrato com a “123 Consultoria” lhe peça pra listar a data de expiração da conta do consultor “José da Silva”, apenas para ter certeza de que a configuração de expiração da conta bate com a data final do contrato:

get-aduser jose.silva -Properties * | Select-Object Name,SamAccountName,AccountExpirationDate

No comando acima você receberá o seguinte resultado:

image

Vimos na imagem acima que a criação do usuário foi feita de forma a respeitar os processos de segurança da informação da empresa e também certifica que, em 31/12/2017 a conta do usuário listado não mais funcionará a partir da meia noite do dia citado.

Agora seu gerente quer saber quais são os recursos da “123 Consultoria” alocados na empresa. Sabendo qual a OU em que esses usuários estão criados você já pode fazer uma linha de comando mais elaborada:

Get-ADUser –Filter * –SearchBase “OU=123Consultoria,OU=ExternalProviders,DC=uilson,DC=net” | Select-Object Name,SamAccountName

Executando o comando acima você tem o resultado abaixo

image

Você pode mandar essas informações para seu gerente no corpo do email ou simplesmente  envie para um arquivo TXT e trate depois em um excel, basta incluir “> arquivo.txt” no fim da linha de comando exemplificada acima.

Depois de alguns dias, você recebe uma notificação de sua gestão dizendo que, pela complexidade do projeto no qual a 123 Consultoria está atuando, o tempo de contrato foi extendido, ou seja, não mais acabará em 31/12/2017 e sim em 31/12/2018. Dessa forma, os acessos da equipe alocada precisa continuar em funcionamento após a primeira data estipulada.

Neste caso você não precisa efetuar a alteração conta por conta. Simplesmente aplique o update para toda a OU “123Consultoria”:

O primeiro comando fará com que todos os usuários da 123 Consultoria tenham sua data de expiração alterada para 31/12/2018:

Get-ADUser -Filter * -SearchBase "OU=123Consultoria,OU=ExternalProviders,DC=uilson,DC=net" | Set-ADAccountExpiration -DateTime "12/31/2018"

Agora você pode tirar a prova para se certificar que a alteração foi feita usando o comando abaixo:

Get-ADUser -Filter * -SearchBase "OU=123Consultoria,OU=ExternalProviders,DC=uilson,DC=net" -Properties * | Select-Object Name,SamAccountName,AccountExpirationDate

Os comandos acima trazem o resultado na figura abaixo:

image

Com base na imagem acima, e tendo em mente os usuários externos da empresa, vamos para nosso último laboratório deste post. Depois de alguns meses de trabalho, o gerente da equipe de desenvolvimento entendeu que a consultora Hele de Jesus (userid – helena.jesus) desempenha um excelente trabalho no suporte ao produto ERP da empresa e lhe faz uma proposta de contratação como funcionária efetiva. A mesma aceita e agora vai fazer parte do quadro de funcionários.

Com todas as formalidades em dia, você da área de infra estrutura recebe uma solicitação para adequar o usuário de Helena ao padrão da empresa, ou seja, tem que mover a conta para a OU “DevTeam” que fica dentro de “ITDept”, mudar as descrições da conta e remover a data de expiração da conta, afinal, Helena agora é funcionária nossa!

Dessa vez vamos usar o editor de script´s PowerShell ISE, lembrando que para abrir este editor você apenas precisa digitar “ise” no prompt de comando do PowerShell. Como vamos rodar vários comandos, resolvi definir uma varíavel para o usuário “helena.jesus”. Veja como ficou abaixo:

$conta = "helena.jesus"
Get-ADUser $conta | Clear-ADAccountExpiration
Get-ADUser $conta |  Move-ADObject -TargetPath "OU=DevTeam,OU=ITDept,DC=uilson,DC=net"
Set-ADUser $conta -DisplayName "Helena de Jesus" -Description "Desenvolvedora ITDept" -Department "IT Department" -UserPrincipalName "helena.jesus@uilson.net" -Title "Helena de Jesus"

O script acima fica assim no ISE:

image

Após execução do Script, ainda vemos que um atributo permanece inalterado, conforme image abaixo:

image

O campo “Name” não foi alterado, permanece como “Helena de Jesus 123 Consultoria”. Isso ocorre porque este campo fica na propriedade DistinguishedName do usuário “helena.jesus”. Para que este campo seja renomeado corretamente, é preciso alterar o objeto “CN” do DistinguishedName. Abaixo mostro dois comandos, sendo o primeiro para listar o DistinguishedName do usuário e o segundo mostro como fazer a alteração necessária:

get-aduser helena.jesus | Select-Object distinguishedname

Rename-ADObject -Identity "CN=Helena de Jesus 123 Consultoria,OU=DevTeam,OU=ITDept,DC=uilson,DC=net" -NewName "Helena de Jesus"

image

Na tela acima você vê os resultados da aplicação dos comandos.

Agora o objeto aparece corretamente no AD:

image

Além disso, vemos que os procedimentos adotados removeram a data de expiração da conta:

image

Neste post vimos como configurar acessos no Active Directory para consultores externos seguindo as melhores práticas de segurança e todos os

Espero que possa ser útil no dia a dia de vocês.

Quero pedir desculpas pela demora em postar neste ano. Estou estudando para as provas da CompTIA. Vou começar com Cloud Essentials (o livro vc pode comprar no link no lado superior direito). Depois vou estudar Security+, depois vem Cloud+ e CSA (Cyber Security Analyst) – você pode ter uma visão geral de todas essas certificações em https://certification.comptia.org/pt/certificações

Seguiremos este ano com posts voltados a todo tipo de otimização de tarefas com PowerShell, Web Application Proxy e Azure AD Application Proxy.

Abraços

Uilson

Video da minha palestra sobre Segurança em Plataforma Microsoft pelo ARQENGTI

19 de dezembro de 2016 Deixe um comentário

Saudações,

No último dia 19/12/2016, em evento da ARQENGTI (Arquitetos e Engenheiros de TI), falei sobre o tema “Segurança em Plataforma Microsoft”.

Fiquei muito feliz pela quantidade de pessoas não só do Brasil, mas, de vários países como Portugal, Angola e Estados Unidos!

Falamos sobre a montagem de um ambiente desde a parte física, arquitetura de ambientes, ferramentas para scan de vulnerabilidades, WPAD no DNS, Proxy Reverso, Next Generation Firewall e ferramenta de anti-malware. Tudo isso, mostrando exemplos e dicas para ambientes on-premisses e cloud – usando Azure como exemplo (Azure AD, Azure RMS, Azure AD App Proxy).

Em um formato totalmente diferente de tudo que já participei em termos de WebCast, trocamos idéias, tivemos excelentes intervenções dos mestres Fábio Oliveira e Marcelo Stripolli, além termos a alegrias de presentear um livro “Cloud Essentials” ao expectador Anderson Jacobsen que irá receber o mesmo num oferecimentoda Nova Terra Editora.

Abaixo o video na integra do evento para quem não pôde ver, ou para quem viu e quer rever:

image

Espero que os conceitos e dicas aqui tratados possam ser úteis a todos!

Que todos os que acompanham este blog e a fan page do facebook tenham um excelente natal e um 2017 repleto de sucesso e realizações!

Abraços

Uilson

Categorias:Não categorizado

Participe da minha palestra–Segurança em Plataforma Microsoft–e concorra a um livro!

12 de dezembro de 2016 Deixe um comentário

Saudações,

Depois de quase 1 ano sem palestrar devido a várias razões, vou falar no evento da ARQENGTI (Arquitetos e Engenheiros de TI) mais uma vez sobre o tema “Segurança em Plataforma Microsoft”.

No passado apresentei esse tema em outros eventos com o nome “Segurança para Redes Microsoft” onde focava mais no que tinhamos de urgente no momento – on premisses.

Na palestra que vou apresentar, vamos falar não só de on premisses, mas, tb de Cloud e também apresentar as principais ferramentas Microsoft que podem te proporcionar segurança em seu ambiente a custo baixo ou zero.

Falaremos sobre os seguintes temas:

image

Vou abordar como montar uma rede já pensando no aspecto de segurança tanto on premisses como Cloud, usar (ou não usar) o registro WPAD no DNS para apontamento de proxy, o que a Microsoft dispõe para scan de vulnerabilidades, patche managemnet, segurança de rede (802.1x), para quem saiu do ISA Server/TMG, como pensar em proxy reverso, além de uma vasta e detalhada documentação para estudo.

Também será sorteado um livro “Cloud Essentials” escrito pelo Yuri Diógenes para os participantes do evento. Livro este cedido pelo Nova Terra Editora.

Também vou mostrar uma ferramenta de anti-malware muito boa que poderá te ajudar de forma eficaz no combate a ameaças em seu ambiente, principalemnte ransomware.

Não perca, o evento ocorre nessa semana, dia 16/12/2016 as 21:30. É totalmente gratuíto e você pode se cadastrar clicando na figura abaixo:

image

Espero você lá!

Abraços

Uilson

Categorias:Não categorizado

DNS Server–Configurando a Global Query Block List via PowerShell

28 de novembro de 2016 Deixe um comentário

Saudações,

Aos que estão acompanhando a nossa série de artigos sobre otimização de tarefas com PowerShell, hoje vou fazer um “adendo” ao 5o. post – Otimização de tarefas com PowerShell – DNS Server.

Um dos pontos de atenção nas empresas nos últimos anos é a configuração do acesso ao proxy usando o registro wpad do DNS Server. O mesmo pode ser configurado via DHCP também, mas, deixarei isso para um próximo post.

Por questões de segurança, desde o Windows Server 2008, o registro WPAD e ISATAP (registro que auxilia na comunicação de dipsositivos IPv4 e IPv6), estão bloqueados para uso. Entretanto, o administrador do ambiente pode escolher entre:

1. Ativar um desses registros – via PowerShell com via linha de comando DNSCMD

2. Desativar a Global Query Global List

Um exemplo de como configurar essa funcionalidade via linha de comando foi dada no meu artigo de 16/07/2013 onde citei a configuração do WPAD via DNS usando o DNSCMD.

No nosso caso em que estamos destrinchando o PowerShell para nosso dia a dia, estou deixando aqui um exemplo prático de como usar o comando Get-DnsServerGlobalQueryBlockList e Set-DnsServerGlobalQueryBlockList

No primeiro exemplo vamos listar os hosts que estão bloqueados pelo Global Query Block List:

Get-DnsServerGlobalQueryBlockList

Em seguinda vamos liberar o uso do registro WPAD:

Set-DnsServerGlobalQueryBlockList –List “isatap” –Passthru

O comando acima vai reconstruir a Global Query Block List deixando bloqueado somente o registro “ISATAP”.

Agora vamos reconstruir a Global Query Block List inclindo, além do ISATAP, o WPAD também;

Set-DnsServerGlobalQueryBlockList –List “wpad, isatap” –Passthru

Se você quiser, também pode desabilitar a Global Query Block List (o que não recomendo):

Set-DnsServerGlobalQueryBlockList –Enable $False

E para habilitar de novo:

Set-DnsServerGlobalQueryBlockList –Enable $True

Abaixo um exemplo prático de como você visualiza todos os comandos citados:

image

No próximo post quero voltar ao Web Application Proxy, mostrando como configurar seu ambiente para aplicações com autenticação Kerberos.

Fique ligado aqui no blog e na fan page – facebook.com/usouzajr.

Abraços

Uilson

%d blogueiros gostam disto: