전체 글 (306)
PowerShell 원격데스크톱 포트 변경

PowrShell을 이용하여 원격 데스크탑 포트 변경하는 내용입니다.

정상 실행에는 관리자 권한이 필요합니다. 

 

아래의 스크립트를 받으신 후 직접 실행시켜도 되고 '로그온 스크립트 정책' 으로 실행하셔도 잘 돌아 갑니다.

스크립트내의 변경할 포트는 53389로 지정되어 있으며 변경해서 사용하면됩니다.

 

 

아래는 파일의 내용입니다.

포트 변경은 아래의 붉은글씨 부분을 수정하시면 되겠습니다.

 

<#
- 내용 : 원격 데스크톱 수신 포트 변경
 - 레지스트리 수정
 - 서비스 재시작
- 작성자 : 이성환 (www.delmaster.net)
- 작성일 : 2016.04.15
- 업데이트 : 2016.04.15
#>


Set-ItemProperty "HKLM:SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name

PortNumber -Value 53389

Restart-Service termservice -Force


 

 

 

 

  Comments
댓글 쓰기
PowerShell 호스트명 확인

PowerShell을 이용하여 현재 컴퓨터의 이름 즉, 호스트명을 가져오기위해 아래의 방법을 사용할 수 있습니다.

 

$env:computername

 

 

  Comments
댓글 쓰기
SSL v2 v3 비활성화

SSL 이슈로 인해 SSL v2 와 SSL v3 Disable이 필요하다면 아래의 레지스트리 경로로 이동하여 작업할 수 있겠습니다.

 

SSL v2

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]

하위에 '새로만들기' > 'DWord(32비트)' 값 선택 > 이름 부분에 'Enabled' 입력 > 데이터 부분에 '0' 입력. > 시스템 재부팅.

 

 

SSL v3

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]

하위에 '새로만들기' > 'DWord(32비트)' 값 선택 > 이름 부분에 'Enabled' 입력 > 데이터 부분에 '0' 입력. > 시스템 재부팅.

'Windows Server' 카테고리의 다른 글

Windows Server 2016 설치  (2) 2016.10.21
6To4 Teredo 비활성화  (0) 2016.09.21
SSL v2 v3 비활성화  (0) 2016.04.04
CMAK 구성  (0) 2016.02.24
Server 2012 .NET Framework 2.0 3.0 3.5 설치  (0) 2016.02.24
윈도우 업데이트 파일 다운로드  (0) 2016.02.24
  Comments
댓글 쓰기
PowerShell을 이용한 정책 확인 및 수정

파워쉘을 이용하여 그룹정책개체 (GPO) 를 확인하고 수정하는 방법입니다. Powershell에서 Get-GPRegistryValue 명령어와 Set-GPRegistryValue 명령을 통해 레지스트리 기반 정책에 대한 정책 내용 확인과 정책 수정을 할 수 있겠습니다.

 

파워쉘을 통해 방화벽 정책내의 규칙을 수정하기 위해 시작되었으나 각 규칙의 수정은 불가능하고 규칙의 생성 및 삭제만 가능했습니다.

일반적인 레지스트리 기반 정책은 정책 설정을 변경하는것이 가능합니다.

 

아래 예제는 제어판 사용에 대한 정책과 방화벽 정책내의 규칙에 대한 내용입니다.

 

[제어판 정책]

 

1. '제어판 사용 금지 정책' 생성 후 내용 확인

GPMC

 

 

 2. 실제 경로로 이동하여 Registry 파일을 확인하기 위해 경로 확인

정책 GUID

 

 

3. C:\Windows\SYSVOL\sysvol\도메인명\Policies\2번에서확인한GUID\User 경로로 이동 후 Registry 파일을 열어 정책에 대한 레지스트리 경로 확인. 경로 뒤 'NoControlPanel' 부분은 ValueName에 해당되니 참고 하면 되겠습니다.

붉은색 글자는 사용하는 환경 및 정책 설정에 따라 변경될 수 있습니다.

정책 레지스트리

 

 

4. 상기 3번에서 확인한 Registry 경로를 이용하여 정책 정보 확인 (아래 명령어는 한줄입니다.)

Get-GPRegistryValue -Name "제어판 사용 금지" -Key "hkcu\software\microsoft\windows\currentversion\policies\explorer"

 정책 값(Value)에 대한 형식(Type)은 'DWord' 이고 'HasValue' 를 통해 정책이 구성되 있음을 알 수 있습니다.

