Archivo

Archivo para la categoría ‘Powershell’

Compartir Contactos y Calendarios en Exchange Online con PowerShell

lunes, 4 de febrero de 2013 Sin comentarios

ExchangeOnline

 

Buenas a todos, en el post de hoy explicare como compartir calendarios y contactos en Office365 Exchange Online con PowerShell.

Para esto, es necesario que el entorno este preparado para administrar Office365 con Powershell e inciar sesion con nuestras credenciales.

A continuacion ejecutar el siguiente comando para compartir la libreta de contactos llamada «Contactos»:

Add-MailboxFolderPermission propietario@dominio.com:\Contactos -AccessRights PublishingEditor -User Usuario_que_accedera@dominio.com

Lo mismo si queremos compartir un calendario concreto con otro usuario:

Add-MailboxFolderPermission propietario@dominio.com:\Calendario -AccessRights PublishingEditor -User Usuario_que_accedera@dominio.com

Los permisos que podemos aplicar son:

  • None
  • Owner
  • PublishingEditor
  • Editor
  • PublishingAuthor
  • Author
  • NonEditingAuthor
  • Reviewer
  • Contributor

 

Adicionalmente para el Calendario podemos aplicar los otros dos permisos:

  • AvailabilityOnly
  • LimitedDetails

Si por el contrario lo que queremos es modificar los permisos ya aplicados a un usuario en concreto con el que compartimos los contactos o calendario, ejecutaremos el siguiente comando:

Para el Calendario

Set-MailboxFolderPermission propietario@dominio.com:\Calendario -AccessRights PublishingEditor -User Usuario_que_accedera@dominio.com

Para los contactos:

Set-MailboxFolderPermission propietario@dominio.com:\Contactos -AccessRights PublishingEditor -User Usuario_que_accedera@dominio.com

Y finalmente para ver los permisos aplicados:

Para el Calendario

Get-MailboxFolderPermission propietario@dominio.com:\Calendario

Para los contactos

Get-MailboxFolderPermission propietario@dominio.com:\Contactos

 

Hasta Otra!

 

Limite de reglas de correo en Exchange Online

miércoles, 30 de enero de 2013 Sin comentarios

ExchangeOnline

Una de las ventajas que incorpora Microsoft Outlook (aparte de muchas otras) es la de manejar el correo electronico basandose en una serie de condiciones y acciones que nosotros podemos definir como por ejemplo:

Cuando llegue un mensaje que contenga el texto «facturas» en el asunto, moverlo a la carpeta «Facturacion»

Microsoft Exchange, permite que esas reglas se ejecuten sin necesidad de que Microsoft Outlook este abierto siempre y cuando no dependan de alguna caracteristica como de una cuenta adicional configurada en outlook…

Por defecto Exchange Online permite crear tantas reglas sean posibles en 64Kb. Sin embargo Microsoft ha ampliado este limite para el que lo requiera a 256Kb siempre y cuando el administrador de la suscripcion ejecute el comando oportuno en powershell.

Para poder hacer esto, es necesario tener nuestro entorno preparado para la administracion de office365 mediante PowerShell.

Una vez conectados al servicio, procederemos a ejecutar el siguiente comando:

Set-Mailbox usuario@dominio.com -RulesQuota 256kb

Este comando lo que hará será ampliar la cuota de reglas de 64kb a 256kb en un usuario determinado, pero si lo que queremos es ampliarlo para toda la organizacion, entonces el comando que tendremos que ejecutar es el siguiente:

Get-Mailbox | Set-Mailbox –RulesQuota 256kb

Si lo que queremos es confirmar el tamaño actual, el comando es el siguiente:

Get-Mailbox | FL DisplayName,RulesQuota

Gracias a Jesus Santaella – MSFT por el dato ;)

Hasta otra!

 

 

Categories: Exchange Online, IT, Office 365, Powershell Tags:

Buzones de recursos en Exchange Online – Parte 4

miércoles, 23 de enero de 2013 Sin comentarios

ExchangeOnline

Bueno, hoy toca la cuarta y ultima parte de esta serie donde hasta ahora ha contenido lo siguiente:

Y en este ultimo post, explicaremos como crear y administrar el otro tipo de buzones de recursos que existe, los buzones de equipamiento.

