Créelo, tú puedes…

Estamos enfrentando la ultima etapa del 2019, última semana para decirle adiós y abrazar el 2020, es una época en la que reflexionamos sobre lo que logramos hacer y nos hacemos nuevos propósitos para el año que empieza, a mi me gusta hacer este ejercicio y remembrar todos los logros, todos esos momentos clave en un histograma, porque muchas decisiones que tomé, luego me llevaron a experimentar otras situaciones que jamas hubiera pensado, abriendo puertas y oportunidades.

Tener confianza en tus capacidades es algo que nadie te puede imponer, nace de tu inspiración y tu nivel de energía

Este año entendí que los límites los pones tú mismo, cuando llegas a creer en que lo puedes lograr, que lo vas a hacer, realmente cosas maravillosas pasan. Cuando tienes la convicción de un destino, de una meta, de lograr algo. Por eso hoy querido lector, quiero invitarte a hacer una lista, con tus deseos, pide o describe algo que te gustaría, con cuatro o cinco bastará, y luego a partir de ahí, empezaremos a elaborar el plan, con pequeños pasos vas a lograr ir avanzando hacia tus propósitos. Pongamos fechas límite, eso permitirá ir tomando el nivel de avance o estancamiento de un proyecto, por eso pinta tu norte, haz un buen plan, y organiza tus prioridades.

“Cuando no sabes a dónde vas, cualquier camino te sirve…” -Lewis Carroll, Alicia en el país de las maravillas

Supongamos que me propongo hacer un examen de certificación Microsoft, el plan debe empezar por escojer entre los exámenes disponibles, actuales, sobre tecnologías vigentes, como Azure o Microsoft 365. Muy bien vamos a suponer el examen AZ-900, fundamentos de Microsoft Azure, vamos a curiosear que se evalúa en este examen, entonces vamos a la página de http://www.microsoft.com/learning y buscamos el exámen. Una vez que vimos los cuatro temas principales, empezaremos nuestra preparación, visitando http://www.microsoft.com/learn, es un primer paso, a tu ritmo, en español, con la oportunidad de ir practicando los capítulos que vas leyendo sin tener que crear un tenant de prueba, nada de tarjetas de crédito… Okey, siguiente paso, aprender de otros, en este punto recomiendo sitios como LinkedIn Learning, pluralsign, Coursera y otros, ya que desafortunadamente YouTube tiene demasiado contenido y es realmente difícil conseguir buen material con poco esfuerzo, aún así hay muchos instructores dedicados, a proyectar su conocimiento y aportar su granito de arena. Cuánto vale el examen, vamos a programarlo en un CPLS, pongamos una fecha, y vamos a validar que tanto sabemos del tema.

Concluyendo, si tienes la convicción de hacer algo en este 2020, haz una lista, busca ordenar tus prioridades, y simplemente “vamos a hacer que pase”. Apoyarte con amigos, gente que te aporte, que te ayude a crecer y a desarrollar las ideas. No pierdas el tiempo quejándote, eso solo es una perdida de tiempo y energía. Así que adelante, construyamos tus habilidades para que juntos construyamos aplicaciones y soluciones de impacto social, aportemos a un país más funcional, facilitemos la inclusión, la accesibilidad, y dejemos nuestra huella en la historia, en el tiempo.

Así que no te rindas sin dar la pelea, las herramientas de formación son cada vez más accesibles, no todo es cuestión de plata. Y mientras quieras hacer las cosas lo lograrás cuando no quieras hacerlas encontrarás una excusa. Entonces arriba porque lo que te va a hacer falta es tiempo…

Nos vamos a trastear…

Hace ya un par de años venia compartiendo artículos y procedimientos paso a paso, algunas veces un script, o algo que me llamara la atención en configuraciones o características de producto, otras veces invitaciones a eventos como charlas o vídeos. Ha llegado el momento de hacer de este canal algo más cotidiano, así como invitarlos al sofá de mi casa, para que podamos conversar más cómodos, mas de cerca. ahora estaremos ubicados en nuestra nueva URL http://www.CampoHenriquez.com se que aún no tenemos la sana costumbre de una publicación periódica, pero este nuevo dominio vamos a tener una frecuencia al menos semanal -haré mi mejor esfuerzo.-

