Windows

【WindowsServer】PowerShellにてリモートデスクトップ迄設定する方法

さっとんです。

以前、このような記事を投稿しました。

こちらの記事では、WindowsServerのホスト名設定~リモートデスクトップ設定迄をGUIにて実施する手順を紹介しております。

 

今回は、PowerShellにてホスト名設定~リモートデスクトップ設定迄を実施する手順を紹介します。

 

本記事を読むメリット

PowerShellにて下記設定を実施する手順がわかる
・ホスト名設定
・IPアドレス設定
・DNS設定
・IPv6無効化設定
・ファイアウォール無効化設定
・リモートデスクトップ設定


コピー&ペースト&編集ですぐに実行できる(GUIより設定が楽)

 

PowerShellでの設定方法

【今回の検証環境】

Hypervisor:ESXi6.7
OS:WindowsServer2012R2

※PowerShellは管理者として起動すること

ホスト名設定

①ホスト名事前確認


$Env:COMPUTERNAM

実行結果)

②ホスト名変更

※こちらのコマンド入力後、OS再起動がかかります。

Rename-Computer -NewName ホスト名 -Force -Restart

 

 

③OS起動後、ホスト名確認

$Env:COMPUTERNAME

※ホスト名が変更されていること

 

参考サイト

 

IPアドレス設定

①PING疎通確認

作業PCより設定対象のIPアドレスへPINGが通らないこと

②対象サーバにてネットワークインタフェース情報を確認

Get-NetAdapter

「Name」の部分を確認

③設定前のIPアドレス情報を確認

Get-NetIPAddress -InterfaceAlias インタフェース名

※「ipconfig」でも可能

実行例)

下記赤枠の部分を確認

※特に下記の部分を確認
・「PrefixOrigin」「SuffixOrigin」がDHCPとなっていること
・「InterfaceIndex」の値を確認

④IPアドレスの設定

New-NetIPAddress -InterfaceIndex "InterfaceIndexの値" -IPAddress “設定するIPアドレス” -AddressFamily IPv4 -PrefixLength サブネットマスク -DefaultGateway "ゲートウェイのIPアドレス”

実行例)

⑤IPアドレス設定後の確認

Get-NetIPAddress -InterfaceAlias インタフェース名

確認例)

 

⑥PING疎通確認

※ファイアウォールが開通していない場合は現時点でping疎通不可

 

DNSサーバー設定

①ネットワークインタフェースに対して、DNSサーバのIPアドレスを設定

Set-DnsClientServerAddress -InterfaceAlias "インタフェース名" -ServerAddresses "DNSサーバー#1","DNSサーバー#2"

※「,」区切りにて2台分設定可能

設定例)

②設定したDNSサーバーのIPアドレスを確認

Get-DnsClientServerAddress -InterfaceAlias "インタフェース名"

確認例)

IPv6無効化設定

①ネットワークインタフェースに対して、IPv6無効化設定

Disable-NetAdapterBinding -Name "インタフェース名" -ComponentID ms_tcpip6

実行例)

②IPv6設定が無効化されていることを確認(「False」になっていること)

Get-NetAdapterBinding -Name "インタフェース名" -ComponentID ms_tcpip6

 

IPアドレス設定最終確認

・IPアドレス確認

ipconfig /all
Get-NetIPAddress -InterfaceAlias インタフェース名

実行例)

・ipconfig /all

・Get-NetIPAddress

・DNS確認

Get-DnsClientServerAddress -InterfaceAlias "インタフェース名"

・IPv6無効化設定確認

Get-NetAdapterBinding -Name "<インタフェース名>" -ComponentID ms_tcpip6

 

3.ファイアウォール無効化設定

①Windowsファイアウォール無効化設定

Get-NetFirewallProfile | Set-NetFirewallProfile -Enabled False

※Windowsファイアウォール有効化はこちら

Get-NetFirewallProfile | Set-NetFirewallProfile -Enabled True

 

②Windowsファイアウォールが無効化されたことを確認

Get-NetFirewallProfile

それぞれ「Enabled」の項目が、「False」となっていることを確認
(「Domain/Private/Public」の3項目)

③設定したIPアドレスに対して、PINGが疎通できることを確認

ping -t 設定したIPアドレス

ファイアウォール有効化

Get-NetFirewallProfile | Set-NetFirewallProfile -Enabled True

リモートデスクトップ設定

①リモートデスクトップ有効化

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Type Dword -Value "0"

②「fDenyTSConnections」が「0」になっていることを確認

③リモートデスクトップ接続できることを確認

リモートデスクトップ設定コマンド(他)

リモートデスクトップ無効化

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Type Dword -Value "1"

ネットワークレベル認証有効化

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "UserAuthentication" -Type Dword -Value "1"

ネットワークレベル認証無効化

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "UserAuthentication" -Type Dword -Value "0"

※ネットワークレベル認証とは?
→接続元のクライアントと接続先のサーバのセッションが確立する前に資格情報の確認をする認証方式

詳細はこちらをご覧下さい。

まとめ

〇こちらの手順をPowerShellにて実施可能
・ホスト名設定
・IPアドレス設定
・DNS設定
・IPv6無効化設定
・ファイアウォール無効化設定
・リモートデスクトップ設定


コマンド入力&実行するのみのため、基本設定にかかる工数が減る

 

PowerShellについて詳しく説明している本です。
気になる方は読んでみては??

 

ここまで本記事を読んで頂き有難うございました。







-Windows
-,