Acceso desde Visual Studio Code a otro ordenador


Si programamos con Visual Studio Code y tenemos varios ordenadores puede ser interesante tener el código en un único sitio para no tener que duplicar el código y saber cual es el definitivo, lo cual podemos hacer conectándonos a un servidor por SSH desde Visual Studio Code.

Antes de empezar debemos saber que debemos cumplir los siguientes requisitos:

  • Contar con las credenciales para acceso SSH a nuestro servidor.
  • Tener Visual Studio Code instalado.

Instalar la extensión en VS Code

Abra su Visual Studio Code y en el apartado Extensiones ( en la barra vertical de la izquierda el cuarto icono)  acceda a esta

Ahora en el cuadro de dialogo superior buscamos la extensión Remote-SSH 

La extensión Remote – SSH nos permite utilizar cualquier máquina remota con un servidor SSH como su entorno de desarrollo. Esto puede simplificar enormemente el desarrollo y la solución de problemas en una amplia variedad de situaciones porque puede:

  • Desarrollar en el mismo sistema operativo en el que implementa o utilizar hardware más grande, más rápido o más especializado que su máquina local.
  • Cambiar rápidamente entre diferentes entornos de desarrollo remotos y realizar actualizaciones de forma segura sin preocuparse por afectar a su máquina local.
  • Acceder a un entorno de desarrollo existente desde varias máquinas o ubicaciones.
  • Depurar una aplicación que se ejecuta en otro lugar, como en el sitio de un cliente o en la nube.
  • No es necesario tener el código fuente en su máquina local para obtener estos beneficios, ya que la extensión ejecuta comandos y otras extensiones directamente en la máquina remota. Puede abrir cualquier carpeta en la máquina remota y trabajar con ella como si estuviera en tu propia máquina.

Host SSH

Puede conectarse a un servidor SSH en funcionamiento en las siguientes plataformas compatibles:

  • x86_64 Debian 8+, Ubuntu 16.04+, CentOS / RHEL 7+ Linux.
  • ARMv7l (AArch32) Raspbian Stretch/9+ (32 bits).
  • ARMv8l (AArch64) Ubuntu 18.04+ (64 bits).
  • Windows 10 / Server 2016/2019 (1803+) utilizando el servidor OpenSSH oficial.
  • macOS 10.14+ (Mojave) hosts SSH con inicio de sesión remoto habilitado.
  • Otras distribuciones de Linux basadas en glibc para x86_64, ARMv7l (AArch32) y ARMv8l (AArch64) deberían funcionar si tienen los prerrequisitos necesarios.
  • Si bien se admite ARMv7l (AArch32) y ARMv8l (AArch64), es posible que algunas extensiones instaladas en estos dispositivos no funcionen debido al uso de código nativo x86 en la extensión.

Por cierto, si bien se requieren 1 GB de RAM (similar a los requisitos de hardware para VS Code), se recomienda al menos 2 GB de RAM y una CPU de 2 núcleos.

También debe tener en cuenta que el uso de Remote-SSH abre una conexión entre su máquina local y la remota. Utilice Remote-SSH solo para conectarse a máquinas remotas seguras en las que confíe y que sean propiedad de una parte en la que confíe. Una máquina remota comprometida podría usar la conexión remota de VS Code para ejecutar código en su máquina local.

Los pasos a seguir resumidamente son los siguientes:

  • Instalar VS Code o VS Code – Insiders .
  • Instalar la extensión server de OpenSSH.
  • Después instalar un cliente SSH compatible con OpenSSH.

Veamos paso a paso a paso como podemos lograr nuestro objetivo .

Generación de claves de OpenSSH

La mayoría de autenticaciones en entornos de Windows se realizan con un par de nombre de usuario y contraseña, lo que funciona bien para los sistemas que comparten un dominio común. Al trabajar con varios dominios (por ejemplo, entre sistemas locales y hospedados en la nube), se expone más a intrusiones de fuerza bruta. En comparación, los entornos de Linux, normalmente, usan pares de clave pública y privada para controlar la autenticación, lo que no requiere el uso de contraseñas que se puedan adivinar.

OpenSSH incluye herramientas que ayudan a admitir esta opción, en concreto:

  • ssh-keygen para generar claves seguras.
  • ssh-agent y ssh-add para almacenar claves privadas de forma segura.
  • scp y sftp para copiar archivos de claves públicas de forma segura durante el uso inicial de un servidor.

