Windows 10 – Alterando o perfil de rede de pública para privado via PowerShell

Olá pessoal,

um cliente estava tendo problemas de conectividade entre um notebook com Windows 10 e um computador com Windows 7. Verifiquei o notebook e a conexão de rede estava definida como pública conforme imagem abaixo:

W10ProfileRede01

Para alterar para rede privada, abra o Power Shell como administrador (elevado) e execute o comando Get-NetConnectionProfile para exibir as características da conexão e obter o valor do parâmetro InterfaceIndex, no caso desta interface de rede o valor é 16 conforme imagem a seguir. Notem também que o parâmetro NetworkCategory está definido como Public.

W10ProfileRede02

Para definir a conexão como privada digite o comando abaixo, considerando o parâmetro InterfaceIndex 16, da conexão em questão, execute o comando:

Set-NetConnectionProfile -InterfaceIndex 16 -NetworkCategory Private

Em seguida execute novamente Get-NetConnectionProfile e verifique o parâmetro NetworkCategory agora como Private.

W10ProfileRede03

Verificando a distribuição e versão do Linux via ssh

Olá pessoal,

Passei pela seguinte situação que compartilho com vocês. Acessei um servidor Linux remotamente via ssh e precisava saber a distribuição e versão (release) para poder realizar uma instalação correta de um agente.

Para obter o versionamento digite no shell:

cat /etc/*-release

Vejam abaixo o detalhamento do sistema operacional instalado neste servidor remoto:

Linux_Version

Espero ter ajudado! Bom trabalho para todos!

Hyper-V – PowerShell para obtenção de informações dos Volumes CSV

Olá pessoal,

WindowsPowerShellHoje eu deixo para vocês um script bastante útil que eu sempre utilizo para obter informações a respeito dos Volumes CSV (Cluster Shared Volume) apresentados aos clusters Hyper-V dos meus clientes e para enriquecer a documentação dos mesmos.

Com esse script você vai ter dados como Nome do CSV, Path, Tamanho, Espaço Livre, Espaço Ocupado e Porcentagem de espaço Livre. Vejam abaixo:

HyperVCsv

Copie o código abaixo, salve com a extensão *.ps1 (Exemplo: HyperV_CSVs.ps1) e executem em seus clientes.

Import-Module FailoverClusters

$objs = @()

$csvs = Get-ClusterSharedVolume
foreach ( $csv in $csvs )
{
$csvinfos = $csv | select -Property Name -ExpandProperty SharedVolumeInfo
foreach ( $csvinfo in $csvinfos )
{
$obj = New-Object PSObject -Property @{
Name = $csv.Name
Path = $csvinfo.FriendlyVolumeName
Size = $csvinfo.Partition.Size
FreeSpace = $csvinfo.Partition.FreeSpace
UsedSpace = $csvinfo.Partition.UsedSpace
PercentFree = $csvinfo.Partition.PercentFree
}
$objs += $obj
}
}

$objs | ft -auto Name,Path,@{ Label = “Size(GB)” ; Expression = { “{0:N2}” -f ($_.Size/1024/1024/1024) } },@{ Label = “FreeSpace(GB)” ; Expression = { “{0:N2}” -f ($_.FreeSpace/1024/1024/1024) } },@{ Label = “UsedSpace(GB)” ; Expression = { “{0:N2}” -f ($_.UsedSpace/1024/1024/1024) } },@{ Label = “PercentFree” ; Expression = { “{0:N2}” -f ($_.PercentFree) } }

Até a próxima!

Office 365 – Script Power Shell para atribuição/remoção de permissões em caixas de correio

Olá pessoal,

WindowsPowerShellhoje compartilho com vocês um script indispensável para todo administrador do Office 365. Este script atribui permissões de administrador as caixas de correio existentes. Imaginem o cenário em que você está entrando em uma empresa e precisa atribuir a sua conta como administrador de todas as caixas de correio da sua empresa criadas no Office 365, ou então você precisa remover um usuário que esteja como administrador das contas. Esta situação aconteceu comigo e este script foi bastante útil.

Set-ExecutionPolicy RemoteSigned

$UserCredential = Get-Credential (Credenciais de administrador do Office 365)

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session

Para atribuir permissão FULL ACCESS para um administrador/usuário do Office 365 em todas as caixas de correio

Add-MailboxPermission -Identity Mailboxname -User Username -AccessRight FullAccess -Automapping $false

Para remover permissão FULL ACCESS para um administrador/usuário do Office 365 em todas as caixas de correio:

Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq “UserMailbox”} | Remove-MailboxPermission -User email@empresa.com.br -AccessRights FullAccess -InheritanceType All

Até a próxima!

Backup e Restore do serviço DHCP no Windows Server

Olá pessoal,

PromptComandoQuem acompanha meu trabalho sabe que este blog é um grande bloco de notas das situações que encontro no dia-a-dia da atividade de suporte técnico. Pois bem, hoje precisei fazer o backup da base de dados do serviço DHCP de um servidor Windows Server 2008 R2 e transferir para outro.

O arquivo com a base se chama dhcp.mdb e fica armazenado no diretório  C:\Windows\System32\dhcp no servidor onde o serviço DHCP estiver ativado.

Para fazer o backup da base no servidor de origem, crie um diretório (Ex: c:\bkpdhcp) e execute o seguinte comando no prompt:

netsh dhcp server export c:\bkpdhcp\dhcp.bkp all

No servidor de destino execute o comando abaixo para importar:

netsh dhcp server import c:\bkpdhcp\dhcp.bkp

Até a próxima!

Substituindo Certificados no Exchange Server 2007

Olá pessoal,

Em tempos de computação em Cloud, serviços Online e em nuvem ainda existe aqui no Brasil uma enormidade de ambientes legados em empresas que pelas mais diversas razões não atualizaram os seus ambientes. De acordo com este cenário vejo inúmeras possibilidades e oportunidades de negócio para prestadores de serviços e consultores tanto para manter esses ambientes legados quanto para planejar uma atualização/migração de ambientes como esses. Em breve eu vou gravar um vídeo sobre este assunto.

WindowsPowerShellPois bem, recebi uma demanda de um cliente com serviços de e-mail baseados no Exchange Server 2007 e que precisava trocar um certificado expirado. Não vou abordar aqui o processo de geração do certificado, pois o mesmo já estava, mas sim o processo de importação no Exchange e no IIS.

Abra o Exchange Management Shell e execute o comando abaixo para importar o certificado:

Import-ExchangeCertificate -Path c:\certnew.cer

* certnew.cer é o nome do certificado gerado.

Para habilitar o certificado, execute:

Enable-ExchangeCertificate -Thumbprint <Thumbprint> -Services IIS
Copie o Thumbprint (Ctrl + C) para a memória e execute o comando abaixo para habilitar o certificado tanto no Exchange quanto no IIS (OWA):
Exch2007_Certificados_1
Para verificar se a importação ocorreu com sucesso execute:
Get-ExchangeCertificate |fl
Até a próxima!

Habilitando e desabilitando o Hyper-V no Windows 10 via Power Shell

Olá pessoal,

WindowsPowerShellpor mais incrível que possa parecer ainda tem bastante gente que não sabe que é possível habilitar o Hyper-V (vejam os requisitos abaixo) em equipamentos com Windows 10 e usufruir assim de um robusto ambiente de testes.

Requisitos para instalação

  • Windows 10 Enterprise, Professional ou Education
  • Mínimo de 4 GB de memória.
  • Processador de 64 bits com SLAT (Conversão de Endereços de Segundo Nível).
  • Suporte da CPU para a Extensão do Modo de Monitor de VM (VT-c em CPU Intel).

Pois bem, eu estava com o Hyper-V desabilitado em meu notebook devido a uns testes que tive que realizar com o VMware Workstation e neste feriado precisei habilitar novamente, por isso compartilho com vocês aqui tanto o comando para habilitar o Hyper-V via Power Shell, bem como para desabilitar.

Para habilitar o Hyper-V em máquinas com Windows 10 executem:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

Para desabilitar executem:

Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

Até a próxima!

PowerShell útil para exportar Usuários do Active Directory com informações detalhadas

Olá pessoal,

WindowsPowerShellCompartilho com vocês um comando PowerShell bastante útil para exportar para um arquivo *.csv, informações referentes aos principais atributos configuráveis em uma conta do Microsoft Active Directory de todos os usuários do domínio.

Antes de mais nada, caso ainda não tenham feito, será necessário importar o módulo do Active Directory no PowerShell através do comando abaixo:

Import-Module ActiveDirectory

Para consultar as informações a respeito dos atributos dos usuários do domínio e exportar para um arquivo *.csv (no exemplo abaixo, UsuariosAD.csv) execute o comando abaixo:


Get-Aduser -Filter * -Properties *|select

name,SamAccountName,PasswordExpired,PasswordLastSet,PasswordNeverExpir

es,LastLogonDate,Enabled,DistinguishedName,DisplayName,GivenName,SurName

,Company,Mail,Department,Title,Created,AccountStatus|export-csv

C:\UsuariosAD.csv


Este script é bastante útil para documentar o ambiente ou fornecer informações de auditoria, por exemplo. Aproveitem!

Verificando databases de caixa de correio no Exchange 2007 e 2010

Olá pessoal, WindowsPowerShellQuem acompanha o meu trabalho sabe que este blog é um grande bloco de notas onde além de postar sobre eventos, novidades, notícias e assuntos atuais, eu também procuro abordar o que chamado mundo real, demonstrando situações e cenários legados, com produtos e soluções antigas e ambiente legados.

Pois bem, neste final de semana acessei ambiente de correio eletrônico com Microsoft Exchange 2007 com uma série de contas de e-mail com cotas no limite. Vou deixar listados alguns comandos Power Shell simples e úteis para navegação em contas de e-mail em diferentes databases do Exchange.

Para visualizar todos os databases da organização do Exchange:

Get-MailboxDatabase

Para visualizar toda as contas de e-mail em um determinado database:

GetMailboxDatabase “Database_Exemplo” | GetMailbox

Para visualizar todas as contas de e-mail de um database com informações sobre o limite e ultimo logon:

GetMailboxDatabase “Database_Exemplo” | GetMailboxStatistics

Para obter o mesmo resultado acima porém com maiores detalhes, como tamanho total ocupado:

GetMailboxDatabase “Database_Exemplo” | GetMailboxStatistics | Sort totalitemsize desc | ft displayname, totalitemsize, itemcount

Lembrando que ainda existem muitas empresas com ambientes legados e a TI não vive apenas de inovação, mas também deve manter o que já existe.

Identificando a versão do PHP do seu servidor Web

PHPlogosoloOlá pessoal,

Em uma mudança de servidor ou de hospedagem, pode ser necessário obter informações da versão do PHP que está em execução no servidor Web para onde o site será migrado.

Para identificar a versão do PHP, crie um arquivo versao.php, por exemplo, copie e cole o código abaixo.

<?php
phpinfo();
?>

Em seguida faça upload deste arquivo para o diretório que contém as páginas do seu site e execute no seu navegador a URL referente, por exemplo, http://www.meusite.com.br/versao.php e serão exibidas todas as definições e configurações do PHP no seu servidor conforme imagem abaixo.

phpversion

 

Habilitando o Ping (ICMP) via Linha de comando no Windows Server

Olá pessoal,

Você finaliza o setup de um servidor com Windows Server 2008, 2012 ou 2016, configura a interface de rede e para verificar a conectividade realiza o teste básico disparando um ping para o nome ou ip deste servidor recém instalado porém não obtém retorno. Porque? Simples, por padrão a conectividade via ICMP (Internet Control Message Protocol) está bloqueada via Windows Firewall.

Para liberar a conectividade via ICMP realize os passos abaixo:

1 – Abra o prompt de comando (cmd)

2 – execute o comando abaixo:

netsh firewall set icmpsetting 8

3 – Faça o teste de conectividade via ping novamente:

ping

4 – Caso seja descenessário desabilitar o ping, execute:

netsh firewall set icmpsetting 8 disable

Identificando a localização dos databases do Exchange via PowerShell

Olá pessoal,

Deixo uma dica rápida para quem administra servidores Exchange Server. Estive em um cliente com Exchange 2010 e não havia documentação a respeito da localização dos databases. Como identificar o path via Power Shell?

Execute o Exchange Management Shell e em seguida o comando abaixo.

Get-MailboxDatabase -Status | select edbfilepath

exchangepsdatabases2

Exportar informações das impressoras no Windows utilizando PowerShell

Olá pessoal,

Eu tive uma necessidade em um cliente de obter as informações referentes às impressoras configuradas nas estações de trabalho com Windows. Utilizando o PowerShell, podemos obter essa informação de uma forma simples e ainda gerar um arquivo *.csv para documentação utilizando a sintaxe abaixo:

Get-Printer | select Name, DriverName, PortName

powershellprinters

Para gerar o arquivo *.csv para documentar as impressoras execute:

Get-Printer | select Name, DriverName, PortName | Export-Csv Impressoras.csv -NoTypeInformation

Para facilitar, salve a sintaxe em um arquivo (ex: impressoras.ps1) e guarde o script.

Exchange 2007- Visualização dos membros de uma Address List através do Exchange Management Shell

Olá pessoal,

exchangeps-logoapós um incidente em uma lista de endereços (Address List) no Exchange 2007 de um cliente, a mesma foi recriada e me foi solicitada uma lista com os membros pertencentes cujo procedimento eu descrevo abaixo.

Execute o Exchange Management Shell (All Programs – Microsoft Exchange Server 2007 – Exchange Management Shell)  e confirme o path da Address List através do comando, substituindo “INVENT-RJ” pelo nome correto.

Get-AddressList -Identity “INVENT-RJ” | fl DistinguishedName

Após a confirmação do path, para obter a lista com os membros desta AddressList execute o comando abaixo, usando como exemplo a lista “INVENT-RJ” e o domínio “invent.corp”

Get-Recipient -Filter {AddressListMembership -eq ‘CN=INVENT-RJ,CN=All Address Lists,CN=Address Lists Container,CN=First Organization,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=INVENT,DC=corp’}

Substitua com as informações da sua Address Lista e domínio corretos.

Até a próxima dica.

 

Exchange 2007/2010 – Verificando e limitando a cota para criação de regras no Outlook

Fui acionado nesta semana por um cliente que não estava conseguindo criar novas regras no Outlook 2010 sendo exibida a mensagem abaixo:

Outlook_Erro_Regras

Por padrão, no Exchange 2007/2010, estão disponíveis 64 KB por usuário para criação de regras, que pode ser expandido para até 256 KB.

Para verificar a cota atual para criação de regras em uma caixa postal, abra o Exchange Management Shell e execute:

Get-Mailbox paulo.santanna@inventit.com.br | FL displayname, rulesquota

Para definir 256 KB de cota para criação de regras para o e-mail paulo.santanna@inventit.com.br

set-mailbox paulo.santanna@inventit.com.br -rulesquota 256KB

Para obter uma lista com as cotas de todos os usuários para criação de regras, execute:

get-mailbox|fl rulesquota, alias

Caso o usuário tenha atingido o limite de cota (256 KB), a Microsoft recomenda alguns métodos, que envolve configurações no Outlook da máquina do usuário e que estão descritos no KB 886616.

Obtendo informações do processador com o CoreInfo

Conforme comentei ontem, na sessão sobre Virtualização com Hyper-V no Windows 8/8.1 no Quintas da TI, o CoreInfo é uma ferramenta bem interessante, desenvolvida por Mark Russinovich e deve ser utilizada para a obtenção de informações detalhadas a respeito do processador do equipamento.

Execute CoreInfo na Linha de comando para que todas as informações sejam exibidas, inclusive as referentes a suporte a Virtualização. 

Coreinfo

Para exibir informações específicas, execute de acordo com as opções abaixo.

coreinfo [-c][-f][-g][-l][-n][-s][-m][-v]
-c Dump information on cores.
-f Dump core feature information.
-g Dump information on groups.
-l Dump information on caches.
-n Dump information on NUMA nodes.
-s Dump information on sockets.
-m Dump NUMA access cost.
-v Dump only virtualization-related features including support for second level address translation.
(requires administrative rights on Intel systems).

Para saber mais sobre e fazer o Download do CoreInfo, acesse aqui.

Várias formas para listar os Compartilhamentos de rede de uma máquina Windows

Ola pessoal,

vou demonstrar abaixo 3 formas para listagem de compartilhamentos de rede em Máquinas Windows. Essa informação é bem relevante para saber onde um compartilhamento está armazenado ou para documentação do seu Servidor de Arquivos.

A primeira forma, mais simples, vai ser utilizando o comando NET SHARE

net share

Utilizando PowerShell, temos duas formas:

Via WMI, através do comando Get-WmiObject Win32_Share

Win32share

Para listar os compartilhamentos em um computador remoto utilize: Get-WmiObject Win32_Share -ComputerName Nome_do_Computador

Win32share2

Podemos obter a listagem também via cmdlet Get-SmbShare, para isso, antes execute Import-Module SmbShare para importar o módulo que contém esse cmdlet.

smbshare

Fica a dica com relação à listagem de compartilhamentos.

VMware PowerCli – Listando todas as informações de rede dos Hosts ESXi

Para documentar e obter as informações detalhadas de cada interface de rede dos hosts que compõem a infra VMware que você administra, podemos utilizar o PowerCli, utilizando o cmdlet “Get-VMHostNetworkAdaptor” facilitando assim a vida do Administrador de rede.

Abra o PowerCli e execute:

Get-VMHostNetworkAdapter | select VMhost, Name, IP, SubnetMask, Mac, PortGroupName, vMotionEnabled, mtu, FullDuplex, BitRatePerSec

Para exportar a saída do comando para um arquivo *.csv e prepara um relatório sobre, execute:

Get-VMHostNetworkAdapter | select VMhost, Name, IP, SubnetMask, Mac, PortGroupName, vMotionEnabled, mtu, FullDuplex, BitRatePerSec | Export-Csv C:\VMServersNetwork.csv

VMware ESXi – Obtendo as WWNs das HBAs nos Hosts via PowerCLI

Ola pessoal,

Ontem tive a necessidade de documentar os WWNs de todos os hosts ESXi de um Cluster específico. Sem dúvida alguma, via PowerCli fica bem mais fácil do que ir em cada host via console do vSphere ou vCenter.

Segue abaixo script que traz essa informação onde NOME_DO_CLUSTER deve ser substituido pelo nome do Cluster do se ambiente

Get-Cluster NOME_DO_CLUSTER | Get-VMhost | Get-VMHostHBA -Type FibreChannel | Select VMHost,Device,@{N=”WWN”;E={“{0:X}” -f $_.PortWorldWideName}} | Sort VMhost,Device

Com essa informação em mãos fica mais fácil fazer o zoneamento e apresentação de discos de Storage para os seus hosts ESXi e também para fins de documentação do ambiente.

Linux: Mudando a hora do sistema

Ola pessoal,

dica rápida.

Para alterar de uma forma simples e rápida a hora do sistema em máquinas com sistema operacional Linux digite no terminal:

# date -s “22:37”

Para visualizar a data e hora do sistema digite:

# date

ou também # clock

Linux