Como ingeniero de sistemas, como entrenador MCT, como instructor de LinkedIn Learning, como Microsoft MVP, o por participar como Insider, Ambassador de XBOX, CSS de Office 365 o Arquitecto de soluciones Cloud, pero definitivamente buscaremos activamente los contenidos técnicos, los temas geek que nos gusta ver, (me encantaría poder hacer referencia a películas y series.. pero eso tengo que validarlo…) se que va a sonar como esos propósitos de fin de año, “Quisiera bajar 18 Kilos”… “voy a publicar al menos semanalmente”.. pero después de haber platicado con diferentes personas, influencers y youtubers, las audiencias para los Blogs saben que están buscando, quieren simpatía, alguien que les explique con detalle, y con un retorno al tiempo invertido en la lectura.

Microsoft Teams

Hace tiempo quería describir la arquitectura subyacente de Microsoft Teams, dado que esta aplicación esta reemplazando gradualmente a todos los clientes que Microsoft tenía sobre Skype for business, y se planea que a finales de este año ( FY 2020) la población de Skype For Business Online (es decir los clientes que estaban en Office 365) estén totalmente migrados a Microsoft Teams.

Teams logical architecture

Teams se apalanca en la definición de Grupos de Microsoft Exchange / Azure AD, para conformar los equipos de personas, se utilizan OneDrive for Business y SharePoint para compartir los archivos, y enviar vínculos a estos, se tiene integración con Planner para las tareas y el seguimiento, así como la integración a Microsoft Stream cuando se graban las llamadas o se quieren publicar vídeos. es decir que la estrategia de colaboración, se ve orquestada por esta aplicación que hace mucho mas que chat 1:1, o vídeo llamadas, de los cuales por cierto queda la transcripción histórica. Microsoft Teams ademas permite la adición de muchos otros programas como Polly para hacer rápidas encuestas, PowerBI para Dashboards y gráficas dinámicas, y mas aplicaciones de Microsoft y de terceros.

Formación digital

Como Microsoft certified trainer, he realizado cientos de entrenamientos, entre cursos presenciales y webinars, no solo en Colombia, sino en México y Santo Domingo, pero los cursos en contenido digital o “Digital MOC”, han cambiado la dinámica de estás clases, dónde teníamos cita en un centro de entrenamiento CPLS, para llevar nuestras sesiones de capacitación personalizadas durante cuatro horas diarias, en realidad en muchas ocasiones he querido escribir sobre la redacción de contenidos, y contar un poco cómo es la experiencia para un formador digital pues no se trata solo de pericia técnica sino de saber llegar a la gente contando paso a paso lo que se quiere mostrar generando simpatía con la teleaudiencia.

Diferentes iniciativas como LinkedIn Learning o la Microsoft virtual academy, solo demuestran que el autoestudio y la formación a tu propio ritmo son la manera de abarcar mayores audiencias y al mismo tiempo perpetuar el conocimiento ya que estos cursos se convierten en activos digitales cómo escribir un libro o vender una canción, los cuales llegan a los cientos de miles de reproducciones. Sin embargo existen otros portales digitales como Youtube, Coursera, Udemy, PluralSight, o EDX donde puedes tomar cursos y aprender de una manera más informal y sobre todo, a tu ritmo y en tu tiempo libre (aunque con publicidad y Ads). 

Muchos entrenadores hemos visto a nuestros alumnos a los ojos, hemos presenciado cuando se maravillan con alguna funcionalidad que el producto ofrece y es novedad para ellos, luego de que logran dominar el tema y pueden presentar sus exámenes de certificación, hemos observado con orgullo qué algunos logran cambiar y mejorar su calidad de vida, pero la educación digital es dirigida a un público más amplio, estamos frente a un auditorio, y perdemos ese contacto directo con los ojos de quiénes nos están atendiendo, lo que requiere de un gran esfuerzo y preparación pues las observaciones y comentarios pueden cimentar nuestra reputación, o destruir lo que hemos logrado con mucho tiempo y dedicación.

Hay que hacer un análisis de la necesidad, identificar el público objetivo, preparar el material, planear la forma de cautivar esa audiencia, redactar el libreto, preparar las demostraciones, los scripts y los comandos de consola, es todo un reto de producción. cuando ya llegas al dia de la grabación, hay que buscar la mejor iluminación, calibrar el audio de los micrófonos, y procurar por obtener el mejor resultado en tu grabación.

Grabación de videos en Microsoft Bogotá, para Microsoft Virtual Academy

