Autor: Daniel Davila Lopez

Daniel Davila Lopez

PowerShell, DNS, Windows

PowerShell, DNS

Get-DnsServerZone

Obtiene un listado de Zonas creadas en el servidor DNS

Windows almacena los registros de las zonas (dominios) en las siguiente ruta: C:\Windows\System32 por lo que es importante respaldar los archivos contenidos en esa ruta, antes de cualquier modificacion y asi poder tener un punto de retorno.

Agregar registros

Add-DnsServerResourceRecordMX -Preference 10 -Name «.» -TimeToLive 01:00:00 -MailExchange «URL» -ZoneName «DOMINIO.COM»

CREAR REGISTRO MX EN TODAS LAS ZONAS (DOMINIOS)

Get-DnsServerZone | where-object -property IsAutoCreated -ieq «» | Foreach-object -process {Add-DnsServerResourceRecordMX -Preference 50 -Name «.» -TimeToLive 01:00:00 -MailExchange «URL» -ZoneName $_.ZoneName}

Explicación:

Get-DnsServerZone.- nos proporciona todos las zonas o dominios que estan configurados en el servidor DNS de windows

where-object -property IsAutoCreated -ieq «».- Selecciona los dominios que fueron creados manualmente, existen zonas que son creadas automaticamente en la cracion del servicio DNS por ejemplo:

0.in-addr.arpa
127.in-addr.arpa
255.in-addr.arpa

Foreach-object -process {Add-DnsServerResourceRecordMX -Preference 50 -Name «.» -TimeToLive 01:00:00 -MailExchange «URL» -ZoneName $_.ZoneName}.- Genera un bucle para cada elemento encontrado en el paso anterior que corresponde a las zonas configuradas. Para cada Iteracion el nombre de la zona se almacena en la variable $_.ZoneName, los datos a tener en cuenta son

Preference: corresponde a la prioridad del registro, entre menor sera mayor la prioridad y visceversa

MailEchange: es la direccion del servidor encargado de enviar el correo, puede ser una IP o un registro A

ZoneName: corresponde a la zona o dominio en donde se va a agregar el registro MX

CREAR REGISTRO TXT EN TODAS LAS ZONAS (DOMINIOS)

Get-DnsServerZone | where-object -property IsAutoCreated -ieq «» | Foreach-object -process {Add-DnsServerResourceRecord -TXT -DescriptiveText «v=spf1 XXX.XXX.XXX.XXX include:_spf.google.com ~all» -Name «.» -zonename $_.ZoneName}

BORRADO DE REGISTROS EN TODAS LAS ZONAS (DOMINIOS)

Get-DnsServerZone | Foreach-object -process {Remove-DnsServerResourceRecord -name «test» -Zonename $_.ZoneName -RRType «TXT»}

Get-DnsServerZone | select-object -Property ZoneName, IsAutoCreated | where-object -property IsAutoCreated -ieq «» | Foreach-object -process {Remove-DnsServerResourceRecord -name «test» -Zonename $_.ZoneName -RRType «TXT»}

-RRType: parametro para definir que tipo de registro se va a eliminar,

-Name; aqui definimos el nombre del registro a eliminar

LISTADO DE REGISTROS MX, TXT, A, ETC.

Get-DnsServerZone | foreach-object -process {Get-DnsServerResourceRecord -Name «.» -ZoneName $_.ZoneName -RRType «TXT»}

Get-DnsServerResourceRecord -Name «.» -ZoneName «DOMINIO.COM» -RRType «MX»

SQL, Data Access

 

Antes de habilitar la opcion de «Data Access» en el servidor de SQL, hay que revisar como esta el parametro a comfigurar

SELECT 
  name,
  is_data_access_enabled 
FROM sys.servers;

Y a contimuacion habilitar la opcion

EXEC sp_serveroption
  @server = 'sqlserver007',
  @optname = 'DATA ACCESS',
  @optvalue = 'TRUE';

 

Referencia: https://database.guide/how-to-enable-disable-data-access-in-sql-server-t-sql-examples/