Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
CentOS al que se hace referencia en este artículo es una distribución de Linux y llegará al final del ciclo de vida (EOL). Tenga en cuenta su uso y planifique en consecuencia. Para obtener más información, consulte Guía de fin de vida de CentOS.
Se aplica a: .NET Core 2.1, .NET Core 3.1, .NET 5
Objetivo de esta parte
Esta parte del entrenamiento está pensada para los usuarios que no tienen ninguna experiencia de Linux. Se tratan los temas siguientes:
Uso de Windows Azure para crear una máquina virtual Linux.
Nota:
Puede omitir este paso si ya tiene una máquina virtual Linux para usarla en el entrenamiento.
Cómo conectarse a una máquina virtual Linux desde un equipo basado en Windows.
Cómo administrar tareas básicas al trabajar en Linux, como crear y eliminar archivos y carpetas, ejecutar comandos como usuario con privilegios e instalar aplicaciones mediante administradores de paquetes.
Para asegurarse de que todos los laboratorios de esta guía funcionan según lo previsto, se recomienda usar una distribución de Ubuntu 18.04 LTS porque es la distribución que se usó para crear los laboratorios.
Esta parte (1.1) contiene los pasos siguientes:
Si está familiarizado con Linux, es posible que quiera omitir esta parte por completo y ir directamente a la parte 1.2: directorios especiales de Linux, usuarios elevados y administradores de paquetes.
Creación de una máquina virtual Linux en Windows Azure
La primera decisión es la distribución de Linux que desea usar. Hay diferentes tipos y distribuciones del sistema operativo Linux, comúnmente denominados "distribuciones". Según este artículo del proyecto de documentación de Linux, hay muchas similitudes entre las distintas distribuciones. Los comandos que se usan en esta serie son casi los mismos para cada distribución de Linux, aunque los administradores de paquetes de instalación pueden diferir. Sin embargo, las instrucciones generales serán las mismas independientemente de la distribución que se use.
Nota:
Como se explica en Máquinas virtuales Linux en Azure, Microsoft Soporte técnico de Azure varias distribuciones populares de Linux proporcionadas y mantenidas por nuestros asociados. Puede encontrar distribuciones como Red Hat Enterprise, CentOS, SUSE Linux Enterprise, Debian, Ubuntu, CoreOS, RancherOS, FreeBSD y otras en Azure Marketplace.
Las instrucciones para crear una máquina virtual Linux en Azure se explican claramente en Inicio rápido: Creación de una máquina virtual Linux en Azure Portal.
Nota:
En este artículo también se proporcionan instrucciones para conectarse a la máquina virtual e instalar el servidor web nginx. Es su elección seguir esas instrucciones e instalar Nginx. Sin embargo, aún no tiene que decidirlo porque la configuración y la instalación de Nginx se tratan en la siguiente parte.
Este tutorial no duplicará esos pasos porque las instrucciones son lo suficientemente claras. Sin embargo, es importante resaltar algunos puntos clave sobre cómo crear la máquina virtual.
Autenticación
Puede elegir entre los siguientes tipos de autenticación al crear la máquina virtual:
- Conexión mediante una contraseña
- Conexión mediante una clave pública SSH
Aunque el uso de la autenticación con contraseña es aceptable en el contexto de este entrenamiento, se recomienda usar la opción de clave pública SSH porque proporciona una mejor seguridad. Además, esta guía usa esta opción de forma predeterminada al conectarse a una máquina virtual Linux.
Azure genera automáticamente un par de claves SSH y le permite guardarlo en el disco para que pueda usarlo más adelante al conectarse a la máquina virtual Linux. Esta acción simplifica el proceso de conexión.
Seleccione la clave pública SSH y Genere nuevas opciones de par de claves al crear la cuenta de administrador.
En el campo Nombre de usuario, puede elegir el nombre que desee entre los nombres que proporcionó al crear la máquina virtual.
Reglas de puerto de entrada
Para habilitar la conectividad a la máquina virtual recién creada, seleccione SSH y HTTP para las reglas de puerto de entrada. Esto se debe a que usará el protocolo SSH para conectarse a la máquina virtual y usará el protocolo HTTP al acceder a la aplicación ASP.NET Core que se ejecuta en Linux.
Guardar la clave privada
Dado que la opción de clave pública SSK está seleccionada, verá el siguiente mensaje al crear la máquina virtual:
Generar par de claves nuevo
Seleccione Descargar clave privada y crear recurso y, a continuación, guarde la clave privada en el disco local. La extensión del archivo es .pem (Correo mejorado de privacidad).
Nota:
Use la clave privada para abrir la puerta al conectarse a la máquina virtual Linux. Por lo tanto, no debe compartir esta clave con otras personas.
Determinación de la dirección IP
Una vez creada la máquina virtual, vaya a la página del recurso y determine y anote la dirección IP pública de la máquina virtual. Usará esta dirección IP para conectarse a la máquina virtual.
Nota:
Se recomienda usar una dirección IP estática porque es posible que tenga que reiniciar el equipo durante las pruebas. El uso de una dirección IP pública dinámica hará que se asigne otra dirección IP a la máquina virtual después de reiniciarla.
Conexión a la máquina virtual Linux
Ahora que tiene una máquina virtual Linux y conoce su dirección IP, también tiene la clave privada para autenticarse mediante la autenticación de clave pública SSH y puede iniciar sesión. Es un buen momento analizar algunas terminologías que encontrará al conectarse a la máquina virtual Linux.
No usará una GUI para conectarse a la máquina virtual Linux y administrarla. En su lugar, usará un terminal para conectarse y un shell para ejecutar comandos.
Terminal UNIX
El término "terminal" se basa en los primeros modelos informáticos que ocuparon una sala entera y se controlaron en un terminal físico a través de lectores de tarjetas de perforación y, posteriormente, teclados. Hoy en día, un terminal es una representación de software de terminales físicos. PuTTY, por ejemplo, es un terminal.
Shell de UNIX
El shell de UNIX es una interfaz entre el usuario y los sistemas operativos similares a UNIX. Un usuario está en un shell tan pronto como el usuario inicie sesión en el sistema. El shell proporciona un intérprete de línea de comandos (CLI) que lee y ejecuta comandos y scripts para controlar el sistema y, a continuación, muestra la salida resultante.
El shell también se conoce como "línea de comandos" o "terminal", y estos términos son intercambiables. El shell proporciona algunos comandos y un lenguaje de programación que puede usar para escribir scripts. Hay varias implementaciones de shell diferentes. incluyendo el popular Bash.
En este artículo se describen las siguientes opciones de conexión:
- Uso del terminal SSH de PowerShell
- Uso del terminal SSH de PuTTy
Conexión mediante el terminal SSH de PowerShell
Si se ejecuta en Windows 10, versión 1809 o posterior, puede usar el cliente SSH de PowerShell integrado. Para conectarse a una máquina virtual, abra PowerShell y ejecute un comando SSH con el siguiente formato:
ssh -i <path to .pem private key file> <user>@<host>
Por ejemplo:
ssh -i d:\Learn\Linux\myPrivateKey.pem <UserName>@127.0.0.1
Si nunca se ha conectado a este servidor antes, recibirá el siguiente mensaje de advertencia:
No se puede establecer la autenticidad del host "<HostName>".
Si escribe Sí, recibirá la siguiente advertencia:
Básicamente, el cliente SSH quiere que la clave privada sea "más privada". En otras palabras, la clave privada contenida en el archivo .pem es accesible para otros usuarios del equipo al que se conecta. La expectativa es que una clave privada solo sea accesible para el usuario que inicializará las conexiones a la máquina virtual Linux.
Para solucionar este problema, cambie los permisos en ese archivo de clave privada. Para ello, siga estos pasos:
Busque y haga clic con el botón derecho en el archivo de clave privada, seleccione Propiedades y, a continuación, seleccione la pestaña Seguridad . En este ejemplo, verá los permisos siguientes que se heredan de la carpeta .
En este ejemplo, solo desea que el grupo SYSTEM y su cuenta tengan acceso a este archivo. Dado que los permisos se heredan de la carpeta , debe deshabilitar esa herencia para poder editar los permisos. Seleccione Avanzadas y, a continuación, deshabilitar herencia. Se le pide la siguiente pregunta:
¿Qué desea hacer con los permisos heredados actuales?
Seleccione Convertir permisos heredados en permisos explícitos en este objeto.
Quite todos los grupos, pero SYSTEM, y agregue su propia cuenta. A continuación se muestran los permisos finales que se conceden para la clave privada.
Inténtelo de nuevo para conectarse mediante el mismo comando SSH. Esta vez, la conexión debe establecerse sin errores.
Conexión mediante PuTTY
PuTTY es uno de los terminales más populares para conectarse a una máquina virtual Linux. Puede descargar e instalar PuTTY para Windows libremente en el equipo cliente.
PuTTY es fácil de usar. Sin embargo, tenga en cuenta que PuTTY no acepta el formato PEM para la clave privada. Por lo tanto, tiene que convertir la clave al formato que PuTTY espera ver (PPK). Afortunadamente, convertir el formato PEM también es fácil porque el Generador de claves PuTTY (PuTTYgen) está instalado junto con el software de terminal.
Para convertir archivos, siga estos pasos:
Inicie PuTTYgen y asegúrese de que RSA está seleccionado como el tipo de clave que se va a generar.
Seleccione Cargar para seleccionar el archivo de clave privada que tiene la extensión .pem.
Asegúrese de que Todos los archivos está seleccionado porque la selección predeterminada para PuTTYgen es PPK.
Busque y abra el archivo PEM deseado. Debería ver el siguiente mensaje que indica que PuTTYgen pudo importar la clave. Ahora, puede guardar la clave privada en formato PPK.
Seleccione Aceptar y, a continuación, seleccione Guardar clave privada:
PuTTYgen le pedirá que confirme que desea guardar la clave sin una frase de contraseña. Seleccione Sí y guarde la clave privada en formato PPK.
Ahora, está listo para conectarse a la máquina virtual mediante el archivo PPK.
Inicie PuTTY. Usará el mismo <nombre de usuario>@<host | Formato de dirección> IP para la información de conexión. Puede guardar esta información de sesión para reutilizarla más adelante. En la captura de pantalla siguiente se muestra el cuadro de diálogo Configuración de PuTTY después de guardar la sesión actual. El cuadro de diálogo muestra la información del host en <username>@<host | Formato de dirección> IP y el nombre de la sesión después de seleccionarlo en la lista disponible.
Dado que usa la autenticación de clave pública SSH, debe indicar a PuTTY dónde encontrar la clave privada. Para ello, expanda SSH y seleccione Autenticación en el panel Categoría y, a continuación, seleccione Examinar.
Busque y seleccione el archivo PPK que creó mediante PuTTYgen.
Seleccione Abrir para iniciar la sesión.
Nota:
Cuando se conecta por primera vez a la máquina virtual, recibirá el siguiente mensaje de advertencia:
La clave de host del servidor no se almacena en caché en el Registro. No tiene ninguna garantía de que el servidor sea el equipo que cree que es.
Este mensaje es similar al mensaje que se genera la primera vez que se conecta a la máquina virtual mediante un cliente SSH en PowerShell.
Seleccione Sí para conectarse a la máquina virtual.
Nota:
Usará SSH de PowerShell para conectarse a la máquina virtual durante el resto de estos tutoriales.
Pasos siguientes
Parte 1.2: operaciones básicas en Linux
Aviso de declinación de responsabilidades sobre la información de terceros
Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.