Si hay algo que he aprendido de mis productores de contenidos, y que agradezco profundamente es que me han guiado a revisarlo, a pasarlo por la revisión ortográfica, a validar que las tildes, las pausas y la calidad de los textos sean mejores, para que así mismo la calidad final del producto sea la mejor. He grabado academias virtuales para Microsoft Virtual Academy, y recientemente he grabado cinco cursos virtuales para LinkedIn Learning en Graz, Austria.

Siempre hay que tener presente que no se trata solo de mostrar el cómo se hace, sino que debe haber una situación en la cual se recomienda el uso de dicha característica, una explicación técnica que avala como el producto de software logra hacer dicha tarea, y siempre mostrar las entradas y las salidas, al fin y al cabo regularmente nuestra carrera de ingeniería busca identificar las variables de la vida, para mejorar la vida y la calidad de vida de las personas, por medio de algoritmos y procedimientos.

Uno de mis mentores me dio una lección, “una cafetera te prepara el café en leche en 30″, cuando habitualmente tenías que preparar café negro, y hervir la leche en unos 10′ , que vas a hacer con esos 9′ 30″ que te acabas de ganar?” y es que la tecnología nos ayuda a muchas cosas, nos conviene aprender, dedicar unos minutos y así poder sacarle más tiempo a la vida, tiempo que a veces no tenemos, tiempo que a veces no apreciamos, aprendamos en los tiempos de viaje, aprendamos con audio libros, aprendamos usando la plataforma que más nos guste, pero aprovechemos este momento para invertir en cultivar nuestro conocimiento.

Muchas gracias por tomarse un minuto para leerme, y ojala nunca se les acabe la curiosidad y el apetito por aprender nuevas cosas.-

Arquitectura de CiberSeguridad de Microsoft

Hoy estuve curioseando el sitio web de TechNet, hacía varios días no me daba una vuelta por la galería de PowerShell y quería encontrar algún script interesante, vaya sorpresa cuando encontré la estrategia de seguridad pensada por Microsoft, donde se identifica que existen múltiples mecanismos de monitoreo y protección dependiendo de cada capa de acceso, los servidores por ejemplo pueden ser analizados con Azure Security Center, el cual es un servicio que parece un análisis de hacking ético, y gracias a este podemos ir tomando medidas cautelares, de cerrar puertos, y evitar exposición a ataques en nuestros servicios, o la restricción Just In Time VM Access (JITVMA) que proporciona protección al RDP de servidores. Así mismo aquí en esta grafica uno puede identificar las múltiples soluciones de protección para los clientes de Windows, las soluciones de identidad y acceso de Azure Active Directory, como la autenticación Multi factor (MFA) y las herramientas que proporcionan soluciones como Office 365 con Data Loss protection, Secure Score, Data Governance y eDiscovery.

A nivel de clientes herramientas como el ATP (Advanced Threat Protection)

Los invito a darle una revisión detenida a esta información, y si tienen dudas abro este canal para que platiquemos sobre aquellas que le generen inquietudes.

Imagen tomada de: https://gallery.technet.microsoft.com/Cybersecurity-Reference-883fb54c

Tareas administrativas

Hace ya algún tiempo que hice administración de servidores, recuerdo que en aquel momento no contaba con herramientas de monitoreo tipo Nagios o System Center Operations Manager que me ayudaran en tiempo real a detectar altos consumos de maquina, y tenia que a diario pasar revista a los servidores para determinar si tenían un comportamiento “Normal” o estaban de repente pasando por un mal momento. Para esto es posible utilizar desde la tradicional linea de comandos (cmd) el siguiente comando:

sysdm.cpl && eventvwr /c: && psinfo -d && services.msc && perfmon /rel && explorer /root, && dxdiag && perfmon /report && taskmgr && resmon

Esto nos abrirá las aplicaciones que el sistema operativo trae por defecto para determinar su comportamiento. herramientas como el historial de confiabilidad que nos muestra un timeline del estado de salud del equipo o el visor de eventos, para identificar si ha tenido errores en las ultimas horas, el snap-in de los servicios, para validar que los que son automáticos estén en ejecución, y el administrador de tareas o el resource monitor, para tratar de encontrar que se puede estar consumiendo los recursos del equipo.

Mi recomendación o truco en este post es que la mayoría de estas consultas se pueden realizar desde PowerShell, con un Get-Volume, puedes consultar el estado de ocupación de los volúmenes del dispositivo, un Get-Eventlog -LogName System -EntryType Error -Newest 10|Format-Table me traerá consigo una tabla con los últimos 10 errores de sistema operativo. Get-Process me puede permitir ver lo que tenemos en ejecución, similar al taskmanager, de modo que hay manera de consultar desde linea de comandos múltiples contextos, mas la posibilidad de aplicar todos estos comandos a múltiples servidores que se encuentren en nuestro dominio. Así que adopten PowerShell #Get-PowerShell

