Files
Gl-Komp-IT-Sys/docs/powershell.md

158 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Basic-config
Set-Password, Set-Hostname, IP-Config, DNS-Config, Firewall
<details>
<summary>Expand</summary>
#### Set-Password
> Get-LocalUser -Name [Username] | Set-LocalUser -Password (ConvertTo-SecureString -AsPlainText [Password] -Force)
```ruby
Get-LocalUser -Name 'Administrator' | Set-LocalUser -Password (ConvertTo-SecureString -AsPlainText 'Passw0rd' -Force)
```
#### Set-Hostname
> Rename-Computer -NewName [Name der Maschine] -Restart -Force
```ruby
Rename-Computer -NewName 'DC01' -Restart -Force
```
#### IP-Config
> New-NetIPAddress -InterfaceIndex [Index des Interfaces] -AddressFamily [IPv4/IPv6] -IPAddress [IP-Adress] -PrefixLength [SNM / Prefix] -DefaultGateway [IP-Adresse des Default-Gateway]
```ruby
New-NetIPAddress -InterfaceIndex 3 -AddressFamily IPv4 -IPAddress '172.16.7.100' -PrefixLength '255.255.255.0' -DefaultGateway '172.16.7.254'
```
#### DNS-Config
> Set-DnsClientServerAddress -InterfaceIndex [Index des Interfaces] -ServerAddresses ("[IP-Adresse primärer DNS]","[IP-Adresse sekundärer DNS]")
```ruby
Set-DnsClientServerAddress -InterfaceIndex '3' -ServerAddresses ('172.16.7.11','172.16.7.12')
```
#### Firewall-on/off
> netsh advfirewall set allprofiles state [off/on]
```ruby
netsh advfirewall set allprofiles state off
```
</details>
## Interface Options
Infos auslesen, IPv6 on/off, DHCPv6 on/off, Networkmode [Public/Private/Domain]
<details>
<summary>Expand</summary>
#### Adapterinfos auslesen [Name/Index/Ip-Adress]
> Get-NetIPInterface -AddressFamily [IPv4/6]
```ruby
Get-NetIPInterface
```
#### IPv6-an/abschalten
> [Disable/Enable]-NetAdapterBinding -Name [Name der Netzwerkkarte] -ComponentID ms_tcpip6
```ruby
Disable-NetAdapterBinding -Name 'eth0' -ComponentID ms_tcpip6
```
```ruby
Enable-NetAdapterBinding -Name 'eth0' -ComponentID ms_tcpip6
```
#### IPv6-DHCP-abschalten
> Set-NetIPInterface -InterfaceAlias [Name der Netzwerkkarte] -AddressFamily [IPv4/IPv6] -Dhcp Disabled
```ruby
Set-NetIPInterface -InterfaceAlias 'Inside' -AddressFamily 'IPv6' -Dhcp Disabled
```
> Set-NetIPInterface -InterfaceIndex [Index der Netzwerkkarte] -AddressFamily [IPv4/IPv6] -Dhcp Disabled
```ruby
Set-NetIPInterface -InterfaceIndex '3' -AddressFamily 'IPv6' -Dhcp Disabled
```
## Set-Networkcard-to-private
> Set-NetConnectionProfile -InterfaceIndex [Index der Netzwerkkarte] -NetworkCategory [Public/Private/Domain]
```ruby
Set-NetConnectionProfile -InterfaceIndex '3' -NetworkCategory 'Private'
```
</details>
## Add-Route
> Command: New-NetRoute -DestinationPrefix [Subnet] -InterfaceIndex [Index der Netzwerkkarte] -NextHop [IP-Adress] -RouteMetric [Metric]
```ruby
New-NetRoute -DestinationPrefix '172.16.0.0/20' -InterfaceIndex '7' -NextHop '172.16.X.254' -RouteMetric '1'
```
## Remote-Access
Read TrustedHosts
```ps
Get-Item WSMan:localhost\client\TrustedHosts
```
Set TrustedHost
> Command: Set-Item WSMan:localhost\client\TrustedHosts Value '[IP bzw. hostname]'
> Command: Set-Item WSMan:localhost\client\TrustedHosts Value '[IP bzw. hostname],[IP bzw. hostname]'
```ruby
Set-Item WSMan:localhost\client\TrustedHosts Value '172.16.7.254'
```
Activate Remote-PS
```ruby
Enable-PsRemoting
```
## Remote PS Execute
Remote befehle oder scirptblöcke ausführen
> Command: Invoke-Command ComputerName [IP bzw. FQDN] Credential [User] Command {[Befehl]}
> Command: Invoke-Command ComputerName [IP bzw. FQDN] Credential [User] ScriptBlock {[Befehle]}
```ruby
Invoke-Command ComputerName [IP bzw. FQDN] Credential [User] Command {[Befehl]}
```
```ruby
Invoke-Command ComputerName [IP bzw. FQDN] Credential [User] ScriptBlock {[Befehle]}
```
## AD Set-Serverroll, Join-Domain, Add-User
<details>
<summary>Expand</summary>
#### Change-Serverrolle-im-AD
> Move-ADDirectoryServerOperationMasterRole -Identity [Ziel-DC] -OperationMasterRole [SchemaMaster/RIDMaster/InfrastructureMaster/DomainNamingMaster/PDCEmulator]
> Move-ADDirectoryServerOperationMasterRole -Identity [Ziel-DC] -OperationMasterRole [0/1/2/3/4]
```ruby
Move-ADDirectoryServerOperationMasterRole -Identity 'DC01' -OperationMasterRole PDCEmulator
```
#### Add-User
New-ADUser -Name [Vor Nachname] `
-GivenName [Vorname] `
-Surname [Nachname] `
-SamAccountName [Anmeldename] `
-UserPrincipalName [Anmedldename@domain.tld] `
-Path "OU=Users,DC=yourdomain,DC=com" `
-AccountPassword (ConvertTo-SecureString [Passw0rd] -AsPlainText -Force) `
-Enabled $true
```ruby
New-ADUser -Name "John Doe" -GivenName "John" -Surname "Doe" -SamAccountName "jdoe" -UserPrincipalName "jdoe@yourdomain.com" -Path "OU=Users,DC=yourdomain,DC=com" -AccountPassword (ConvertTo-SecureString "P@ssword1" -AsPlainText -Force) -Enabled $true
```
</details>
> Command:
```ruby
```