Powershell

Exchange 2013 – Script Virtual Directory HTML Report

Uma dica bem legal que no site do MVP Michael “Van Hybrid” foi um script para tirar um relatório dos seus diretórios virtuais do Exchange.

Funciona da seguinte maneira.

  1. Acesse o site dele aqui e baixe o Script
  2. Salve o script por ex. no diretório c:\temp
    image
  3. Abra o Shell do Exchange e digite – Get-VirDirInfo –filepath c:\temp e execute
    image
  4. Verifique que foi gerado um documento HTML, conforme abaixo
    image
  5. Abra o documento HTML e verifique as informações

Perceba que você tem disponível visualmente em um relatório HTML, todos os detalhes dos diretórios virtuais do Exchange.

O registro SCP do AD (AutodiscoverInternalURI), OWA, ECP etc.
image 
image
image

Detalhe, para funcionar em ambiente de coexistência e me trazer as duas versões conforme abaixo, eu tive que rodar a partir do Exchange 2013 Shell.

image

Share

Post to Twitter

Exchange – Adicionando membros à um grupo de distribuição através de um arquivo CSV

Vou mostrar como adicionar membros à um grupo de distribuição a partir de um arquivo CSV.

Vamos criar um arquivo chamado “DistributionGroup.csv" e colocar os usuários dentro, conforme o formato abaixo:

image

Após salvar o arquivo no formato CSV, vamos importar para um grupo de distribuição no Shell do Exchange, conforme comando abaixo:

Import-Csv .\DistributionGroup.csv | ForEach {Add-DistributionGroupMember -Identity "MsItpro" -Member $_.smtpaddress}

Depois, basta ir até o grupo de ditribuição e conferir a opção membership, seus usuários irão aparecer na janela no lado direito.

image

Para maiores informações sobre o comando cima, visite:

Se você deseja que membros sejam adicionados dinâmicamente, você deve verificar a opção de Dynamic Distribution Group. Para maiores informações, visite:

Logo irei postar um artigo sobre Dynamic Distribution Group.

Share

Post to Twitter

Dica: E-book PowerShell para IT Pro

Uma dica para os leitores do Blog é o livro ebook gratuito do Daniel Donda. O livro aborda o Powershell com um foco para infraestrutura, que ajuda muito no dia a dia dos IT Pros.

Segue link para o site do Donda:

http://www.mcsesolution.com/Livros/e-book-powershell-para-it-pro.html

Para baixar o ebook clique na página abaixo que será redirecionado:

PowerShell-3.0-Ebook

Recomendo a leitura!

Abs.

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

Que tal executar um comando powershell, e confirmar cada uma das etapas. Na verdade, executar o comando no modo debug?

Tente isso e veja o resultado:

Test-MAPIConnectivity -Server <MailboxServer> -Debug

Um ótimo parâmetro para aqueles momentos onde o erro não parece fazer sentido…

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

Quer saber em detalhes o que ocorre em um comando no Exchange Management Shell?

Faça um teste!

Primeiro use o Test-OutlookConnectivity -Protocol TCP para verificar o status da conexão RPC over TCP.

Depois utilize o comando Test-OutlookConnectivity -Protocol TCP – Verbose e compare o resultado.

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

Você tem uma lista de alias em um .csv/.txt e deseja executar um mesmo comando para cada um deles? Usando dois cmd-lets em conjunto, você irá atingir esse objetivo.

Primeiro importamos o conteúdo, e logo em seguida com o uso do pipe aplicamos o cmd-let desejado em cada um dos alias contido no csv/txt através do loop “foreach”.

No exemplo à seguir, iremos aplicar um novo valor para o parâmetro IssueWarningQuota em cada alias:

printScreen_045

Com uma simples linha você aplicou o comando na lista que ja tinha “em mãos”.

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

Muitas vezes queremos listar informações, de uma mailbox por exemplo, entretando as colunas ficam sobrepostas. Observe no exemplo abaixo:

printScreen_043

Para que as colunas sejam automaticamente ajustadas, utilize o parâmetro -AutoSize do modo de exibição ft (FormatTable). Confira no exemplo:

printScreen_044

;)

Share

Post to Twitter

Quick Tips – Exchange 2010 Shell

Essa é da série de dicas rápidas (quick tips), onde daremos dicas curtas e úteis sobre as ferramentas.

Sempre que você precisar lembrar algum comando no Exchange 2010, você pode usar o shell para consultar alguns exemplos. Vejamos abaixo.

Get-Help Set-RemoteDomain –Examples

 

image

A estrutura será sempre a mesma para outros comandos:

Get-Help – pedir ajuda Smiley piscando

Set/Get, etc – Comando a ser pesquisado

-Examples – Lista exemplos de uso do comando

[]s

Share

Post to Twitter

Hyper-V – Templates de VM com Differencing Disks

Introdução

Uma dica muito boa para se criar laboratórios no Hyper-v, ainda mais agora com o Windows 8, é fazer uso de templates e differencing disks.

Navegando por alguns blogs interessantes, encontrei uma dica matadora parar automatizar esse processo com o PowerShell e resolvi indicar aqui para vocês.

Vou demonstrar no meu lab como funciona e como é muito útil!

O Lync de referência é:

http://lyncdup.com/2012/06/creating-hyper-v-3-differencing-disks-in-server-2012-with-gui-and-powershell/