Nueva ruta de certificaciones Microsoft

Empecé el día con mi café, e investigando nuevos contenidos y referencias sobre las certificaciones de azure, quería saber que nuevos materiales encontraba para el AZ-103, pues en infraestructura IAAS es el nuevo examen de Microsoft que reemplazaría el AZ-102, el cual a su vez reemplazo el 70-533, y me encontré con la ruta completa de certificaciones de Microsoft , empezando con un nivel introductorio en Azure, el AZ-900 es el nivel para todos los que quieren comenzar a estudiar este producto, siguiendo con las certificaciones para Infraestructura (Az-103), desarrollo de aplicaciones (Az-203) y arquitectura (Az-300), para luego encontrarnos con DevOps (Az-400) y seguridad en Azure (Az-500), pero en mi opinion (la cual no han pedido) las líneas punteadas, y la continuidad académica deberían ser como una cadena, siguiendo la misma traza que mis líneas acaban de relatar. Porque no puedes llegar a Arquitecto sin conocer de antemano todas las aristas, que ofrece este poliedro.

Encontre que también hay una ruta de certificacion para cientificos de datos (la cual proviene de las certificaciones de SQL)

y otra linea se denomina Modern Workplace donde vemos que se encuentran las soluciones de Office 365, Exchange y Sharepoint, asi como Windows 10. Pero aqui analizo otra particularidad, Microsoft en los inicios de Office365 tenia un plan de formación donde aprendías primero de Exchange, SharePoint y Lync (en sus versiones 2010) y luego hacías el examen 70-321 de Office 365, luego en tiempos de Exchange 2013 y SharePoint 2013, surgió Skype for Business, y en esa entonces nos invirtieron la secuencia, aprendiendo primero de Office 365 que de servidores Exchange, Skype o SharePoint. ahora en este plan de carrera, veo que lo vuelven a definir despues.

hay una rama adicional sobre los servicios de dynamics, pero esa si ni la quise mirar porque es super extensa… y creo que mi estimada amiga y colega MCT Blanca Baute, a quien le envio un saludo.

información tomada de http://aka.ms/TrainCertPoster

20 de julio

Regularmente este blog no comparte opiniones políticas, religiosas o de futbol, pues es lo que nos mantiene en la imparcialidad que nos permite enfocarnos en los temas técnicos que desarrollamos, es un espacio donde he compartido mis experiencias técnicas, mis expectativas y ha aportado un poco a la vida de quienes leen estas líneas, para algunos es un referente donde a partir de guías y explicaciones he hecho la presentación de herramientas y scripts que están disponibles para PowerShell, Windows Server, Exchange, Azure, SharePoint, o incluso Linux. Sin expresar mis creencias católicas, apostólicas y romanas, o mi gusto por el Junior de Barranquilla pero hoy quiero darle un toque mas humanístico y entintar este post con mi pensamiento y gustos.

Tras casi 25 años de experiencia laboral, y de haber pasado por grandes empresas como Unisys, HP, IBM, Comware, VisionSoftware, ControlesEmpresariales, Glup, Compuredes, Softtek, Manpower, Synapsis, AlfaIngenieros, Rentabyte o IXO, y luego de haber hecho parte de grandes equipos, y de ayudar a salir adelante proyectos como ATH, Colpensiones, Aeronáutica Civil, Agencia Nacional de Hidrocarburos, Agencia Nacional para Reinserción de desmovilizados, Superfinanciera, Supersubsidio, Invias, Nueva EPS, Helm bank, Banco Santander, Bolsa Mercantil de Colombia, Colombia Movil – Tigo, Comcel – Claro, Movistar – Telefónica, Belcorp, Grupo Nutresa, o el soporte premier para Microsoft donde atendí muchos otros clientes. He mantenido una voz firme en temas técnicos, y he enseñado como entrenador certificado por Microsoft por mas de una década, conociendo grandes e importantes personas, muchas de ellas incluso fueron y son alumnos y amigos.