La autenticación de clave pública SSH usa algoritmos criptográficos asimétricos para generar dos archivos de clave: uno «privado» y otro «público». Los archivos de clave privada son el equivalente de una contraseña y deben estar protegidos en todo momento. Si alguien adquiere su clave privada, esa persona puede iniciar sesión en cualquier servidor SSH al que tenga acceso. La clave pública es la que se coloca en el servidor SSH y puede compartirse sin poner en peligro la clave privada.

Al usar la autenticación de claves con un servidor SSH, dicho servidor SSH y el cliente comparan la clave pública de un nombre de usuario proporcionado con la clave privada. Si la clave pública del lado servidor no se puede validar con la clave privada del lado cliente, se produce un error de autenticación.

Para implementar la autenticación multifactor con pares de claves, debe introducir una frase de contraseña cuando se genera el par de claves . Durante la autenticación, se solicita al usuario la frase de contraseña, que se usa junto con la presencia de la clave privada en el cliente SSH para autenticar al usuario.

Generación de claves de host

Las claves públicas tienen requisitos de ACL específicos que, en Windows, equivalen a permitir el acceso únicamente a los administradores y al sistema. Al usar sshd por primera vez, se generará automáticamente el par de claves para el host, pero primero debe tener instalado el servidor OpenSSH.

De manera predeterminada, el servicio SSHD está configurado para iniciarse manualmente. Para iniciarlo cada vez que se reinicie el servidor, ejecute los siguientes comandos desde un símbolo del sistema de PowerShell con privilegios elevados en el servidor:

# Set the sshd service to be started automatically
Get-Service -Name sshd | Set-Service -StartupType Automatic

# Now start the sshd service
Start-Service sshd

Dado que no hay ningún usuario asociado al servicio SSHD, las claves de host se almacenan en C:\ProgramData\ssh.

Generación de claves de usuario

Para usar la autenticación basada en claves, primero debe generar pares de claves públicas o privadas para el cliente. ssh-keygen.exe se usa para generar archivos de claves y se pueden especificar los algoritmos DSA, RSA, ECDSA o Ed25519. Si no se especifica ningún algoritmo, se usa RSA. En este ejemplo, se debe usar un algoritmo seguro y una longitud de clave, como Ed25519.

Para generar archivos de claves mediante el algoritmo Ed25519, ejecute lo siguiente desde un símbolo del sistema de PowerShell o cmd en el cliente:

ssh-keygen -t ed25519

Esta operación debería mostrar lo siguiente (en que «username» se reemplaza por su nombre de usuario):

Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\username\.ssh\claveprueba):

Puede presionar Entrar para aceptar el valor predeterminado o puede especificar una ruta de acceso o un nombre de archivo en el que quiere que se generen las claves. Llegados a este punto, se le pedirá que uses una frase de contraseña para cifrar los archivos de clave privada. Puede estar vacío, pero no se recomienda. La frase de contraseña funciona con el archivo de clave para proporcionar una autenticación en dos fases. En este ejemplo, vamos a dejar la frase de contraseña vacía.

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\username\.ssh\claveprueba.
Your public key has been saved in C:\Users\username\.ssh\id_ed25519.pub.
The key fingerprint is:
SHA256:OIzc1yE7joL2Bzy8!gS0j8eGK7bYaH1FmF3sDuMeSj8 username@server@LOCAL-HOSTNAME

The key's randomart image is:
+--[ED25519 256]--+
|        .        |
|         o       |
|    . + + .      |
|   o B * = .     |
|   o= B S .      |
|   .=B O o       |
|  + =+% o        |
| *oo.O.E         |
|+.o+=o. .        |
+----[SHA256]-----+

Ahora tiene un par de claves claveprueba públicas/privadas en la ubicación especificada. Los archivos .pub son claves públicas y los archivos sin extensión son claves privadas:

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         6/3/2021   2:55 PM            464 claveprueba
-a----         6/3/2021   2:55 PM            103 claveprueba.pub

Recuerde que los archivos de clave privada son el equivalente de una contraseña, por lo que se deben proteger de la misma manera que las contraseñas. Para que sea más fácil, use ssh-agent para almacenar de forma segura las claves privadas en un contexto de seguridad de Windows y asócielas con su inicio de sesión de Windows. Para ello, inicie el servicio de ssh-agent como administrador y use ssh-add para almacenar la clave privada.

# By default the ssh-agent service is disabled. Allow it to be manually started for the next step to work.
# Make sure you're running as an Administrator.
Get-Service ssh-agent | Set-Service -StartupType Manual

# Start the service
Start-Service ssh-agent