Recomendo que leiam com atenção o artigo original. Só quero repassar aqui na prática e mostrar que funciona. Alegre

Desenvolvimento

Podemos criar templates de VMs para criarmos novas máquinas virtuais com apenas alguns cliques. Nesse artigo vamos criar o template utilizando Differencing Disks.

Differencing Disks podem ser usados para se economizar espaço em disco ao se criar as novas VMs, e diminuir a quantidade de vezes que tem que atualiza-la, pois elas se utilizam do disco criado para uma VM parent, ou base como eu gosto de dizer.

Para saber mais sobre Differencing Disks recomendo o seguinte link do Technet Wiki:

http://social.technet.microsoft.com/wiki/contents/articles/1393.hyper-v-virtual-machine-vm-parent-child-configuration-using-differencing-disks.aspx#CreateDiffVMC

Tem toda a explicação e passo a passo para se criar.

Abaixo os passos necessários:

  • Criar uma VM base e seu VHD
  • Instalar todos os updates
  • Sysprep da VM
  • Tornando o disco read only
  • Criando o Diff Disk
  • Criando nova VM para usar o Diff Disk
Criar uma VM base e seu VHD

Nesse passo, criei uma VM comum “Windows 2008 R2 Template”.

clip_image002

Instalar todos os updates

Nessa fase, costumo fazer o seguinte:

  • Windows Update
  • Desabilito o firewall
  • Instalo o .NET Framework
  • Desabilito o Internet Explorer Enhanced Security Configuration (IE ESC)

Mas fique a vontade para customizar conforme sua necessidade.

clip_image004

 
Sysprep da VM

Nessa fase vamos fazer o sysprep da VM com a opção de generalize, deixando a opção para desligar a VM marcada. Dessa forma evitamos o velho problema de SID duplicado.

Iniciar –> executar –> sysprep.

clip_image005

clip_image006

clip_image007

Aguardar finalizar e desligar a VM.

clip_image008

 
Tornando o disco read only

O disco da VM base / parent deve ficar marcado como read only, com base nesse disco vamos criar os discos diferenciais futuros. Vamos até as propriedades da VM que criamos como template e marcar o disco como read only.

clip_image009

 
Criando o Differencing Disk

Aqui entra o diferencial que citei no artigo da introdução, segue novamente como referência:

http://lyncdup.com/2012/06/creating-hyper-v-3-differencing-disks-in-server-2012-with-gui-and-powershell/

Como já temos nossa VM base instalada, com o sysprep e o disco read only, é hora de criar os novos VHDs que usarão o differencing disk, isso irá reduzir drasticamente o espaço ocupado pelo novo VHD.

O mais legal é poder apenas copiar e colar os comandos, só troque para o nome que precisar e aponte o local dos arquivos e pronto, ele monta e liga a VM para você configurar. Smiley piscando

Exemplo:

New-VM –Name lab1-dc01 –MemoryStartupBytes 1024MB -SwitchName “LAB1” -Path E:\14-VMs\LAB1\lab-dc01 -Verbose

New-VHD –ParentPath "E:\14-VMs\Templates\Windows2008R2\Windows 2008 R2 Template.vhdx" –Path E:\14-VMs\LAB1\lab1-dc01\lab1-dc01.vhdx -Differencing

Add-VMHardDiskDrive lab1-dc01 -Path E:\14-VMs\LAB1\lab1-dc01\lab1-dc01.vhdx

Start-VM lab1-dc01

clip_image011

Se olharmos o Hyper-V agora, vamos verificar a VM já iniciada pronta pra ser configurada.

clip_image013

clip_image015

Agora se verificarmos o espaço ocupado pela VM em disco, podemos verificar a economia por estar usando os arquivos essenciais da VM base que criamos.

clip_image017

Abaixo o tamanho da nossa nova VM.

clip_image019

Para comparar, vamos abrir nossa VM original, criada como base.

image

O que acha? Uma VM normal com 13GB! E nossa outra VM com aproximadamente 1GB!

Conclusão

Divirtam-se Alegre

 

Tiago Ferreira

Share

Post to Twitter

Criando contas de usuários com o Windows PowerShell no Windows Server 2008

Objetivo: Automatizar a criação de contas de usuários no Windows Server 2008 pelo Windows PowerShell

1. Vá em iniciar e abra o Windows PowerShell

2. Conecte-se a OU CPD(Coloque a OU que você preferir no meu caso estou trabalhando com a ou CPD) e digite o comando:
$objOU=[ADSI]“LDAP://OU=CPD,DC=microsoft,DC=com”

3. Crie um usuário na OU digitando o comando:
$objUser=$objOU.Create(“user”,”CN=Flavio Honda”)

4. Informe o atributo obrigatório, o  nome de logon pré-Windows 2000 do usuário, digitando o comando:
$objUser.Put(“sAMAccountName”,”flavio.honda”)

5. Confirme as modificações no Active Directory digitando o comando:
$objUser.SetInfo()

6. Confirme se o objeto foi criado digitando o comando:
$objUser.distinguishedName

O nome Distinto do usuário deve ser retornado.

7. Examine os atributos do usuário que o o Active Directory configurou automaticamente digitando o comando:
$objUser | get-member

Esse comando conecta o objeto que representa o usuário ao cmdlet Get-Member, que enumera os atributos preenchidos.

Até a proxima,

Flavio Honda

http://flaviohonda.wordpress.com

Share

Post to Twitter