meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
windows:powershell [2014/10/24 14:22] – [referencias] lcwindows:powershell [2023/04/26 11:15] (actual) lc
Línea 1: Línea 1:
 +{{tag>poweshell}}
 ===== Powershell ===== ===== Powershell =====
-Para ejecutar el powershell desde el cuadro buscar-> powershell  o desde consola ejecutamos <code>Powershell</code>+Para ejecutar el powershell desde el cuadro buscar-> powershell  o desde consola ejecutamos <sxh>Powershell</sxh>
  
 El prompt cambiará y aparecerá como **PS C:\>** El prompt cambiará y aparecerá como **PS C:\>**
  
  
 +Para saber la versión que tenemos de powershell 
 +Abrimos una sesión de powershell y ejecutamos 
 +<sxh>$PSVersionTable</sxh>
 +El resultado será algo así 
 +<sxh>PS C:\Users\Administrador> $PSVersionTable
 +Name                           Value
 +----                           -----
 +PSVersion                      4.0
 +WSManStackVersion              3.0
 +SerializationVersion           1.1.0.1
 +CLRVersion                     4.0.30319.42000
 +BuildVersion                   6.3.9600.19170
 +PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
 +PSRemotingProtocolVersion      2.2
 +</sxh>
 +También podemos usar **$PSVersionTable.PSVersion** para saber la versión y el número de actualización de la misma
  
 +En este caso es una versión vieja 4.0 que viene por defecto con un windows server 2012
 +
 +Para actualizar la versión debemos de descargarla desde  la página de Microsoft
 +
 +=== Versión 6 ===
 +Esta nueva versión de Powershell, no podemos actualizarla como con las versiones anteriores (las que van desde la 1.0 a la 5.1 ). Hay que quitarlas antes de proceder a instalar la versión 6, que hay que descargarla desde https://github.com/PowerShell/PowerShell
 ==== Sacar información del directorio activo ==== ==== Sacar información del directorio activo ====
 Lo primero es carga el módulo del AD desde el powershell con   Lo primero es carga el módulo del AD desde el powershell con  
-<code>import-module ActiveDirectory</code>+<sxh>import-module ActiveDirectory</sxh>
  y si queremos sacar un listado po pantalla de equipos de nuestro dominio   y si queremos sacar un listado po pantalla de equipos de nuestro dominio 
-<code> Get-ADComputer -Filter * -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion -Wrap –Auto</code>+<sxh> Get-ADComputer -Filter * -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion -Wrap –Auto</sxh>
  
 que queremos el mismo listado para abrirlo desde un excel que queremos el mismo listado para abrirlo desde un excel
-<code> Get-ADComputer -Filter * -Property * | Select-Object Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion | Export-CSV AllWindows.csv -NoTypeInformation -Encoding UTF8</code>+<sxh> Get-ADComputer -Filter * -Property * | Select-Object Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion | Export-CSV AllWindows.csv -NoTypeInformation -Encoding UTF8</sxh>
  
 Equpos que no han cambiado la password en 30 días  Equpos que no han cambiado la password en 30 días 