# This should return a status of Running
Get-Service ssh-agent

# Now load your key files into ssh-agent
ssh-add ~\.ssh\claveprueba

Después de completar estos pasos, cada vez que se necesite una clave privada para la autenticación desde este cliente, ssh-agent recuperará automáticamente la clave privada local y la pasará al cliente SSH.

 Por cierto, se recomienda realizar una copia de seguridad de la clave privada en una ubicación segura y, a continuación, eliminarla del sistema local después de agregarla al agente SSH. La clave privada no se puede recuperar del agente, siempre que se haya usado un algoritmo seguro, como Ed25519 en este ejemplo. Si pierde el acceso a la clave privada, tendrá que crear un nuevo par de claves y actualizar la clave pública en todos los sistemas con los que interactúe.

Implementación de la clave pública

Para usar la clave de usuario que se creó anteriormente, el contenido de la clave pública (~\.ssh\claveprueba.pub) debe situarse en el servidor en un archivo de texto, cuyo nombre y ubicación dependen de si la cuenta de usuario forma parte del grupo de administradores locales o de una cuenta de usuario estándar.

Usuario estándar

El contenido de la clave pública (~\.ssh\claveprueba.pub) debe situarse en el servidor en un archivo de texto llamado authorized_keys en C:\Users\username\.ssh\. El cliente de OpenSSH incluye scp (una utilidad de transferencia de archivos segura) para proporcionar ayuda con esta operación.

En el ejemplo siguiente se copia la clave pública en el servidor (en que «username» se reemplaza por su nombre de usuario). Inicialmente, deberá usar la contraseña de la cuenta de usuario para el servidor.

# Make sure that the .ssh directory exists in your server's user account home folder
ssh username@ipprueba mkdir C:\Users\username\.ssh\

# Use scp to copy the public key file generated previously on your client to the authorized_keys file on your server
scp C:\Users\username\.ssh\claveprueba.pub user1@ipprueba:C:\Users\username\.ssh\authorized_keys

Notas: ipprueba por cierto es la dirección ip de la maquina y username es el usuario local de la maquina.

Usuario administrativo

El contenido de la clave pública (~\.ssh\claveprueba.pub) debe situarse en el servidor en un archivo de texto llamado administrators_authorized_keys en C:\ProgramData\ssh\. El cliente de OpenSSH incluye scp (una utilidad de transferencia de archivos segura) para proporcionar ayuda con esta operación. La ACL de este archivo debe configurarse para permitir solo el acceso a los administradores y al sistema.

En el ejemplo siguiente se copia la clave pública en el servidor y se configura la ACL (en que «username» se reemplaza por su nombre de usuario). Inicialmente, deberá usar la contraseña de la cuenta de usuario para el servidor.

 Nota :en este ejemplo, se muestran los pasos para crear administrators_authorized_keys file. Si se ejecuta varias veces, sobrescribirá este archivo cada vez. Para agregar la clave pública para varios usuarios administrativos, debe anexar este archivo con cada clave pública.

# Make sure that the .ssh directory exists in your server's user account home folder
ssh user1@iprueba mkdir C:\ProgramData\ssh\

# Use scp to copy the public key file generated previously on your client to the authorized_keys file on your server
scp C:\Users\username\.ssh\claveprueba.pub user1@ipprueba:C:\ProgramData\ssh\administrators_authorized_keys

# Appropriately ACL the authorized_keys file on your server
ssh --% user1@ipprueba icacls.exe "C:\ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "Administradores:F" /grant "SYSTEM:F"

Estos pasos completan la configuración necesaria para usar la autenticación con OpenSSH basada en claves en Windows. Después de esto, el usuario puede conectarse al host de sshd desde cualquier cliente que tenga la clave privada.

Instalación de OpenSSH en Windows

Ambos componentes de OpenSSH se pueden instalar mediante Configuración de Windows en dispositivos Windows Server 2019 y Windows 10.

Para instalar los componentes de OpenSSH:

  1. Abra Configuración, seleccione Aplicaciones > Aplicaciones y características y, a continuación, seleccione Características opcionales.
  2. Examine la lista para ver si OpenSSH ya está instalado. Si no es así, en la parte superior de la página, seleccione Agregar una característica y, a continuación:
    • Busque OpenSSH Client (Cliente OpenSSH) y, a continuación, haga clic en Instalar
    • Busque OpenSSH Server (Servidor OpenSSH) y, a continuación, haga clic en Instalar

