Host bastion
Neste padrão de implementação, o host de bastion permite o acesso administrativo externo aos demais servidores e aplicativos. Ele é acessível através do IP flutuante e um grupo de segurança restringe o acesso ao TCP do MS RDP porta 3389 de endereços IP conhecidos ou blocos CIDR. O IP Flutuante também permite que o acesso do host de bastão para a Internet assim os arquivos possam ser baixados. Você pode ter outro meio de acesso ou seja, um Direct Link o que significa que um host de bastion não é necessário.
Este guia assume que você:
- Tenha criado o seu VPC e sub-redes conforme seus requisitos ditam.
- Tenha um IP flutuante reservado.
- Tenha configurado o grupo de segurança.
- Ter feito upload de chaves SSH.
Esta guia passos através do processo de:
- Ordenando um servidor virtual.
- Conectando-se ao servidor.
- Download de arquivos necessários para o host de bastidor.
- Criação de um compartilhamento SMB para que os arquivos baixados possam ser acessados a partir do servidor SQL.
- Instale o SQL Server Management Studio (SSMS), que é um ambiente integrado para o gerenciamento de sua infraestrutura SQL.
- Junte o domínio. Esta tarefa não pode ser iniciada até que as tarefas do AD tenham sido concluídas.
- Inclua o módulo PowerShell AD.
- Inclua o módulo PowerShell SQL.
- Configurar servidor NTP.
Ordenar um servidor virtual
Um servidor virtual da especificação a seguir é adequado para um host de bastion e pode ser ordenado usando as instruções em Criando instâncias do servidor virtual usando a UI
- Perfil: bx2-2x8
- Tipo: Público
- OS: WIndows 2019
- NIC Qty: 1
- Volumes de Dados: Nenhum
Conectar ao servidor
Depois que o servidor virtual foi implementado é necessário conectar um endereço IP flutuante a ele para que você possa acessar o servidor remotamente, consulte Adicionando um endereço IP flutuante.
Consulte Conectando-se a instâncias do Windows para acessar a senha do Administrador do Windows, no entanto, em suma os seguintes comandos são utilizados a partir do seu laptop, onde o comando instâncias retorna o < INSTANCE_ID> do servidor virtual:
ibmcloud is instances
ibmcloud is instance-initialization-values <INSTANCE_ID> --private-key @~/.ssh/id_rsa
Fazer download de arquivos necessários
Neste padrão de implementação estamos usando os seguintes produtos que devem ser baixados para o host de bastion:
- MS SQL Server Developer Edition que pode ser baixado a partir de produtos & recursos do SQL Server.
- SQL Server Management Studio (SSMS) que pode ser baixado a partir de Download SQL Server Management Studio (SSMS).
- O diskspd é uma ferramenta de teste do subsistema de armazenamento e pode ser baixado a partir de DISKSPD 2.0.21a.
- O PowerShell pode interagir com instâncias do SQL Server , no entanto, requer um módulo a ser instalado. Se este módulo deve ser instalado no sever SQL conectado não Internet então faça o download deste módulo. Consulte o SqlServer para obter mais detalhes.
Você pode achar que o Windows Explorer um pouco difícil de fazer o download de arquivos e deseja desativar o IE Enhanced Security Configuration:
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
Faça o download do SQL Server
O download do servidor SQL deve ser baixado de forma interativa, já que ele usa um formulário web. Com todo o Windows Server recém-instalado, as configurações de segurança do Windows Explorer não permitem que os arquivos sejam baixados.
-
Abra o diálogo de configurações do Internet Explorer e vá até a aba Segurança.
-
Selecione o botão de nível Personalizado para abrir a lista de configurações.
-
Role para baixo até encontrar a seção Downloads e verifique o botão de rádio na frente de Habilite.
-
Selecione Ok para salvar as configurações e reiniciar o Internet Explorer.
-
Agora você será capaz de fazer o download de arquivos.
O arquivo baixado, SQL2019-SSEI-Eval.exe, é apenas "um downloader" que fará o download da mídia de instalação real da Microsoft. Essa mídia pode ser ISO ou CAB. Neste exemplo baixamos a mídia do CAB e, em seguida, extraí-los para mais informações revisamos a documentação de ajuda
C:\Users\Administrator\Downloads\SQL2019-SSEI-Eval.exe /Help. Digite os seguintes comandos para fazer o download da mídia do CAB e extraia-a: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
Baixar SSMS
Os comandos a seguir faz downloads de SSMS para C:\Users\Administrator\Downloads:
$client = new-object System.Net.WebClient
$client.DownloadFile("https://aka.ms/ssmsfullsetup","C:\Users\Administrator\Downloads\SSMS-Setup-ENU.exe")
Download Diskspd
A seguir comandos downloads diskspd para C:\Users\Administrator \ Downloads e expande o arquivo zip para 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
Faça o download do módulo do servidor PowerShell SQL
Se você deseja instalar o módulo no servidor SQL, que não é conectado à Internet, faça o download do módulo para o host de bastion usando o seguinte comando a partir do prompt PowerShell Save-Module -Name SQLServer -LiteralPath C:\Users\Administrator\Downloads\
Criar um compartilhamento SMB
Os seguintes comandos PowerShell são utilizados para realizar o seguinte:
-
Verifique para ver o status do SMB2, geralmente este protocolo é desativado na imagem do servidor virtual. Se desativado ele pode ser ativado, como é necessário que o SMB opere.
-
Um usuário local
<smbuser>é criado para acessar o compartilhamento remotamente. Insira sua senha necessária em<password>. -
Compartilhar o diretório C:\Users\Administrator \ Downloads é compartilhado.
$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 $userO compartilhamento agora será acessível a partir de servidores em seu VPC, desde que o grupo de segurança permita o tráfego. Para obter mais informações sobre o SMB, consulte Visão Geral do compartilhamento de arquivos usando o protocolo SMB 3 no Windows Server.
Instalar o SQL Server Management Studio
O SQL Server Management Studio (SSMS) é um ambiente integrado para o gerenciamento de qualquer infraestrutura SQL e fornece ferramentas para configurar, monitorar e administrar instâncias do SQL Server e bancos de dados. Para instalar o SSMS usando um script de prompt de comando.
start "" /w C:\Users\Administrator\Downloads\SSMS-Setup-ENU.exe /Quiet SSMSInstallRoot=C:\SSMS
O SSMS será instalado em C:\SSMS\Common7\IDE\Ssms.exe.
Entrar no domínio
Essa tarefa não deve ser iniciada até depois que o servidor AD foi instalado.
Em um prompt do PowerShell no host de bastion, digite os seguintes comandos que permitem que o servidor se junte ao domínio:
- O
Get-DnsClientServerAddresscapta o Índice de Interface para a interface Ethernet IPv4 , para que o DNS possa ser alterado do servidor DNS IBM Cloud para o servidor ADDNS. O comandoAdd-Computerfalhará se esta etapa faltar já que o servidor não conseguirá localizar o controlador de domínio. OAdd-Computer -Serversó aceita FQDN. - O comando
Add-Computeradiciia o servidor no domínio<domain>usando o servidor ADDNS<ad_server_fqdn>e depois reinicia o servidor para tornar a mudança efetiva.
$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
Adicionar o módulo PowerShell AD
No Windows Server 2019, é possível instalar opcionalmente o módulo Active Directory para o Windows PowerShell, usando os seguintes comandos PowerShell. Ao adicionar o módulo, você pode acessar informações do AD do host de bastion em seguida, RDP para o servidor AD:
Import-Module ServerManager
Add-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature
Install-Module -Name WindowsCompatibility
Adicionar o módulo PowerShell SQL
Para instalar a versão mais recente do módulo SQLServer, use o comando a seguir em um dispositivo conectado à Internet, a partir de um prompt PowerShell Install-Module -Name SQLServer -Force -AllowClobber.
Configurar o servidor NTP
Para sincronizar o tempo automaticamente a partir da hierarquia de domínio AD, execute os seguintes comandos:
w32tm /config /syncfromflags:domhier /update
net stop w32time
net start w32time
w32tm /query /status