Como ya comente anteriormente en otros post, unicamente existe la via PowerShell de momento, porque en la siguiente version de Office365 podremos hacerlo por via GUI mediante la Exchange Management Console (EMC).

Es mas que obvio indicar que para proseguir, es necesario tener preparado nuestro entorno de Powershell para poder administrar nuestro Office365.

Asi que no alarguemos mas esta serie y demos comienzo.

Creacion de buzones de equipamiento:

New-Mailbox -Name «Nombre de Equipo» -Equipment

Donde aparece «Nombre de Equipo» podemos poner algo como «proyector numero 200», «LCD principal», etc…

Listar buzones de equipamiento:

Get-Mailbox -Filter ‘(RecipientTypeDetails -eq «EquipmentMailBox»)’ | select Name, Alias

Aceptar automáticamente peticiones de uso de un equipamiento:

Set-CalendarProcessing «Nombre de Equipo» -AutomateProcessing AutoAccept

Aceptar automáticamente peticiones de uso para todos los equipamientos:

Get-MailBox | where {$_.ResourceType -eq «Equipment»} | Set-CalendarProcessing -AutomateProcessing:AutoAccept

Asignar un delegado para aprobar las peticiones de uso de un equipamiento determinado:

set-calendarprocessing «Nombre de Equipo» –ResourceDelegates Usuario@contoso.com

Asignar un administrador de equipamiento para que tenga acceso total y permisos de Enviar Como (SendAs):

Add-MailBoxPermission «Nombre de Equipo» -User Usuario@contoso.com -AccessRights FullAccess

Asignar a un usuario los permisos para enviar como el equipamiento (SendAs) sin que tenga acceso total:

Add-RecipientPermission «Nombre de Equipo» -Trustee Usuario@contoso.com -AccessRights SendAs -Confirm:$false

Mostrar permisos de un Buzon de Equipamiento determinado y configuraciones de calendario:

Get-Mailbox «Nombre de Equipo»  | select ResourceType, RejectMessagesFrom,RejectMessagesFromDLMembers,RejectMessagesFromSendersOrMembers,SendModerationNotifications

Mostrar configuraciones de procesamiento de calendario en un Buzon de Equipamiento:

Get-Mailbox «Nombre de Equipo»  | Get-CalendarProcessing | FL

Mostrar moderadores asignados a un Buzon de Equipamiento:

Get-Mailbox «Nombre de Equipo» |ft -Property ModerationEnabled, ModeratedBy, GrantSendOnBehalfTo

Convertir un buzon normal en un buzon de equipamiento:

Set-Mailbox usuario@contoso.com -Type Equipment

Convertir un buzon de equipamiento en buzon normal:

Get-Mailbox «Nombre de Equipo» | Set-Mailbox -Type Regular

Configurar con cuanta antelación podemos reservar un equipamiento en función de días:

Get-Mailbox «Nombre de Equipo» | Set-CalendarProcessing -BookingWindowInDays «numero de días»

Mostrar la antelación con la que podemos reservar un equipamiento en función de días:

Get-Mailbox «Nombre de Equipo» | Get-CalendarProcessing | FL Identity, BookingWindowInDays

Eliminacion de un buzon de equipamiento:

Remove-Mailbox «Nombre de Equipo»

Como podeis observar los comandos no son muy diferentes a los empleados en los buzones de salas, sin embargo hay comandos que no son compatibles en este tipo de buzones.

Espero que esta serie haya sido de gran ayuda y utilidad para los ItPros.

Hasta el proximo post.

Buzones de recursos en Exchange Online – Parte 2

martes, 15 de enero de 2013 Sin comentarios

ExchangeOnline

Anteriormente, en el post titulado «Buzones de recursos en Exchange Online – Parte 1» explicamos que son los buzones de recursos, su uso y las diferencias entre los dos tipos (Buzones de Sala y Buzones de Equipamiento).

Ahora toca el momento de indicar como crear estos buzones y como administrarlos en el caso de que queramos que sean administrables.

Para poder crearlos y administrarlos, tenemos la opción PowerShell y la opción GUI, de momento indicaremos el método PowerShell y mas adelante el método GUI, por lo que será necesario que tengamos preparado nuestro entorno para la administración de Office365 con PowerShell.

 

En el post de hoy empezaremos por los buzones de sala:

 