Una vez completada la instalación, vuelva a Aplicaciones > Aplicaciones y características y Características opcionales y debería ver OpenSSH en la lista.

 Nota: La instalación del servidor OpenSSH creará y habilitará una regla de firewall denominada OpenSSH-Server-In-TCP. Esto permite el tráfico SSH entrante en el puerto 22. Si esta regla no está habilitada y este puerto no está abierto, las conexiones se rechazarán o se restablecerán.

Instalación de OpenSSH mediante PowerShell

Para instalar OpenSSH mediante PowerShell, ejecute PowerShell como administrador. Para asegurarse de que OpenSSH esté disponible, ejecute el siguiente cmdlet:

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

Esto debería devolver la siguiente salida si ninguno de los dos está instalado todavía:

Name  : OpenSSH.Client~~~~0.0.1.0
State : NotPresent

Name  : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

A continuación, instale los componentes de servidor o cliente según sea necesario:

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Ambos deberían devolver la siguiente salida:

Path          :
Online        : True
RestartNeeded : False

Inicio y configuración del servidor OpenSSH

Para iniciar y configurar el servidor OpenSSH para su primer uso, abra PowerShell como administrador y, luego, ejecute los siguientes comandos para iniciar sshd service:

# Start the sshd service
Start-Service sshd

# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'

# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
    Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
    New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
    Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}

Conexión al servidor OpenSSH

Una vez instalado, puede conectarse al servidor OpenSSH desde un dispositivo con Windows 10 o Windows Server 2019 con el cliente OpenSSH que se instala mediante PowerShell como se muestra a continuación. Asegúrese de ejecutar PowerShell como administrador:

ssh username@servername

Una vez conectado, recibirá un mensaje similar al siguiente:

The authenticity of host 'servername (10.00.00.001)' can't be established.
ECDSA key fingerprint is SHA256:(<a large string>).
Are you sure you want to continue connecting (yes/no)?

Al seleccionar , se agregará ese servidor a la lista de hosts SSH conocidos en el cliente Windows. En este momento se le pedirá la contraseña. Como medida de seguridad, la contraseña no se mostrará a medida que escribe. Una vez conectado, verá el símbolo del sistema de comandos de shell de Windows:

domain\username@SERVERNAME C:\Users\username>

Desinstalación de OpenSSH mediante Configuración de Windows

Para desinstalar OpenSSH mediante Configuración de Windows:

  1. Abra Configuración y, a continuación, vaya a Aplicaciones > Aplicaciones y características.
  2. Vaya a Características opcionales.
  3. En la lista, seleccione OpenSSH Client o OpenSSH Server.
  4. Seleccione Desinstalar.

Desinstalación de OpenSSH mediante PowerShell

Para desinstalar los componentes de OpenSSH mediante PowerShell, use uno de los siguientes comandos:

# Uninstall the OpenSSH Client
Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Uninstall the OpenSSH Server
Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Es posible que tenga que reiniciar Windows después si el servicio estaba en uso en el momento en que se desinstaló.

Configuración Visual Studio

Primero debemos agregar una conexión nueva. Para ello oprima las teclas Ctrl  + Shift + P ó con la tecla F1 solamente y se abrirá una ventana donde debe escribir Remote:

conectar a servidor por SSH desde Visual Studio Code

De clic en Remote-SSH: Add New Host…

agregamos los datos para iniciar la conexion

Ingresar la dirección SSH del servidor al que quieres conectar con la siguiente nomenclatura, root es el nombre de usuario, si tiene otro nombre solo cámbielo:

ssh usuario@ipprueba

Escogemos la dirección en donde se guardaran las credenciales SSH para la conexión remota con nuestro servidor:

Configurar archivo .conf

Después de agregar la nueva conexión remota se abrirá una pantalla en la parte inferior derecha de VS Code, de clic en Open Config:

Se abrirá una nueva pestaña mostrando la configuración de nuestra conexión remota.

Abrir una conexión al servidor

Oprima Ctrl + Shift + P ó F1 y en la ventana que se abra de clic en Remote-SSH: Connect Current Window to Host… para abrir una conexión al servidor:

abrimos la conexion remota

En la siguiente ventana escoja el servidor remoto al que se quiera conectar:

escogemos la conexion

Se le mostrará la huella digital, de clic en Continue:

escogemos continue

Escribe el password para acceder a su servidor vía SSH:

ingresamos la contraseña

Acceso a los archivos

A partir de este punto ya ha establecido una conexión remota con su servidor y puede verlo en el menú Remote Explorer:

conectar a servidor por SSH desde Visual Studio Code
conectar a servidor por SSH desde Visual Studio Code

