Workgroup 환경에서 Windows 10의 원격 관리 설정하기


<Remote Management Settings>
1) Firewall off
– firewall.cpl에서 설정하기
## PowerShell에서는 다음과 같이 설정
Get-NetFirewallProfile | Select-Object -Property name,enabled
Set-NetFirewallProfile -Enabled False
(## 또는 Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False)
##Command Prompt에서는 다음과 같이 설정
netsh advfirewall set allprofiles state off
2) Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
3) Enable-PSRemoting -Force
4) Set-Item WSMan:\localhost\client\Trustedhosts -Value *
## PowerShell Script를 실행하기 위해서는
Set-ExecutionPolicy RemoteSigned

 

 

 

 

Advertisements

PowerShell v6.0에 대한 최신 내용


(강추)참고1: https://github.com/janikvonrotz/awesome-powershell

참고2: https://richardspowershellblog.wordpress.com/2017/10/24/powershell-v6-1-major-differences/

PowerShell v6은 PowerShell 5.1의 업그레이드 버전이 아니다.
하나의 컴퓨터에 PowerShell 5.1과 PowerShell 6.0을 동시에 설치할 수 있다

Windows PowerShell (v1 – v5.1)은 Windows에서만 사용하는 버전이다
PowerShell core (v6)은 Windows, Linux, macOS 및 docker에서도 사용 가능한 cross-platform 버전이다
(참고: https://github.com/PowerShell/PowerShell)

 

<긴급 변경 사항>
Allow * to be used in registry paths
Remove -ShowWindow from Get-Help
Fix incorrect position of a parameter which resulted in the args passed as input instead of as args for InvokeScript()
Change positional parameter for powershell.exe from -Command to -File

<일반적인 변경 사항>
원격 관리 기술로서 WSMAN뿐 아니라 SSH 기술 지원
OS,H/W,설치된 App에 대한 정보 수집에 사용하는 WMI 명령은 완전히 제거. 하지만 CIM은 여전히 사용 가능
*-Counter 명령어들 제거
Move-Item에 -Include, -Exclude, -Filter 포함시킴
Remove-Service 명령어 추가
Set-Service에 credentials 기능 추가함
Get-Date에 좀 더 많은 Argument를 추가함
Workflows 제거
enums을 string으로 convert하는 것 지원
*nix에 case sensitivity 지원
Pipeline의 제일 마지막에 &을 추가하여 PowerShell job으로 변경할 수 있음(Pipeline을 background 작업 가능)
Split-Path에 -Extension 및 -LeafBase을 사용하여 파일 이름 확장자와 파일 이름의 나머지 사이의 경로를 분리할 수 있음
비 Windows OS에도 transcription을 사용할 수 있다
Exclude -ComObject parameter of New-Object on unsupported (currently non-Windows)
Get-Content -Delimiter to not include the delimiter in the array elements returned
Fix Get-Help to not return multiple instances of the same help file

<Linux의 PowerShell core에서의 변화>
Linux의 bash에서 powershell로 변경할 때는 pwsh.exe를 사용하도록 변경했다. (Not powershell.exe)
Linux에서 Remoting을 할 때(e.g. *-Service & *-Process) DCOM 기술을 사용한 -ComputerName을 제거했다. 반드시 SSH 및 WSMAN만 사용하도록 했다.

 

특정한 날짜 이후로 생성된 파일 확인 및 복사, 그리고 삭제하기


자신의 노트북 컴퓨터 및 서버 컴퓨터에서 특정한 날짜 이후로 생성된 파일을 알아보고, 필요하면 다른 곳으로 복사하고, 마지막으로 삭제까지 할 수 있다.
여기서 각 파일의 LastWriteTime 속성 및 날짜 형식을 이용한다

Get-ChildItem c:\down -Recurse | Where-Object {$_.LastWriteTime -gt “10/29/2017”}

Get-ChildItem c:\down -Recurse | Where-Object {$_.LastWriteTime -gt “10/29/2017”} | Copy-Item -Destination d:\imsi

Get-ChildItem c:\down -Recurse | Where-Object {$_.LastWriteTime -gt “10/29/2017”} | Remove-Item