IBM Cloud Docs
host bastión

host bastión

En este patrón de despliegue, el host bastión permite el acceso administrativo externo a los otros servidores y aplicaciones. Es accesible a través de la IP flotante y un grupo de seguridad restringe el acceso al puerto TCP 3389 de MS RDP desde direcciones IP conocidas o bloques CIDR. La IP flotante también permite al host bastión acceder a Internet para que los archivos se puedan descargar. Puede tener otro medio de acceso, por ejemplo, un Direct Link , lo que significa que no es necesario un host bastión.

Esta guía presupone que:

  • Ha creado la VPC y las subredes según sus requisitos.
  • Tener una IP flotante reservada.
  • Ha configurado el grupo de seguridad.
  • Haber cargado claves SSH.

Esta guía describe el proceso de:

  • Cómo solicitar un servidor virtual.
  • Conectando con el servidor.
  • Descargando los archivos necesarios en el host bastión.
  • Creación de una compartición SMB para que se pueda acceder a los archivos descargados desde el servidor SQL.
  • Instale SQL Server Management Studio (SSMS), que es un entorno integrado para gestionar la infraestructura SQL.
  • Únase al dominio. Esta tarea no se puede iniciar hasta que se hayan completado las tareas de AD.
  • Añada el módulo AD de PowerShell.
  • Añada el módulo PowerShell SQL.
  • Configure el servidor NTP.

Solicitar un servidor virtual

Un servidor virtual de la especificación siguiente es adecuado para un host bastión y se puede solicitar utilizando las instrucciones de Creación de instancias de servidor virtual utilizando la interfaz de usuario

  • Perfil: bx2-2x8
  • Tipo: Público
  • SO: WIndows 2019
  • Cantidad de NIC: 1
  • Volúmenes de datos: Ninguno

Conectar con el servidor

Después de que se haya desplegado el servidor virtual, debe conectar una dirección IP flotante a él para poder acceder al servidor de forma remota, consulte Adición de una dirección IP flotante.

Consulte Conexión a instancias de Windows para acceder a la contraseña del administrador de Windows, sin embargo, en resumen, se utilizan los mandatos siguientes desde el portátil, donde el mandato instances devuelve el < INSTANCE_ID > del servidor virtual:

ibmcloud is instances
ibmcloud is instance-initialization-values <INSTANCE_ID> --private-key @~/.ssh/id_rsa

Descargar archivos necesarios

En este patrón de despliegue, estamos utilizando los siguientes productos que se deben descargar en el host bastión:

  • MS SQL Server Developer Edition que se puede descargar desde Productos y recursos de SQL Server.
  • SQL Server Management Studio (SSMS) que se puede descargar de Download SQL Server Management Studio (SSMS).
  • Diskspd es una herramienta de pruebas del subsistema de almacenamiento y se puede descargar de DISKSPD 2.0.21a.
  • PowerShell puede interactuar con instancias de SQL Server , sin embargo, requiere que se instale un módulo. Si este módulo debe estar instalado en el servidor SQL no conectado a Internet, descargue este módulo. Consulte SqlServer para obtener más detalles.

Puede encontrar que el Explorador de Windows es un poco difícil de descargar archivos y desea inhabilitar la configuración de seguridad mejorada de IE:

function Disable-InternetExplorerESC {
    $AdminKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}"
    $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}"
    Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0
    Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0
    Stop-Process -Name Explorer
}
Disable-InternetExplorerESC

Descargar SQL Server

La descarga de SQL Server debe descargarse de forma interactiva ya que utiliza un formulario web. Con cada servidor Windows instalado recientemente, los valores de seguridad del Explorador de Windows no permiten que se descarguen los archivos.

  1. Abra el diálogo de configuración de Internet Explorer y vaya a la pestaña Seguridad.

  2. Seleccione el botón Nivel personalizado para abrir la lista de valores.

  3. Desplázate hacia abajo hasta encontrar la sección Descargas y marca el botón de opción frente a Habilitar.

  4. Seleccione Aceptar para guardar los valores y reiniciar Internet Explorer.

  5. Ahora podrá descargar los archivos.

    El archivo descargado, SQL2019-SSEI-Eval.exe, es sólo "un descargador" que descargará el soporte de instalación real de Microsoft. Este soporte puede ser ISO o CAB. En este ejemplo descargamos el soporte de CAB y, a continuación, los extraemos para obtener más información, consulte la documentación de ayuda C:\Users\Administrator\Downloads\SQL2019-SSEI-Eval.exe /Help. Especifique los mandatos siguientes para descargar el soporte de CAB y extraerlo:

    C:\Users\Administrator\Downloads\SQL2019-SSEI-Eval.exe /ACTION=Download MEDIAPATH=C:\Users\Administrator\Downloads\SQL2019 /MEDIATYPE=CAB /QUIET
    C:\Users\Administrator\Downloads\SQL2019\SQLServer2019-x64-ENU.exe /q /x:C:\Users\Administrator\Downloads\SQL2019\Extracted
    

Descargar SSMS

Los mandatos siguientes descargan SSMS en C:\Users\Administrator\Downloads:

$client = new-object System.Net.WebClient
$client.DownloadFile("https://aka.ms/ssmsfullsetup","C:\Users\Administrator\Downloads\SSMS-Setup-ENU.exe")

Descargar diskspd

Los mandatos siguientes descargan diskspd en C:\Users\Administrator \ Downloads y expande el archivo zip a C:\Users\Administrator\Downloads\DiskSpd:

$client = new-object System.Net.WebClient
$client.DownloadFile("https://github.com/microsoft/diskspd/releases/download/v2.0.21a/DiskSpd.zip","C:\Users\Administrator\Downloads\DiskSpd-2.0.21a.zip")
Expand-Archive -LiteralPath C:\Users\Administrator\Downloads\DiskSpd-2.0.21a.zip -DestinationPath C:\Users\Administrator\Downloads\DiskSpd

Descargar el módulo de servidor SQL de PowerShell

Si desea instalar el módulo en el servidor SQL, que no está conectado a Internet, descargue el módulo en el host bastión utilizando el mandato siguiente desde el indicador de PowerShell Save-Module -Name SQLServer -LiteralPath C:\Users\Administrator\Downloads\

Crear una compartición SMB

Los siguientes mandatos de PowerShell se utilizan para realizar lo siguiente:

  • Compruebe el estado de SMB2, normalmente este protocolo está inhabilitado en la imagen de servidor virtual. Si está inhabilitado, se puede habilitar, ya que es necesario para que SMB funcione.

  • Se crea un usuario local <smbuser> para acceder a la compartición de forma remota. Inserte la contraseña necesaria en <password>.

  • Compartir el directorio C:\Users\Administrator \ Downloads se comparte.

    $user = "<smbuser>"
    $password = "<password>"
    Get-SmbServerConfiguration | Select EnableSMB2Protocol
    Set-SmbServerConfiguration -EnableSMB2Protocol $true -Force
    $secpassword = ConvertTo-SecureString $password -AsPlainText -Force
    New-LocalUser $user -Password $secpassword -FullName "Share User" -Description "User for SMB share"
    New-SmbShare -Name "Downloads" -Path "C:\Users\Administrator\Downloads" -ReadAccess $user
    

    Ahora se podrá acceder a la compartición desde los servidores de la VPC siempre que el grupo de seguridad permita el tráfico. Para obtener más información sobre SMB, consulte Visión general de la compartición de archivos utilizando el protocolo SMB 3 en Windows Server.

Instalar SQL Server Management Studio

SQL Server Management Studio (SSMS) es un entorno integrado para gestionar cualquier infraestructura SQL y proporciona herramientas para configurar, supervisar y administrar instancias de SQL Server y bases de datos. Para instalar SSMS utilizando un script de indicador de mandatos.

start "" /w C:\Users\Administrator\Downloads\SSMS-Setup-ENU.exe /Quiet SSMSInstallRoot=C:\SSMS

SSMS se instalará en C:\SSMS\Common7\IDE\Ssms.exe.

Unir el dominio

Esta tarea no se debe iniciar hasta que se haya instalado el servidor AD.

En un indicador de PowerShell en el host bastión, especifique los mandatos siguientes que permiten que el servidor se una al dominio:

  • Get-DnsClientServerAddress captura el índice de interfaz para la interfaz Ethernet IPv4 , para que el DNS se pueda cambiar del servidor DNS de IBM Cloud al servidor ADDNS. El mandato Add-Computer fallará si se omite este paso, ya que el servidor no podrá localizar el controlador de dominio. El Add-Computer -Server sólo acepta FQDN.
  • El mandato Add-Computer añade el servidor al dominio <domain> utilizando el servidor ADDNS <ad_server_fqdn> y, a continuación, reinicia el servidor para que el cambio entre en vigor.
$dns = "<ADDNS_IP_Address>"
$adserver = "<ad_server_fqdn>"
$domain = "<domain>"
$user = $domain + "\Administrator"
$password = "<password>"
$out=Get-DnsClientServerAddress -InterfaceAlias Ethernet -AddressFamily IPv4 | Select-Object -Property InterfaceIndex
Set-DnsClientServerAddress -InterfaceIndex $out.InterfaceIndex -ServerAddresses ($dns)
$password = ConvertTo-SecureString $password -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential ($user, $password)
Add-Computer -DomainName $domain -Server $adserver -Restart -Credential $credential

Añadir el módulo PowerShell AD

En Windows Server 2019, puede instalar opcionalmente el módulo Active Directory para Windows PowerShell, utilizando los siguientes mandatos PowerShell. Al añadir el módulo, puede acceder a la información de AD desde el host bastión en lugar de RDP al servidor AD:

Import-Module ServerManager
Add-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature
Install-Module -Name WindowsCompatibility

Añadir el módulo PowerShell SQL

Para instalar la última versión del módulo SQLServer, utilice el mandato siguiente en un dispositivo conectado a Internet, desde un indicador de PowerShell Install-Module -Name SQLServer -Force -AllowClobber.

Configurar el servidor NTP

Para sincronizar la hora automáticamente desde la jerarquía de dominios de AD, ejecute los mandatos siguientes:

w32tm /config /syncfromflags:domhier /update
net stop w32time
net start w32time
w32tm /query /status