Ahora vaya al Explorador de archivos y de clic en Abrir Carpeta. En la ventana que se abre escribe la ruta a la cual quieres acceder ( en este ejemplo accedemos a la carpeta que usa por default Apach pero a un windows es similar)

cd /var/www/mispruebas

escogemos la ruta

De clic en Ok, verá que se abre en el explorador la carpeta con los archivos que contiene:

accedemos al archivo remoto

Ya puede editar los archivos de tu servidor directamente en su Visual Studio Code, también puede agregar nuevos archivos solamente arrastrándolos a la ventana del editor.

Otra de las ventajas de trabajar remotamente con su servidor desde VS Code es que puede abrir una terminal también remota al mismo tiempo de estar editando los archivos:

terminal remota

Cerrar la conexión remota en SSH

Para cerrar correctamente la sesión, de clic en la parte inferior izquierda que dice SSH:nombre_conexión:

conectar a servidor por SSH desde Visual Studio Code

En la ventana que se abre escoge la opción Close Remote Connection y da clic, la conexión remota se cerrará.

En resumen: si tiene una configuración de host SSH simple, conéctese de la siguiente manera:

  • Presione F1 y ejecute el comando «Remote-SSH: Open SSH Host…».
  • Ingrese su usuario y host/IP en el siguiente formato en el cuadro de entrada que aparece y presiona enter: usuario@host-o-ip o usuario@dominio@host-o-ip
  • Si se le solicita, ingrese su contraseña (pero nos recomiendan desde Microsoft configurar la autenticación basada en clave).
  • Después de conectarse, use Archivo > Abrir carpeta para abrir una carpeta en el host.
  • Puede presionar F1 para abrir la Paleta de comandos y escribir Remote-SSH para ver una lista completa de los comandos disponibles.

La paleta de comandos esta disponible haciendo clic en el elemento de la barra de estado «Acceso rápido» de Remote en la esquina inferior izquierda para obtener una lista de los comandos más comunes. Si bien es una instalación opcional, esta extensión se lanza junto con VS Code. Las notas de la versión de VS Code incluyen un resumen de los cambios en todas las extensiones de desarrollo remoto, junto con un enlace a las notas de la versión detalladas.

Al igual que con VS Code en sí, las extensiones se actualizan durante una iteración de desarrollo. Puedes utilizar la versión preliminar de esta extensión para obtener regularmente las últimas actualizaciones de la extensión antes del lanzamiento oficial de la extensión.

Conclusión

La extensión de Visual Studio Code llamada «Remote – SSH» hemos visto que es una herramienta fantástica que permite la conexión y desarrollo remoto en un servidor o máquina virtual a través del protocolo SSH (Secure Shell).

SSH es un protocolo de red que proporciona una forma segura de acceder y administrar sistemas remotos. Permite establecer una conexión cifrada entre el cliente y el servidor, lo que garantiza la confidencialidad y la integridad de los datos transmitidos.

La extensión «Remote – SSH» de Visual Studio Code utiliza esta capacidad de SSH para permitir a los desarrolladores trabajar directamente en un servidor remoto desde su entorno de desarrollo local en Visual Studio Code. Esto significa que puedes abrir carpetas y archivos remotos, ejecutar comandos en el servidor, depurar aplicaciones y aprovechar todas las características y extensiones de Visual Studio Code mientras trabajas en un entorno remoto.

Esta extensión es especialmente útil en situaciones en las que el código fuente o las herramientas de desarrollo se encuentran en un servidor remoto, como en el caso de aplicaciones web o proyectos de desarrollo colaborativo. Permite una mayor flexibilidad y comodidad al desarrollar y mantener aplicaciones en entornos distribuidos o en la nube.

En definitiva pues la extensión de Visual Studio Code llamada Remote – SSH ayuda de manera sencilla a conectar al servidor vía SSH. Podemos usar esta herramienta para un mundo de posibilidades.

Para descargar Visual Studio Code puede hazerlo aquí.

¿ Intel core i7 o Intel Xeon?