Hoy que es día de la independencia colombiana, 20 de julio de 2019, empecé el día con un café, seis de la mañana, me sente en el sofá, y empecé a pensar mientras lo saboreaba a sorbos, en todos los españoles y criollos que tuvieron que haber peleado, y finalmente fallecido en esas refriegas que llevaron al grito de independencia, y me imaginé toda la devastación que estas tierras tropicales y cálidas han soportado, la cantidad de sangre que se tuvo que haber derramado, no importaba la experiencia técnica, los años de arduo trabajo campesino, o militar, todos se median en medio del campo de batalla y defendían sus ideas, su honor, su familia y su patria. Hay que ser medio pendejo para irse al monte a matarse a puñetazos, con lanzas, bayonetas, o fusiles, pero ordenes son órdenes. y militares españoles o criollos igual tenían que hacer caso, o los fusilaban seguramente por traición.

Nos maravillamos con los avances tecnológicos que permiten gestionar remotamente a los drones Reaper (aviones no tripulados) acabar con metralletas o misiles un pueblo donde hay personas que son amenazas para la sociedad, (los americanos y sus juguetes), el poder destructivo de un solo avión de combate Raptor, la capacidad de carga de un solo helicóptero militar Black Hawk, y los avances en cuanto a balística y armas de fuego (creo que estoy viendo mucha televisión criminalística), pero estos próceres creían firmemente en sus ideas, y eran duramente enjuiciados, o castigados, Camilo Torres, Antonio Nariño, y la Pola creían firmemente en sus ideas, hay que ver darse el recorrido desde Santa Marta a Bogota en caballos, eso es tener firmeza en una causa. Esas clases de historia del colegio solamente nos enseñaron las fechas de los eventos, de las batallas, de cuando llegaron los españoles y se aprovecharon de estas tierras hace más de 500 años, pero lo que no nos cuentan es el trasfondo, y después de haber visto Game of Thrones, los excesos que seguramente hace 500 años venia teniendo Europa, las guerras que internamente ellos tuvieron allí, por poder, sexo o riquezas, las guerras entre tribus y clanes, las enemistades y alianzas, que llevaron a que empezaran esa competencia contra los británicos, por lograr una expansiva y de hallar nuevos territorios y riquezas, lo cual los resulto trayendo al otro lado del atlántico. Ese cuentico de que el italiano Cristobal Colon le pidió un préstamo a la reina, solo me suena a un episodio de Californication, donde llega el tipo con acento italiano, y en medio de tragos y una fiesta tremenda, la reina insatisfecha le pone los cuernos a su rey, quien le es infiel todas las noches con diferentes mujeres, y esta le da sus joyas de la corona al buen Colon, por ese buen tiempo que compartieron juntos, con la promesa de que vuelva pronto.

Luego me puse a pensar en que aquí también ha de haber habido guerras de tribus y clanes, territorios defendidos con honor entre guerreros Panches y Muiscas, épicas batallas que seguramente los ancestros mas veteranos les contaban a sus queridos nietos, mirando a las estrellas, y bajo la tenue luz de una fogata, pero muchas de esas memorias simplemente se perdieron entre el holocausto que tuvo que haber representado la invasión con armas de fuego por parte de los acorazados y no muy buenos hombres de Colon. Para que hoy en día, sin importar banderas ni partidos políticos, todos los gobernantes y dirigentes del país se hubiesen vendido a una misma idea, su bienestar económico particular. Los lideres no pueden tener solución para todo, pero si pueden escuchar, orientar y hacer que los esfuerzos de la ciudadanía vayan hacia un frente común, es bonito pensar que este platanal puede tener esperanzas, que hay alguna oportunidad, delegando planes de trabajo a unidades mas pequeñas, un Alcalde haría mucho mas, si los alcaldes de localidades, tuvieran presupuesto, e independencia, si estos a su vez contaran con lideres comunitarios por cada barrio, por cada cuadra, pero a veces no nos ponemos de acuerdo ni entre la misma familia.