이때 정책은 'Value' 부분에서 '사용' 또는 '사용안함'이 정의되어 있는데 'Value' 값이 '1' 이기 때문에 '사용'으로 정의 되어있음을 알 수 있습니다. 만약 '사용안함' 으로 되어있다면 값은 당연히 '0' 으로 정의 되어 있을겁니다.Get-GPRegistryValue

 

 

5. 명령을 통해 정책 설정을 변경합니다.  기존 '사용' 에서 '사용안함' 으로 변경하겠습니다. (아래 명령어는 한줄입니다.)

set-GPRegistryValue -Name "제어판 사용 금지" -Key "hkcu\software\microsoft\windows\currentversion\policies\explorer" -Type DWord -ValueName Nocontrolpanel -Value 0

Set-GPRegistryValue

 

 

6. 변경된 내용을 확인하기 위해 아래의 명령어를 통해 확인해보면 정책 설정이 변경되었음을 알 수 있습니다. (아래 명령어는 한줄입니다.)

Get-GPRegistryValue -Name "제어판 사용 금지" -Key "hkcu\software\microsoft\windows\currentversion\policies\explorer"

Get-GPRegistryValue

 

 

7. GUI 환경에서 확인하기 위해 GMPC.msc 를 실행시켜 그룹정책 관리콘솔에서 해당 정책의 내용을 확인해보면 기존 '사용' 에서 '사용안함' 으로 변경되었음을 확인 할 수 있습니다.

GPMC

 

 

8. 만약 해당 정책을 '구성되지 않음' 으로 변경하려면 아래 명령을 통해 정의 할 수 있겠습니다.

set-GPRegistryValue -Name "제어판 사용 금지" -Key "hkcu\software\microsoft\windows\currentversion\policies\explorer" -Disable

Set-GPRegistryValue

 

 

9. Get-GPRegistryValue 명령을 통해 확인해보면 'HasValue' 값이 'False' 즉, '구성되지 않음' 으로 바뀐것을 확인할 수 있습니다.

Get-GPRegistryValue

 

 

10. GUI에서도 확인해 보면 '구성되지 않음' 으로 변경되었음을 알 수 있습니다.GPME

 

 

 

 

 

[방화벽 정책의 규칙]

 

글의 시작에서도 언급했듯이 규칙을 변경하는 것은 불가능합니다. (물론 기존 내용을 복사하여 새롭게 만들고 기존 내용을 지워버리는 응용(?)을 하는것은 가능하나 명령으로서 지원되지 않습니다.)

 

1. 아래의 명령어로 내용 확인

(만들어둔 방화벽 정책의 이름은 'firewall'이고 규칙의 이름은 'IN_8088' 이며, 해당 정책의 인바운드 허용 포트는'8088'이며 '영역'에서 특정 IP를 넣어 두었습니다.)

PS C:\> Get-GPRegistryValue -Name "firewall" -Key hklm\software\policies\microsoft\windowsfirewall\firewallrules

KeyPath     : software\policies\microsoft\windowsfirewall\firewallrules
FullKeyPath : HKEY_LOCAL_MACHINE\software\policies\microsoft\windowsfirewall\fi
              rewallrules
Hive        : LocalMachine
PolicyState : Set
Value       : v2.20|Action=Allow|Active=TRUE|Dir=In|Protocol=6|LPort=8088|RA4=1
              92.168.100.10|RA4=192.168.250.0/255.255.255.0|RA4=192.168.200.10-
              192.168.200.20|Name=IN_8088|

 

 

2. 아래의 명령어로 규칙 변경 시도

set-GPRegistryValue -Name "firewall" -Key hklm\software\policies\microsoft\windowsfirewall\firewallrules -type string -Value "v2.20|Action=Allow|Active=TRUE|Dir=In|Protocol=6|LPort=8088|RA4=192.168.111.0/255.255.255.0|NAME=IN_8088|" -Additive

 

 

3. 결과를 확인해보면(명령어에 대한 결과물 캡쳐를 빼먹었습니다 ㅎㅎ) 기존 규칙은 남아 있고 새로운 규칙이 생성되었음을 알 수 있습니다.방화벽 정책

 

방화벽 규칙

'PowerShell' 카테고리의 다른 글

PowerShell 원격데스크톱 포트 변경  (0) 2016.04.20
PowerShell 호스트명 확인  (0) 2016.04.20
PowerShell을 이용한 정책 확인 및 수정  (0) 2016.03.30
PowerShell 조건문 Switch  (0) 2016.03.02
원격 Powershell 실행  (0) 2016.03.02
PowerShell 조건문 IF  (0) 2016.02.29
  Comments
댓글 쓰기