El Intel Core i7 es una serie de procesadores diseñados para computadoras de escritorio y estaciones de trabajo de alto rendimiento, mientras que el Intel Xeon X5690 es un procesador de la serie Xeon, diseñado principalmente para aplicaciones de servidor y estaciones de trabajo de gama alta. Aunque ambos son productos de Intel, tienen diferencias significativas en términos de características y rendimiento. Aquí hay una comparación general entre el Intel Xeon X5690 y un procesador Intel Core i7 de generación reciente:

  1. Rendimiento del núcleo:
    • El Intel Xeon X5690 es un procesador de seis núcleos y doce hilos con una frecuencia base de 3.46 GHz y una frecuencia máxima turbo de 3.73 GHz.
    • Los procesadores Intel Core i7 más recientes pueden variar en términos de número de núcleos y frecuencia, pero por lo general tienen una mayor frecuencia y un menor número de núcleos en comparación con los Xeon.
  2. Características especializadas:
    • Los procesadores Xeon suelen incluir características adicionales para cargas de trabajo de servidor y estaciones de trabajo, como soporte para ECC (corrección de errores en memoria), mayor capacidad de memoria y características de virtualización avanzadas.
    • Los procesadores Intel Core i7 están diseñados más para un uso general en computadoras de escritorio y pueden carecer de algunas de las características especializadas de los Xeon.
  3. Consumo de energía:
    • Los procesadores Xeon, al estar diseñados para aplicaciones de servidor y estaciones de trabajo, tienden a tener un consumo de energía más alto en comparación con los procesadores Intel Core i7, que están optimizados para un uso más eficiente en computadoras de escritorio.

En general, si estás buscando un procesador para uso personal o gaming, los procesadores Intel Core i7 suelen ser más adecuados debido a su enfoque en el rendimiento por núcleo y su disponibilidad en configuraciones de alta frecuencia. Sin embargo, si tiene necesidades específicas de servidor o estación de trabajo, o si requiere características especializadas como ECC y mayor capacidad de memoria, entonces los procesadores Xeon, incluido el X5690, pueden ser una opción más adecuada.

Veamos en detalle de lo que estamos hablando:

Información general

Información sobre el tipo (para desktops o computadoras portátiles) y la arquitectura del Xeon X5690 y Core i7-2960XM, así como el momento de las ventas y el costo en el momento.

Lugar en el ranking de rendimiento10691351
La relación precio-calidad4.17sin datos
Tipopara el servidorpara los portátiles
Seriesin datosIntel Core i7
El nombre de código de la arquitecturaWestmere-EP (2010−2011)Sandy Bridge (2011−2013)
Fecha de lanzamiento14 de Febrero 2011 (hace 12 años)3 de Septiembre 2011 (hace 11 años)
El precio en el momento del lanzamiento$205$1,096
El precio actual$115 (0.6x)$499 (0.5x)

La relación precio-calidad

Para obtener un índice, comparamos el rendimiento de los procesadores y su coste, teniendo en cuenta el coste de otros procesadores, lo cual da una inmejorable cifra al Xeon frente al Core I7

Características

Parámetros cuantitativos del Xeon X5690 y Core i7-2960XM: el número de núcleos y flujos, señales de reloj, tecnología de proceso, tamaño de caché y estado de bloqueo del multiplicador. Indirectamente respaldan el rendimiento del Xeon X5690 y Core i7-2960XM, aunque para una evaluación precisa es necesario considerar los resultados de la prueba.

Núcleos64
Flujos128
Frecuencia base3.46 GHz2.7 GHz
La frecuencia máxima3.73 GHz3.7 GHz
Caché de nivel 164 kB (por núcleo)64K (por núcleo)
Caché de nivel 2256 kB (por núcleo)256K (por núcleo)
Caché de nivel 312288 kB (total)8 MB (total)
El proceso tecnológico32 nm32 nm
Tamaño del dado (circuito integrado)239 mm2216 mm2
La temperatura máxima del núcleo79 °C100 °C
Cantidad de los transistores1,170 million1,160 million
El soporte de 64 bits++
Compatibilidad con Windows 11
El multiplicador desbloqueado+

Compatibilidad

Información sobre la compatibilidad de Xeon X5690 y Core i7-2960XM con otros componentes del ordenador: placa base (busca el tipo de zócalo), fuente de alimentación (busca el consumo de energía), etc. Resulta útil para planificar la configuración de un futuro ordenador o para actualizar uno ya existente. Ten en cuenta que el consumo de energía de algunos procesadores puede superar ampliamente su TDP nominal, incluso sin overclocking. Algunos pueden incluso duplicar su térmica declarada, dado que la placa base permite ajustar los parámetros de potencia de la CPU.

El número máximo de los procesadores en la configuración21
SocketFCLGA1366FCPGA988
El consumo de energia (TDP)130 Watt55 Watt

Tecnologías e instrucciones adicionales

