PowerShell: Difference between revisions
Jump to navigation
Jump to search
(4 intermediate revisions by the same user not shown) | |||
Line 68: | Line 68: | ||
msiexec.exe /package PowerShell-7.1.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 | msiexec.exe /package PowerShell-7.1.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 | ||
Install-Module -Name Microsoft.PowerShell.RemotingTools | Install-Module -Name Microsoft.PowerShell.RemotingTools | ||
</source> | |||
==Web PowerShell== | |||
<source lang="bat"> | |||
@rem command only | |||
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://cdn.chorke.org/exec/cli/ps1/hello.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\academia\bin" | |||
</source> | |||
<source lang="powershell"> | |||
# power shell only | |||
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://cdn.chorke.org/exec/cli/ps1/hello.ps1')) | |||
</source> | </source> | ||
Line 129: | Line 140: | ||
* [https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/write-host?view=powershell-7.1 <code>Microsoft.PowerShell.Utility Write-Host</code>] | * [https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/write-host?view=powershell-7.1 <code>Microsoft.PowerShell.Utility Write-Host</code>] | ||
* [https://chocolatey.org/install Install Chocolatey using web hosted PowerShell] | * [https://chocolatey.org/install Install Chocolatey using web hosted PowerShell] | ||
* [https://devblogs.microsoft.com/scripting/understanding-the-six-powershell-profiles/ Understanding the Six PowerShell Profiles] | |||
* [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-5.0 Host and Deploy ASP.NET Core 5.0 on IIS] | * [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-5.0 Host and Deploy ASP.NET Core 5.0 on IIS] | ||
* [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1 Host and Deploy ASP.NET Core 3.1 on IIS] | * [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1 Host and Deploy ASP.NET Core 3.1 on IIS] | ||
* [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1 Host and Deploy ASP.NET Core 2.1 on IIS] | * [https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1 Host and Deploy ASP.NET Core 2.1 on IIS] | ||
* [https://github.com/minio/minio-service/tree/master/windows Running MinIO as a service on Windows] | |||
* [https://stackoverflow.com/questions/43902878/ Run PowerShell script from URL] | * [https://stackoverflow.com/questions/43902878/ Run PowerShell script from URL] | ||
* [https://superuser.com/questions/344927/ PowerShell Equivalent of cURL] | * [https://superuser.com/questions/344927/ PowerShell Equivalent of cURL] | ||
* [https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_profiles?view=powershell-7.2 About PowerShell Profiles] | |||
| valign="top" | | | valign="top" | | ||
|} | |} |
Latest revision as of 00:45, 3 August 2022
Get-Service WinRM
Restart-Service WinRM
Enable-PSRemoting -Force
Set-Item WSMan:\localhost\Client\TrustedHosts *
WinRM s winrm/config/client '@{TrustedHosts="10.19.83.10,10.19.83.14"}'
WinRM quickconfig
Test-WsMan 10.19.83.10
Invoke-Command -ComputerName 10.19.83.10 -ScriptBlock { Get-ChildItem C:\ } -Credential academia
Enter-PSSession -ComputerName 10.19.83.10 -Credential academia
OpenSSH
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
dism /Online /Get-Capabilities | findstr OpenSSH
dism /Online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0
dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Get-NetFirewallRule -Name *ssh*
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
notepad++ %PROGRAMDATA%\ssh\sshd_config
PubkeyAuthentication yes
# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile .ssh/authorized_keys
# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
#PermitEmptyPasswords no
# override default of no subsystems
#Subsystem sftp sftp-server.exe
Subsystem powershell c:/progra~1/powershell/7/pwsh.exe -sshs -NoLogo -NoProfile
pwsh
~/powershell/pwsh
Enter-PSSession -HostName 10.19.83.10 -UserName academia
PowerShell Core
cd ~\Downloads
msiexec.exe /package PowerShell-7.1.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1
Install-Module -Name Microsoft.PowerShell.RemotingTools
Web PowerShell
@rem command only
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://cdn.chorke.org/exec/cli/ps1/hello.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\academia\bin"
# power shell only
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://cdn.chorke.org/exec/cli/ps1/hello.ps1'))
Knowledge
Get-Service WinRM
Restart-Service WinRM
Enable-PSRemoting -Force
Get-Item WSMan:\localhost\Client\TrustedHosts
Set-Item WSMan:\localhost\Client\TrustedHosts *
Set-Item WSMan:\localhost\Client\TrustedHosts -Force -Value 10.19.83.10
$s = New-PSSession -ComputerName "10.19.83.10" -Credential(Get-Credential)
Invoke-Command -Session $s -ScriptBlock { Get-ChildItem C:\ }
Invoke-Command -Session $s -ScriptBlock { Get-Service }
Get-NetConnectionProfile
Set-NetConnectionProfile -InterfaceIndex 10 -NetworkCategory Private
Set-WSManQuickConfig
Enable-PSRemoting -SkipNetworkProfileCheck
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
brew cask install powershell
brew upgrade powershell --cask
brew tap homebrew/cask-versions