· Creación del buzon:

New-Mailbox -Name «Nombre de la Sala» -Room

· Aceptar automáticamente peticiones de uso de una sala determinada:

Set-CalendarProcessing «Nombre de la Sala» -AutomateProcessing AutoAccept

· Aceptar automáticamente peticiones de uso para todas las salas:

Get-MailBox | where {$_.ResourceType -eq «Room»} | Set-CalendarProcessing – AutomateProcessing:AutoAccept

· Asignar un delegado para aprobar las peticiones de uso de una sala determinada:

set-calendarprocessing «Nombre de la Sala» –ResourceDelegates Usuario@contoso.com

· Asignar un Administrador de Sala para que tenga acceso total y permisos para enviar como la sala (SendAs):

Add-MailBoxPermission «Nombre de la Sala» -User Usuario@contoso.com -AccessRights FullAccess

· Asignar a un usuario los permisos para enviar como la sala (SendAs) sin que tenga acceso total:

Add-RecipientPermission «Nombre de la Sala» -Trustee Usuario@contoso.com -AccessRights SendAs -Confirm:$false

· Asignar a un usuario permisos de editor de publicación en una sala determinada:

Add-MailBoxFolderPermission «Nombre de la Sala»:\calendario -AccessRight PublishingEditor -User Usuario@contoso.com

· Establecer permisos predeterminados de una sala al valor editor de publicación:

Set-MailBoxFolderPermission «Nombre de la Sala»:\calendario –User default –AccessRights PublishingEditor

· Mostrar listado de Buzones de Sala creados:

Get-Mailbox -Filter ‘(RecipientTypeDetails -eq «RoomMailbox»)’ | select Name, Alias

· Mostrar permisos de un Buzon de Sala determinado y configuraciones de calendario:

Get-Mailbox «Nombre de Sala»  | select ResourceType, RejectMessagesFrom,RejectMessagesFromDLMembers,RejectMessagesFromSendersOrMembers,SendModerationNotifications

· Mostrar configuraciones de procesamiento de calendario en un Buzon de Sala:

Get-Mailbox «Nombre de Sala»  | Get-CalendarProcessing | FL

· Mostrar moderadores asignados a un Buzon de Sala:

Get-Mailbox <Room Name> |ft -Property ModerationEnabled, ModeratedBy, GrantSendOnBehalfTo

· Mostrar permisos de un calendario determinado:

Get-MailBoxFolderPermission  <Room:\calendar>  | Select FolderName, user, AccessRights

· Convertir un buzon normal en un buzon de sala:

Set-Mailbox usuario@contoso.com -Type Room

· Convertir un buzon de sala a buzon normal:

Get-Mailbox «Nombre de Sala» | Set-Mailbox -Type Regular

· Configurar el calendario de un Buzon de Sala para que muestre la información del Organizador y el Asunto de la reunión programada:

Set-CalendarProcessing «Nombre de Sala» -AddOrganizerToSubject $true -DeleteComments $false -DeleteSubject $false

· Configurar el calendario de un Buzon de Sala para que muestre detalles de forma limitada:

Set-MailboxFolderPermission -AccessRights LimitedDetails -Identity «Nombre de Sala»\Calendario -User default

· Configurar con cuanta antelación podemos reservar una sala en función de días:

Get-Mailbox «Nombre de Sala» | Set-CalendarProcessing -BookingWindowInDays «numero de días»

· Mostrar la antelación con la que podemos reservar una sala en función de días:

Get-Mailbox «Nombre de Sala» | Get-CalendarProcessing | FL Identity, BookingWindowInDays

· Crear un listado de salas:

New-DistributionGroup -Name «Nombre de grupo» -RoomList

· Publicar un Calendario de un Buzon de Sala en internet:

Set-MailboxCalendarFolder -Identity «Nombre del Buzon»:\calendario -PublishEnabled $true

· Averiguar URL Asignada a un calendario de un Buzon de Sala publicado en internet:

Get-MailboxCalendarFolder -Identity «Nombre del Buzon»:\calendario

 

En el siguiente post, indicaré como crear y administrar los Buzones de Salas via GUI.

Hasta el siguiente post.

 

Desbloquear tipos de archivos en Exchange Online via PowerShell

sábado, 12 de enero de 2013 Sin comentarios