Aquí se enumeran Xeon X5690 y Core i7-2960XM las soluciones tecnológicas compatibles y los conjuntos de instrucciones adicionales. Esta información será necesaria si se requiere que el procesador soporta unas tecnologías específicas.

Instrucciones avanzadasIntel® SSE4.2Intel® AVX
AES-NI++
AVXsin datos+
Enhanced SpeedStep (EIST)++
Enhanced SpeedStep (EIST)++
My WiFisin datos+
Turbo Boost Technology1.02.0
Hyper-Threading Technology++
Idle States++
Thermal Monitoring+
Flex Memory Accesssin datos+
Demand Based Switching+
PAE40 Bitsin datos
FDIsin datos+
Fast Memory Accesssin datos+

Tecnologías de seguridad

Las tecnologías integradas en Xeon X5690 y Core i7-2960XM que aumentan la seguridad del sistema diseñadas, por ejemplo, para proteger contra los hackers.

TXT++
EDB++
Identity Protectionsin datos+
Anti-Theftsin datos+

Tecnologías de virtualización

Aquí se enumeran las tecnologías compatibles con Xeon X5690 y Core i7-2960XM que aceleran el trabajo de las máquinas virtuales.

AMD-Vsin datos+
VT-d++
VT-x++
EPT++

Soporte de Memoria RAM

Tipos, cantidad máxima y cantidad de canales de RAM soportados por Xeon X5690 y Core i7-2960XM. Dependiendo de las placas base, es posible que se admitan frecuencias de memoria más altas.

Tipos de la memoria RAMDDR3DDR3
Capacidad de memoria permitida288 GB32 GB
La cantidad de los canales de memoria32
El ancho de banda de memoria32 GB/s25.6 GB/s
El soporte de la memoria ECC+

Vídeo incorporado – Características

Parámetros generales de las tarjetas gráficas Xeon X5690 y Core i7-2960XM integradas.

Núcleo de vídeosin datosIntel HD Graphics 3000
Quick Sync Videosin datos+
Clear Video HDsin datos+
La frecuencia máxima del núcleo de vídeosin datos1.3 GHz
InTru 3Dsin datos+

Vídeo incorporado – las Interfaces

Compatible con Xeon X5690 y Core i7-2960XM interfaces y conexiones soportadas por las tarjetas gráficas.

Cantidad máxima de los monitoressin datos2
eDPsin datos+
DisplayPortsin datos+
HDMIsin datos+
SDVOsin datos+
CRTsin datos+

Periféricos

Los dispositivos periféricos compatibles con Xeon X5690 y Core i7-2960XM y sus métodos de conexión.

La revisión PCI Express2.02.0
El Número de líneas PCI-Expresssin datos16

Las pruebas de rendimiento

Estos son los resultados de las pruebas le los Xeon X5690 y Core i7-2960XM acerca del rendimiento de referencia que no están relacionadas en los juegos. La puntuación total se establece de 0 a 100, donde 100 es el procesador más rápido en el momento.


Rendimiento global en pruebas

Esta es nuestra clasificación de rendimiento de referencia combinada. Estamos mejorando regularmente nuestros algoritmos de combinación, pero si encuentras algunas inconsistencias percibidas, no dudes en hablar en la sección de comentarios, solemos solucionar los problemas rápidamente.

  • Xeon X5690 5.54  +48.1%
  • i7-2960XM 3.74

Xeon X5690 supera a Core i7-2960XM en un 48% en los resultados de referencia combinados.

Passmark

Passmark CPU Mark es un benchmark muy extendido, que consta de 8 pruebas diferentes, incluyendo matemáticas de punto entero y flotante, instrucciones extendidas, compresión, encriptación y cálculo de física. También hay un escenario separado de un solo hilo.

Cobertura de referencia: 68%

  • Xeon X5690 6983  +48.3%
  • i7-2960XM 4710

Xeon X5690 supera a Core i7-2960XM en un 48% en Passmark.

Hashrates en minería

Rendimiento Xeon X5690 y Core i7-2960XM en la minería de criptomonedas. Generalmente, el resultado se mide en m-hash / s, el número de millones de soluciones generadas por una tarjeta gráfica en un segundo.

Bitcoin / BTC (SHA256)20 Mh/ssin datos

Los requisitos oficiales del sistema

Comparación del rendimiento de Xeon X5690 y Core i7-2960XM con los requisitos oficiales del sistema del juego Fortnite.

Ventajas y desventajas


