Bastion Host
In questo modello di distribuzione, l'host bastione consente l'accesso amministrativo esterno agli altri server e applicazioni. È accessibile tramite l'IP Floating e un gruppo di sicurezza limita l'accesso alla porta MS RDP TCP 3389 da indirizzi IP noti o blocchi CIDR. L'IP Floating consente anche l'accesso host di bastione a Internet così i file possono essere scaricati. Puoi avere un altro mezzo di accesso cioè un Direct Link che significa che un host bastione non è richiesto.
Questa guida presuppone che tu:
- Aver creato il tuo VPC e le sottoreti come dettato dai tuoi requisiti.
- Avere un IP Floating riservato.
- Aver configurato il gruppo di sicurezza.
- Aver caricato le chiavi SSH.
Questa guida passi attraverso il processo di:
- Ordinamento di un server virtuale.
- Connessione al server.
- Download dei file richiesti all'host bastione.
- Creazione di una condivisione SMB in modo da poter accedere ai file scaricati dal server SQL.
- Installare SQL Server Management Studio (SSMS), ovvero un ambiente integrato per la gestione delle proprie infrastrutture SQL.
- Unire il dominio. Questa attività non può essere avviata fino al completamento delle attività AD.
- Aggiungere il modulo PowerShell AD.
- Aggiungere il modulo PowerShell SQL.
- Configurare il server NTP.
Ordinare un server virtuale
Un server virtuale della seguente specifica è adatto ad un host bastione e può essere ordinato utilizzando le istruzioni all'indirizzo Creazione di istanze server virtuali utilizzando la UI
- Profilo: bx2-2x8
- Tipo: Pubblico
- SO: WIndows 2019
- NIC Qtà: 1
- Volumi dati: Nessuno
Connessione al server
Dopo che il server virtuale è stato distribuito è necessario collegare un indirizzo IP Floating ad esso in modo da poter accedere al server da remoto, fare riferimento a Aggiunta di un indirizzo IP mobile.
Fare riferimento a Connessione alle istanze di Windows per accedere alla password dell'amministratore di Windows, tuttavia, in breve i seguenti comandi vengono utilizzati dal proprio portatile, dove il comando istanze restituisce il < INSTANCE_ID> del server virtuale:
ibmcloud is instances
ibmcloud is instance-initialization-values <INSTANCE_ID> --private-key @~/.ssh/id_rsa
Scarica i file richiesti
In questo schema di distribuzione stiamo utilizzando i seguenti prodotti che dovrebbero essere scaricati al bastione ospite:
- MS SQL Server Developer Edition che può essere scaricato da SQL Server prodotti & risorse.
- SQL Server Management Studio (SSMS) che può essere scaricato da Download SQL Server Management Studio (SSMS).
- Diskspd è uno strumento di verifica del sottosistema di archiviazione e può essere scaricato da DISKSPD 2.0.21a.
- PowerShell può interagire con le istanze SQL Server , tuttavia, richiede un modulo da installare. Se questo modulo deve essere installato sul sever SQL connesso non Internet scarica quindi questo modulo. Fare riferimento a SqlServer per ulteriori dettagli.
Potrai trovare che Windows Explorer un po' difficile da scaricare file e desideri disabilitare 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
Scarica SQL Server
Il download del server SQL deve essere scaricato in modo interattivo in quanto utilizza un modulo web. Con ogni server Windows Server appena installato, le impostazioni di sicurezza di Windows Explorer non consentono il download dei file.
-
Aprire la finestra di dialogo delle impostazioni di Internet Explorer e andare alla scheda Sicurezza.
-
Selezionare il pulsante di livello personalizzato per aprire l'elenco delle impostazioni.
-
Scorrere fino a quando non trovi la sezione Scarica e controlla il pulsante radio davanti a Abilita.
-
Selezionare Ok per salvare le impostazioni e riavviare Internet Explorer.
-
Ora sarà possibile scaricare i file.
Il file scaricato, SQL2019-SSEI-Eval.exe, è solo "un downloader" che scaricerà i supporti di installazione effettivi da Microsoft. Questo supporto può essere ISO o CAB. In questo esempio scarichiamo i supporti CAB e poi li estrae per ulteriori informazioni recensioni la documentazione di aiuto
C:\Users\Administrator\Downloads\SQL2019-SSEI-Eval.exe /Help. Inserire i seguenti comandi per scaricare il supporto CAB ed estrarlo: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
Scarica SSMS
I seguenti comandi scaricano SSMS in 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
I seguenti comandi scaricano dischetto su C:\Users\Administrator \ Download ed espande il file zip in 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
Scarica il modulo server PowerShell SQL
Se si desidera installare il modulo sul server SQL, che non è connesso a Internet, scaricare il modulo sul bastione host utilizzando il seguente comando dal prompt PowerShell Save-Module -Name SQLServer -LiteralPath C:\Users\Administrator\Downloads\
Creare una condivisione SMB
I seguenti comandi PowerShell sono utilizzati per effettuare quanto segue:
-
Controllare per vedere lo stato del SMB2, tipicamente questo protocollo è disabilitato nell'immagine del server virtuale. Se disabilitato può essere abilitato, in quanto è necessario che SMB operi.
-
Viene creato un utente locale
<smbuser>per accedere alla condivisione da remoto. Inserire la password richiesta all'indirizzo<password>. -
Condividi la directory C:\Users\Administrator \ Downloads è condivisa.
$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 $userLa condivisione sarà ora accessibile dai server del vostro VPC fino a quando il gruppo di sicurezza consente il traffico. Per ulteriori informazioni su SMB, consultare Panoramica della condivisione dei file utilizzando il protocollo SMB 3 in Windows Server.
Installare SQL Server Management Studio
SQL Server Management Studio (SSMS) è un ambiente integrato per la gestione di qualsiasi infrastruttura SQL e fornisce strumenti per configurare, monitorare e amministrare istanze di SQL Server e database. Per installare SSMS utilizzando uno script di prompt dei comandi.
start "" /w C:\Users\Administrator\Downloads\SSMS-Setup-ENU.exe /Quiet SSMSInstallRoot=C:\SSMS
SSMS sarà installato a C:\SSMS\Common7\IDE\Ssms.exe.
Unire il dominio
Questa attività non deve essere avviata fino a quando non è stato installato il server AD.
Ad un prompt PowerShell sull'host bastione, inserire i seguenti comandi che consentono al server di unire il dominio:
- Il
Get-DnsClientServerAddresscattura l'Index Index per l'interfaccia Ethernet IPv4 , in modo che il DNS possa essere modificato dal server DNS IBM Cloud al server ADDNS. Il comandoAdd-Computernon avrà esito positivo se questo passaggio è saltato in quanto il server non sarà in grado di individuare il controller di dominio. IlAdd-Computer -Serveraccetta solo FQDN. - Il comando
Add-Computeraggiunge il server al dominio<domain>utilizzando il server ADDNS<ad_server_fqdn>e quindi riavvia il server per rendere effettiva la modifica.
$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
Aggiungere il modulo PowerShell AD
In Windows Server 2019 è possibile opzionalmente installare il modulo Active Directory per Windows PowerShell, utilizzando i seguenti comandi PowerShell. Aggiungendo il modulo è possibile accedere alle informazioni AD dal bastione host piuttosto che RDP al server AD:
Import-Module ServerManager
Add-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature
Install-Module -Name WindowsCompatibility
Aggiungere il modulo PowerShell SQL
Per installare l'ultima versione del modulo SQLServer, utilizzare il seguente comando su un dispositivo connesso a Internet, da un prompt PowerShell Install-Module -Name SQLServer -Force -AllowClobber.
Configurare il server NTP
Per sincronizzare il tempo automaticamente dalla gerarchia del dominio AD, eseguire i seguenti comandi:
w32tm /config /syncfromflags:domhier /update
net stop w32time
net start w32time
w32tm /query /status