ExchangeOnline

Por defecto, Exchange Online bloquea algunos tipos de archivo a la hora de recibirlo eliminándolos y sustituyéndolos por un fichero txt con el siguiente texto en su interior:

File_Name.xsl has been removed since it was found to match the FILE FILTER= ExchangeLabs File Filter List 1: <in>*.xsl file filter.

Esto es debido a la política por defecto que nos aplica FOPE en nuestras suscripciones.

Los tipos de archivo que se bloquean por defecto son:

.ade .adp .app .asp .aspx .asx .bas .bat .cer .chm .cmd .com .cpl .crt .csh .der .exe
.fxp .gadget .hlp .hta .htc .inf .ins .isp .its .js .jse .ksh .lnk .mad .maf .mag .mam .maq
.mar .mas .mat .mau .mav .maw .mda .mdb .mde .mdt .mdw .mdz .mht .mhtml .msc
.msh .msh1 .msh1xml .msh2 .msh2xml .mshxml .msi .msp .mst .ops .pcd .pif .plg .prf
.prg .ps1 .ps1xml .ps2 .ps2xml .psc1 .psc2 .pst .reg .scf .scr .sct .shb .shs .tmp .url .vb
.vbe .vbs .vsmacros .vss .vst .vsw .ws .wsc .wsf .wsh .xml

Para poder recibir estos tipos de archivos, tendremos que disponer de un plan Empresarial como E1, E2, E3, E4 o Exchange Online Plan 1. Si disponemos de un plan Office365 P1, P2 o P3, no podremos continuar ya que por defecto estos planes no permiten la modificación de políticas FOPE.

Una vez aclarado esto, procedamos a explicar como permitir la recepción de estos archivos en nuestra suscripción:

  1. Tener preparado nuestro entorno para la administración de office365 mediante PowerShell.
  2. Iniciar sesión con nuestras credenciales de administrador.
  3. Ejecutar el siguiente comando:

    Set-OwaMailboxPolicy -Identity OwaMailboxPolicy-Default -AllowedFileTypes @{Add = «.mdb»}

Donde .mdb especifica el tipo de archivo que queremos permitir.

Sin embargo tenemos una segunda opción para poder permitir estos archivos sin necesidad de administrar nada. Se trata de una vuelta de tornillo independientemente del plan que tengamos contratado, y es enviar el archivo o los archivos dentro de un zip o un rar protegidos por contraseña.

UPDATE:

En algunos casos, nos aparecerá el siguiente mensaje al ejecutar el comando arriba mencionado:

Esta operación no está permitida para una organización que tiene deshabilitadas las personalizaciones. Para habilitar e

sta operación, necesita ejecutar primero la tarea Enable-OrganizationCustomization.

+ CategoryInfo          : NotSpecified: (:) [Set-OwaMailboxPolicy], InvalidOperatio…ontextException

+ FullyQualifiedErrorId : CBE9B832,Microsoft.Exchange.Management.Tasks.SetOwaMailboxPolicy

——————————————-

Para poder continuar, deberemos ejecutar antes del paso numero 3, el comando:

Enable-OrganizationCustomization

y a continuación ejecutaremos el comando del paso 3.

 

 

Como recuperar un buzon eliminado en Office365 via Powershell

domingo, 6 de enero de 2013 Sin comentarios

Buenas a todos y Felices Reyes!

En el post de hoy, os indicaré como recuperar un buzon eliminado en Exchange Online mediante el uso de powershell. Cabe destacar que este proceso solo será valido para buzones que hayan sido eliminados en un periodo no superior a 30 días.

Para llevar a cabo esta tarea, deberemos tener preparado nuestro entorno de powershell para acceder a la administracion de Office365.

Una vez iniciada la sesión en nuestro powershell, ejecutamos el siguiente comando:

New-Mailbox -Name «Nombre de buzon nuevo» -RemovedMailbox «Nombre de buzon eliminado» -MicrosoftOnlineServicesID usuario_nuevo@empresa.com -Password (ConvertTo-SecureString -String ‘Contraseña’ -AsPlainText -Force)

Esto restaurara nuestro buzon eliminado con el nuevo id y contraseñas asignados.

Si no sabemos con exactitud que buzon es el que queremos recuperar, tan solo deberemos ejecutar el siguiente comando para recuperar un listado de buzones eliminados:

Get-RemovedMailbox

 

Es altamente recomendable restaurar el buzon con un id distinto al anterior ya que de esa forma evitamos que hayan conflictos en caso de que esa direccion ya este asignada a otra persona.

Si lo que queremos es restaurar el buzon eliminado simplemente para que vuelva a estar activa y no para recuperar información, entonces podemos asignar el mismo id que tenia antes por lo que trasladando esto a datos «reales» nos quedaria algo así:

Usuario: John Smith
Correo: jsmith@contoso.com
Comando a ejecutar:

New-Mailbox -Name «John Smith» -RemovedMailbox «John Smith» -MicrosoftOnlineServicesID jsmith@contoso.com -Password (ConvertTo-SecureString -String ‘Enero2012’ -AsPlainText -Force)

Una vez hecho esto, procederemos a iniciar sesion en OWA con el usuario recuperado y la contraseña asignada.

En el siguiente post os explicare como hacer esto mismo via GUI.

Hasta otra!

 

Estadisticas de Buzones de Office365

jueves, 27 de diciembre de 2012 Sin comentarios

logo-powershell

Hoy seguimos con la saga Powershell para Office365. Esta vez trataremos algo que normalmente no se suele utilizar pero que se recomienda muchísimo a la hora de hacer seguimiento sobre los buzones y lo que es mas importante y de gran utilidad para resolver problemas con los buzones, el numero de elementos que contiene.

  • Lo primero que tendremos que hacer, será preparar nuestro entorno para el uso de powershell, sino lo tenemos ya.
  • A continuacion iniciaremos sesión con nuestras credenciales de Administrador de nuestro Office365.
  • Luego haremos uso del comando Get-MailboxStatistics

Get-MailboxStatistics -Identity usuario@dominio.com

Como podemos observar en la imagen inferior, obtendremos el resultado del nombre para mostrar, el numero de elementos que contiene el buzon, el status de almacenamiento en cuanto al limite y la hora del ultimo inicio de sesión…

user_result_stats

 

Esto al igual que se aplica para un buzon en concreto, lo podemos aplicar para todos los usuarios de la suscripción, jugando con el pipeline «|», de la siguiente forma:

Get-User | Get-MailBoxStatistics

Digo que nos es especialmente útil esta herramienta porque en su momento publicare un post sobre los limites (Hard y Soft) que existen en nuestro Office365.

 

Hasta otra!

 

Bloquear a un usuario en Office 365 via Powershell

martes, 25 de diciembre de 2012 Sin comentarios

office365

Para bloquear a un usuario via powershell, deberemos iniciar sesión en nuestro Office365 utilizando credenciales de Administrador (si no sabes como, pincha aquí).

Una vez iniciada sesión, tendremos que conectarnos al servicio de MSOL e introducir las credenciales de administración de office365, con el comando:

Connect-MsolService

Luego tan solo deberemos ejecutar el siguiente comando:

Set-MsolUser -UserPrincipalName usuario@contoso.com -blockcredential $true

Al ejecutar el comando, el usuario no podrá acceder al buzon ni por OWA, ni por Outlook, pero esto no quita que pueda seguir viendo los datos ya descargados en el ost. Ahora bien, si tenemos configurado el Outlook para que no trabaje en modo cache, el usuario no podrá acceder ni siquiera a los datos antiguos.

Si lo que queremos es desbloquear a un usuario, solo tendremos que modificar la variable booleana -BlockCredential a $false, por lo que el comando seria:

Set-MsolUser -UserPrincipalName usuario@contoso.com -BlockCredential $false

En el siguiente post hablaremos como hacerlo via GUI.

Hasta el siguiente post.

Añadir y Eliminar usuarios de Office365 mediante Powershell

domingo, 23 de diciembre de 2012 Sin comentarios

 

 

logo-powershell

Seguimos con la serie de tutoriales de Administración de Office365 mediante Powershell.

Esta vez, algo sencillo pero útil para administrar varias cuentas a la vez, crear y eliminar usuarios de Office365 mediante powershell.

Empecemos por indicar, que obviamente tendremos que tener nuestro entorno de powershell preparado para Office365.

Una vez dicho esto, podemos ir al grano…

Añadir Usuarios:

Tendremos que tener licencias disponibles en nuestra suscripción si queremos asignar una licencia a nuestro usuario, de lo contrario tendremos que acceder a la administración de nuestro offcie365 via web, y comprar las licencias.

  • Iniciamos sesión en nuestro office365 con powershell.
  • Ejecutamos el siguiente cmdlet para dar de alta el usario

New-MsolUser -UserPrincipalName a.lopez@contoso.com -DisplayName «Antonio Lopez – Contoso Ltd.» -FirstName «Antonio» -LastName «Lopez«

  • Especificamos la ubicación del usuario (en este caso, España)

Set-MSOLUser –UserPrincipalName a.lopez@contoso.com –UsageLocation ES

  • Asignamos la licencia al usuario con el siguiente Cmdlet

Set-MsolUserLicense -UserPrincipalName a.lopez@contoso.com -AddLicenses «tenantname:AccountSKUId»

Donde «tenantname» en nuestro caso seria «contoso» y «AccountSKUId» será el plan que queramos asignar, los AccountSKUId disponibles son:

K1:
SHAREPOINTDESKLESS
EXCHANGE_S_DESKLESS

K2:
SHAREPOINTWAC
SHAREPOINTDESKLESS
EXCHANGE_S_DESKLESS

P1:
MCOLITE
SHAREPOINTLITE
EXCHANGE_L_STANDARD

E1:
MCOSTANDARD
SHAREPOINTSTANDARD
EXCHANGE_S_STANDARD

E3:
OFFICESUBSCRIPTION
MCOSTANDARD
SHAREPOINTWAC
SHAREPOINTENTERPRISE
EXCHANGE_S_ENTERPRISE

E4:
OFFICESUBSCRIPTION
MCOSTANDARD
SHAREPOINTWAC
SHAREPOINTENTERPRISE
EXCHANGE_S_ENTERPRISE

A2:
SHAREPOINTWAC_EDU
MCOSTANDARD
SHAREPOINTSTANDARD_EDU
EXCHANGE_S_STANDARD

No obstante, podemos ejecutar el siguiente cmdlet para averiguar los AccountSKUId que tenemos en nuestro Office365

Get-MsolAccountSku | Format-Table AccountSkuId, SkuPartNumber

 

Nota: si queremos hacer un upgrade de la licencia a un usuario, primero tendremos que quitar la licencia actual, y luego asignar la nueva.

Para quitar la licencia a un usuario ejecutamos lo siguiente:

Set-MsolUserLicense -UserPrincipalName a.lopez@contoso.com -RemoveLicenses «tenantname:AccountSKUId«

 

 

Eliminar un usuario:

Simplemente ejecutaremos el siguiente Cmdlet:

Remove-MsolUser -UserPrincipalName a.lopez@contoso.com

Al ejecutar este cmdlet, automáticamente moverá el usuario al apartado de buzones eliminados (no es un harddelete).

 

Hasta el próximo post…

Deshabilitar directiva de contraseñas en Office365

viernes, 21 de diciembre de 2012 Sin comentarios

Buenas a todos,

Si en un post anterior explicaba como deshabilitar la caducidad de contraseñas en Office365, ahora os indico un pequeño Cmdlet que nos permitirá deshabilitar la directiva de contraseñas fuertes en nuestro Office 365.

Por defecto todas las contraseñas en Office365, deben cumplir con un cierto nivel de complejidad que contengan las siguientes características:

  • 8 caracteres como minimo y 16 como máximo
  • Valores admitidos:
    • Letras de la A-Z (letras mayúsculas)
    • Letras de la a-z (letras minúsculas)
    • Números del 0 al 9
    • los caracteres especiales !@#$%^&*-_+=[]{}|\:´,.?/`~»<>();
    • No se admite Unicode.
  • No puede contener parte del nombre de usuario o alias

Bien pues para poder deshabilitar estas restricciones (las cuales no recomiendo para nada), deberemos indicar el siguiente Cmdlet después de iniciar sesión en nuestro Office365 con powershell:

SetMsolUser -UserPrincipalName usuario@contoso.com -StrongPasswordRequired $false

Para volver a habilitarla:

SetMsolUser -UserPrincipalName usuario@contoso.com -StrongPasswordRequired $true

 

Hasta otra!