Pero acudiendo a el análisis social del pensador y comediante Andrés López, desde la generación de hijos del 79’ (generación de la guayaba) en adelante no queremos tomar un bando, somos los hijos de esos hogares de padres separados, no queremos defender una idea, ni inclinar la balanza hacia papá o mamá, mucho menos defender una bandera, ni una tendencia política, no somos Azules o Rojos, por eso aparecieron todos los otros colores, amarillo, verde, terracota y salmón, estamos tan agobiados queriendo ser cool, vernos diferentes con piercings y tatuajes que nos hagan únicos, que nuestras ideas, y el amor al prójimo no son la prioridad, “a quien le importa lo que yo piense, y de todas maneras eso no va a cambiar nada”. Pues la verdad no es un problema de ideología política, o de planes de gobierno, donde se acomodan y se adaptan las condiciones (y el presupuesto), simplemente reduzcamos el problema a que no conocemos a nuestros vecinos, no nos duele nuestro barrio, no hay sentimiento de propiedad, de querer hacer algo por mi familia, por mi barrio, por mi país, porque simplemente podemos pasar sin tropezar a nadie mientras no hagamos mucho ruido, podemos pasar el día con un café con leche y un pan, simplemente para no tener que molestarnos en hacer un desayuno de carne en bistec con bollo limpio. Por eso quise levantar mi opinión hoy día de la independencia, quiero invitarlos a reflexionar sobre esto, a que hagan el desayuno de su casa, amen a su núcleo familiar, sus hijos, su pareja. Timbren en la casa de al lado, conozcan a sus vecinos, tómenle sus teléfonos, háganse amigos, compartan con ellos, la familia se extiende cuando conoces a tus vecinos, y en conjunto se puede lograr que tengamos conciencia de comunidad, empecemos con ese pequeño acto, de que nos duela lo que le pasa al de al lado porque lo conocemos, porque podemos ayudar y de alguna manera todos somos Colombia.

Seguramente hay algo que podamos hacer, por nuestra familia, por nuestros vecinos, por nuestros amigos, este 20 de Julio es una fiesta nacional, para compartir con amor, para recordar a los que dieron sus vidas por nuestra libertad, celebremos por esa idea de que seamos una nación, que lucha unida, que tenga empuje en una misma dirección. Dejemos de echar la culpa a los gobernantes y los malos dirigentes, porque cada uno de nosotros puede aportar, tal vez no tengamos el poder de decisión, pero si tenemos como actuar, y como hacer el trabajo bien hecho, para nuestra satisfacción personal, para el beneficio de la comunidad, para hacer historia.

Exchange 2019 Lab

Estuve realizando la investigación de los requerimientos para poder implementar Exchange server 2019, los requisitos de software no son gran cosa, windows Server 2019 con o sin interfaz gráfica, .Net 4.7.2, el componente redistribuible de Visual C++, y el complemento de Unified Comunications (que esta dentro del ISO del instalador de exchange). sin embargo los requerimientos de Hardware si son mas exclusivos, pues pide 2 procesadores x64 *intel o AMD, y 128 GB de memoria RAM, mas un espacio en disco de 30GB para los binarios, mas el espacio que dediques para la base de datos, idealmente en un disco aparte. así que esto me llevo a utilizar mi ya quemada suscripción de Azure, para probar este escenario, y resulte encontrando esta joya de hipervinculo https://docs.microsoft.com/en-us/Exchange/plan-and-deploy/deploy-new-installations/create-azure-test-environments?view=exchserver-2019 donde paso a paso hay un script de Powershell que crea un escenario de laboratorio, desplegando un controlador de dominio y un servidor Exchange 2019. Es necesario que instales el modulo AZ para Powershell, y que tengas una suscripción gratuita de Azure para replicar estos pasos

Connect-AzAccount

Get-AZSubscription | Sort SubscriptionName | Select SubscriptionName

$subscrName=”Plataformas de MSDN
Select-AzSubscription -SubscriptionName $subscrName

Get-AZResourceGroup | Sort ResourceGroupName | Select ResourceGroupName

$rgName=”LabExch19
$locName=”EastUS
New-AZResourceGroup -Name $rgName -Location $locName

Get-AZStorageAccount | Sort StorageAccountName | Select StorageAccountName

Get-AZStorageAccountNameAvailability “”

$rgName=”LabExch19
$locName=”EastUS
$locName=(Get-AZResourceGroup -Name $rgName).Location
New-AZStorageAccount -Name $saName -ResourceGroupName $rgName -Type Standard_LRS -Location $locName

$rgName=”LabExch19
$locName=(Get-AZResourceGroup -Name $rgName).Location
$Subnet=New-AZVirtualNetworkSubnetConfig -Name Subnet01 -AddressPrefix 10.0.0.0/27
New-AZVirtualNetwork -Name Vnet01 -ResourceGroupName $rgName -Location $locName -AddressPrefix 10.0.0.0/24 -Subnet $Subnet -DNSServer 10.0.0.4
$rule1 = New-AZNetworkSecurityRuleConfig -Name “RDPTraffic” -Description “Allow RDP to all VMs on the subnet” -Access Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389
$rule2 = New-AZNetworkSecurityRuleConfig -Name “ExchangeSecureWebTraffic” -Description “Allow HTTPS to the Exchange server” -Access Allow -Protocol Tcp -Direction Inbound -Priority 101 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix “10.0.0.5/32” -DestinationPortRange 443
New-AZNetworkSecurityGroup -Name Subnet01 -ResourceGroupName $rgName -Location $locName -SecurityRules $rule1, $rule2
$vnet=Get-AZVirtualNetwork -ResourceGroupName $rgName -Name Vnet01
$nsg=Get-AZNetworkSecurityGroup -Name Subnet01 -ResourceGroupName $rgName
Set-AZVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name Subnet01 -AddressPrefix “10.0.0.0/27” -NetworkSecurityGroup $nsg
$vnet | Set-AzVirtualNetwork