-<code>    $d = [DateTime]::Today.AddDays(-30) +<sxh>    $d = [DateTime]::Today.AddDays(-30) 
-    Get-ADComputer -Filter ‘PasswordLastSet -lt $d’ -Properties PasswordLastSet | FT Name,PasswordLastSet</code>+    Get-ADComputer -Filter ‘PasswordLastSet -lt $d’ -Properties PasswordLastSet | FT Name,PasswordLastSet</sxh>
  
 +Usuarios que no han cambiado su contraseña en tres 180 días
 +<sxh>    $d = [DateTime]::Today.AddDays(-180)
 +    Get-ADUser -Filter ‘PasswordLastSet -lt $d’ -Properties PasswordLastSet | FT Name,PasswordLastSet</sxh>
  
 +Usuarios que no requieren password
 +<sxh>Get-ADUser -Filter 'userAccountControl -band 32' | FT Name</sxh>
  
 +Otro valores que podemos utilizar en vez de 32 
 +<note>
 +<file>
 +Active Directory userAccountControl Values:
 +
 +Normal Day to Day Values:
 +===========================
 +512 – Enable Account
 +514 – Disable account
 +544 – Account Enabled – Require user to change password at first logon
 +4096 – Workstation/server
 +66048 – Enabled, password never expires
 +66050 – Disabled, password never expires
 +262656 – Smart Card Logon Required
 +532480 – Domain controller
 +
 +All Other Values:
 +===========================
 +1 – script
 +2 – accountdisable
 +8 – homedir_required
 +16 – lockout
 +32 – passwd_notreqd
 +64 – passwd_cant_change
 +128 – encrypted_text_pwd_allowed
 +256 – temp_duplicate_account
 +512 – normal_account
 +2048 – interdomain_trust_account
 +4096 – workstation_trust_account
 +8192 – server_trust_account
 +65536 – dont_expire_password
 +131072 – mns_logon_account
 +262144 – smartcard_required
 +524288 – trusted_for_delegation
 +1048576 – not_delegated
 +2097152 – use_des_key_only
 +4194304 – dont_req_preauth
 +8388608 – password_expired
 +16777216 – trusted_to_auth_for_delegation</file></note>
 +
 +
 +
 +
 +===  Lanzar la consola de powershell como administrador ===
 +<sxh>start-process powershell -verb runas</sxh>
 +
 +=== Iniciar sesión en un equipo remoto ===
 +PowerShell está bloqueado de forma predeterminada, por lo que deberá habilitar PowerShell Remoting antes de usarlo.
 +
 +Previamente en el equipo **destino** deberemos de tener habilitado  la conexión remota.   Para habilitarla :
 +<sxh>Enable-PSRemoting -Force</sxh>
 +Para conectarnos al equipo lanzamos el siguiente comando desde el equipo **origen**
 +<sxh>Enter-PSSession miequipo.dominio.local -Credential USUARIO</sxh>
 +
 +Para salir <sxh>Exit-PSSession</sxh>
 +
 +=== Reinicio o apagado programado ===
 +
 +https://www.sysadmit.com/2019/02/windows-programar-apagado-reinicio-powershell.html
 ==== referencias ==== ==== referencias ====
   * http://blogs.itpro.es/rtejero/2014/10/13/algunos-cmdlets-interesantes-de-directorio-activo-gracias-a-un-rap-as-a-service/   * http://blogs.itpro.es/rtejero/2014/10/13/algunos-cmdlets-interesantes-de-directorio-activo-gracias-a-un-rap-as-a-service/
   * http://blogs.technet.com/b/askds/archive/2010/02/04/inventorying-computers-with-ad-powershell.aspx   * http://blogs.technet.com/b/askds/archive/2010/02/04/inventorying-computers-with-ad-powershell.aspx
 +  * http://www.joseangelfernandez.es/blog/category/programacion/powershell/
 +  * http://blogs.technet.com/b/heyscriptingguy/archive/2013/11/23/using-scheduled-tasks-and-scheduled-jobs-in-powershell.aspx#
 +  * http://blogs.itpro.es/rtejero/2014/04/02/instalar-powershell-4-0-en-nuestros-clientes-y-servidores-windows-management-framework-4-0/
 +  * http://blogs.itpro.es/rtejero/2014/09/15/errores-de-netlogon-no_client_site-parsear-con-powershell/
 +  * Using PowerShell to Remove Virtual Machine Snapshots in VMware ESXi 4.1 http://pipe2text.com/?page_id=1953
 +  * https://respontodo.com/como-ejecutar-comandos-de-powershell-en-equipos-remotos/
 +  * http://woshub.com/pswindowsupdate-module/
 +  * http://woshub.com/using-powershell-behind-a-proxy/
 +  * https://www.sysadmit.com/2021/11/windows-powershell-error-instalar-nuget.html
 +  * https://reparar.info/pswindowsupdate-administracion-de-actualizaciones-de-windows-desde-powershell/
 +  * https://blog.velingeorgiev.com/install-powershell-5-nuget-sharepointpnppowershellonline-behind-proxy
 +