Clasificación de las prestaciones5.543.74
Novedad14 de Febrero 20113 de Septiembre 2011
Coste$205$1096
La frecuencia máxima34602700
Frecuencia base34602700
El consumo de energia (TDP)130 Vatio55 Vatio

Basándonos en los resultados de las pruebas sintéticas, la recomendación se inclina hacia el Xeon X5690 debido a su rendimiento superior en comparación con el procesador Core i7-2960XM. Tenga en cuenta que Xeon X5690 esta destinado para los servidores y las estaciones de trabajo es Core i7-2960XM – para portátiles.

Resumen

Según la información proporcionada, el Intel Xeon X5690 y el Intel Core i7-2960XM son procesadores de diferentes segmentos de mercado. El Intel Xeon X5690 está diseñado para servidores y estaciones de trabajo de alto rendimiento, mientras que el Intel Core i7-2960XM está destinado a computadoras portátiles.

Aquí hay algunas comparaciones basadas en todo lo que hemos visto:

  1. Rendimiento: Según las pruebas de referencia y puntuaciones de rendimiento, el Intel Xeon X5690 supera al Intel Core i7-2960XM en términos de rendimiento general. El Xeon X5690 tiene un rendimiento superior en aplicaciones que requieren una alta capacidad de procesamiento, como cargas de trabajo intensivas en CPU y tareas de servidor.
  2. Características: Los procesadores Xeon, incluido el X5690, suelen tener características especializadas para servidores, como soporte para ECC (corrección de errores en memoria) y capacidades de virtualización avanzadas. Por otro lado, los procesadores Core i7, como el i7-2960XM, se centran en un rendimiento equilibrado para aplicaciones de computadoras portátiles y de escritorio.
  3. Consumo de energía: El Intel Core i7-2960XM tiene un consumo de energía más bajo (TDP) en comparación con el Intel Xeon X5690. Esto se debe a que el i7-2960XM está diseñado para portátiles y debe equilibrar el rendimiento con la eficiencia energética.
  4. Precio: Según los datos proporcionados, el precio actual del Intel Xeon X5690 es significativamente más bajo que el del Intel Core i7-2960XM. Sin embargo, ten en cuenta que los precios pueden variar con el tiempo y pueden depender de la disponibilidad y otros factores del mercado.

En general, si necesita un procesador para un ordenador portátil, el Intel Core i7-2960XM sería la opción más adecuada, ya que está diseñado específicamente para este tipo de dispositivo y ofrece un equilibrio entre rendimiento y eficiencia energética. Por otro lado, si estás buscando un procesador para un servidor o estación de trabajo de alto rendimiento, el Intel Xeon X5690 podría ser la elección adecuada debido a su mayor rendimiento y características especializadas.

Otras versiones de Xeon

El procesador Intel Xeon X5690 es un procesador de la serie Xeon basado en la arquitectura Westmere-EP de Intel. A continuación, veamos una comparación general del Xeon X5690 con algunos otros procesadores relevantes:

  1. Intel Xeon X5690 vs Intel Xeon E5-2690 v2:
    • El X5690 es un procesador de seis núcleos y doce hilos con una frecuencia base de 3.46 GHz y una frecuencia máxima turbo de 3.73 GHz.
    • El E5-2690 v2 es un procesador de diez núcleos y veinte hilos con una frecuencia base de 3.0 GHz y una frecuencia máxima turbo de 3.6 GHz.
    • En términos de rendimiento bruto, el E5-2690 v2 supera al X5690 debido a su mayor número de núcleos y hilos. Sin embargo, el X5690 tiene una frecuencia base ligeramente más alta.
  2. Intel Xeon X5690 vs Intel Xeon E5-2690 v3:
    • El X5690 es un procesador de seis núcleos y doce hilos con una frecuencia base de 3.46 GHz y una frecuencia máxima turbo de 3.73 GHz.
    • El E5-2690 v3 es un procesador de doce núcleos y veinticuatro hilos con una frecuencia base de 2.6 GHz y una frecuencia máxima turbo de 3.5 GHz.
    • En términos de rendimiento bruto, el E5-2690 v3 supera al X5690 debido a su mayor número de núcleos y hilos, a pesar de tener una frecuencia base más baja.

Es importante tener en cuenta que estas comparaciones se basan en especificaciones generales y no reflejan necesariamente el rendimiento real en aplicaciones específicas. El rendimiento también puede verse afectado por otros factores como la arquitectura, la memoria caché, la tecnología de fabricación y las instrucciones admitidas por cada procesador.

Fuente https://technical.city/es/cpu/Xeon-X5690-vs-Core-i7-2960XM