$rgName=”LabExch19

Create an availability set for domain controller virtual machines

New-AZAvailabilitySet -ResourceGroupName $rgName -Name dcAvailabilitySet -Location $locName -Sku Aligned -PlatformUpdateDomainCount 5 -PlatformFaultDomainCount 2

Create the domain controller virtual machine

$vnet=Get-AZVirtualNetwork -Name Vnet01 -ResourceGroupName $rgName
$pip = New-AZPublicIpAddress -Name adVM-NIC -ResourceGroupName $rgName -Location $locName -AllocationMethod Dynamic
$nic = New-AZNetworkInterface -Name adVM-NIC -ResourceGroupName $rgName -Location $locName -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -PrivateIpAddress 10.0.0.4
$avSet=Get-AZAvailabilitySet -Name dcAvailabilitySet -ResourceGroupName $rgName
$vm=New-AZVMConfig -VMName adVM -VMSize Standard_D1_v2 -AvailabilitySetId $avSet.Id
$vm=Set-AZVMOSDisk -VM $vm -Name adVM-OS -DiskSizeInGB 128 -CreateOption FromImage -StorageAccountType “Standard_LRS”
$diskConfig=New-AZDiskConfig -AccountType “Standard_LRS” -Location $locName -CreateOption Empty -DiskSizeGB 20
$dataDisk1=New-AZDisk -DiskName adVM-DataDisk1 -Disk $diskConfig -ResourceGroupName $rgName
$vm=Add-AZVMDataDisk -VM $vm -Name adVM-DataDisk1 -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1
$cred=Get-Credential -Message “Type the name and password of the local administrator account for adVM.”
$vm=Set-AZVMOperatingSystem -VM $vm -Windows -ComputerName adVM -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AZVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2019-Datacenter -Version “latest”
$vm=Add-AZVMNetworkInterface -VM $vm -Id $nic.Id
New-AZVM -ResourceGroupName $rgName -Location $locName -VM $vm

conecte al adVM y ejecute

$disk=Get-Disk | where {$_.PartitionStyle -eq “RAW”}
$diskNumber=$disk.Number
Initialize-Disk -Number $diskNumber
New-Partition -DiskNumber $diskNumber -UseMaximumSize -AssignDriveLetter
Format-Volume -DriveLetter F

Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Install-ADDSForest -DomainName CampoHenriquez.com -DatabasePath “F:\NTDS” -SysvolPath “F:\SYSVOL” -LogPath “F:\Logs”

Add-WindowsFeature RSAT-ADDS-Tools

Creamos ahora la maquina de Exchange

$vmDNSName=”Mail01Exch19
$rgName=”LabExch19
$locName=(Get-AZResourceGroup -Name $rgName).Location
Test-AZDnsAvailability -DomainQualifiedName $vmDNSName -Location $locName

Set up key variables

$subscrName=”Plataformas de MSDN
$rgName=”LabExch19
$vmDNSName= “Mail01Exch19

Set the Azure subscription

Select-AzSubscription -SubscriptionName $subscrName

Get the Azure location and storage account names

$locName=(Get-AZResourceGroup -Name $rgName).Location
$saName=(Get-AZStorageaccount | Where {$_.ResourceGroupName -eq $rgName}).StorageAccountName

Create an availability set for Exchange virtual machines

New-AZAvailabilitySet -ResourceGroupName $rgName -Name exAvailabilitySet -Location $locName -Sku Aligned -PlatformUpdateDomainCount 5 -PlatformFaultDomainCount 2

Specify the virtual machine name and size

$vmName=”Mail01Exch19
$vmSize=”Standard_D3_v2″
$vnet=Get-AZVirtualNetwork -Name Vnet01 -ResourceGroupName $rgName
$avSet=Get-AZAvailabilitySet -Name exAvailabilitySet -ResourceGroupName $rgName
$vm=New-AZVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avSet.Id

Create the NIC for the virtual machine

$nicName=$vmName + “-NIC”
$pipName=$vmName + “-PublicIP”
$pip=New-AZPublicIpAddress -Name $pipName -ResourceGroupName $rgName -DomainNameLabel $vmDNSName -Location $locName -AllocationMethod Dynamic
$nic=New-AZNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $locName -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -PrivateIpAddress “10.0.0.5”

Create and configure the virtual machine

$cred=Get-Credential -Message “Type the name and password of the local administrator account for exVM.”
$vm=Set-AZVMOSDisk -VM $vm -Name ($vmName +”-OS”) -DiskSizeInGB 128 -CreateOption FromImage -StorageAccountType “Standard_LRS”
$vm=Set-AZVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AZVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2019-Datacenter -Version “latest”
$vm=Add-AZVMNetworkInterface -VM $vm -Id $nic.Id
New-AZVM -ResourceGroupName $rgName -Location $locName -VM $vm

Conectese a exVM y ejecute

Add-Computer -DomainName “Campohenriquez.com”
Install-WindowsFeature NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation, RSAT-ADDS-Tools
Restart-Computer

Fase 3> Configurar el Exchange

Write-Host (Get-AZPublicIpaddress -Name “exVM-PublicIP” -ResourceGroup $rgName).DnsSettings.Fqdn

Desde exVM

descarga los pre-requisitos, Visual C++ redis, UC Managed API https://www.microsoft.com/download/details.aspx?id=34992 y el .Net 4.7.2

descarga el ISO de Exchange con el ultimo CU

e:
.\setup.exe /mode:Install /role:Mailbox /OrganizationName:CampoHenriquez /IacceptExchangeServerLicenseTerms
Restart-Computer

$dnsName=””
$user1Name=”chris@” + $dnsName
$user2Name=”janet@” + $dnsName
$db=Get-MailboxDatabase
$dbName=$db.Name
$password = Read-Host “Enter password” -AsSecureString

New-Mailbox -UserPrincipalName $user1Name -Alias chris -Database $dbName -Name ChrisAshton -OrganizationalUnit Users -Password $password -FirstName Chris -LastName Ashton -DisplayName “Chris Ashton”
New-Mailbox -UserPrincipalName $user2Name -Alias janet -Database $dbName -Name JanetSchorr -OrganizationalUnit Users -Password $password -FirstName Janet -LastName Schorr -DisplayName “Janet Schorr”

Detener / Iniciar las maquinas virtuales

$rgName=””
Stop-AZVM -Name exVM -ResourceGroupName $rgName -Force
Stop-AZVM -Name adVM -ResourceGroupName $rgName -Force

$rgName=””
Start-AZVM -Name adVM -ResourceGroupName $rgName
Start-AZVM -Name exVM -ResourceGroupName $rgName

Probando el Windows Terminal

Como lo habia anunciado días atrás, Microsoft consiguió liberar una Terminal que unifica bajo el mismo entorno, PowerShell Core, Windows Linux Subsystem (wsl) y la linea de comandos D.O.S.

Encuentro atractivas sus transparencias, la posibilidad de tener varias tabs o pestañas y poder de cierta forma hacer mas amable el uso de la linea de comandos. Para instalarlo simplemente ingrese en el Windows Store, y busque Windows Terminal (Preview) ahora bien, luego de haber instalado esta terminal, decidí instalar también el PowerShell 7, y me encontré que queda como PowerShell Core.

Para realizar la configuración de esta terminal, en el menu desplegable (junto al signo de mas) hay una opción de configuración, donde nos lleva a modificar un archivo JSON, estos cambios se producen en tiempo real, y este archivo esta compuesto principalmente por tres secciones.

Encontramos los tipos de ventana que podemos iniciar o commandLine como, Powershell Core, PowerShell, WSL, o CMD, a estos podemos aplicarles unos esquemas para cambiar su apariencia, por ejemplo yo habilite la opción de transparencia cambiando el valor de “useAcrylic” : true

En esta sección es posible cambiar el tamaño y tipo de fuente, el AcrylicOpacity hace referencia al nivel de transparencia en términos de porcentaje, El ColorScheme hace referencia al tema aplicado y el atributo fontFace hace relacion al tipo de fuente asi como FontSize es el tamaño de esta.

Espero sinceramente que les guste esta herramienta, y puedan divertirse ejecutando Scripts en ella.