En este breve tutorial, lo guiaremos a través de los siguientes pasos: Instalar openSSH en NixOS. A diferencia de los sistemas Linux tradicionales (como Debian o RHEL), Configurando openSSH en NixOS es completamente diferente. Pero no es tan difícil.
Tabla de Contenidos
introducir
Instale SSH y habilítelo sshd
Debido al exclusivo sistema de administración de paquetes de NixOS y su infraestructura inmutable, los servicios en NixOS siguen un enfoque diferente al de las distribuciones tradicionales de Linux.
En distribuciones tradicionales de Linux como Debian o RHEL, normalmente utilizaría un administrador de paquetes como apt
o dnf
Instale paquetes desde un repositorio centralizado. Estos administradores de paquetes resuelven dependencias e instalan paquetes y sus dependencias en el sistema en ejecución.
En NixOS, sin embargo, la gestión de paquetes es más declarativa y atómica. En lugar de instalar paquetes directamente en un sistema en ejecución, NixOS crea nuevas configuraciones basadas en paquetes específicos y sus dependencias en un entorno aislado. Luego cambia a esta nueva configuración, lo que efectivamente hace que todo el sistema operativo sea inmutable.
Las principales razones de este enfoque diferente en NixOS son:
- Reproducibilidad: NixOS está diseñado para proporcionar una forma repetible y confiable de construir un sistema completo a partir del código fuente. La misma configuración producirá el mismo sistema, sin importar en qué máquina esté construido.
- Actualizaciones y reversiones atómicas: NixOS permite actualizaciones y reversiones atómicas mediante la creación de nuevas configuraciones en lugar de modificar el sistema en ejecución. Si la actualización falla o algo sale mal, puedes volver fácilmente a tu configuración anterior.
- Evite el infierno de dependencia: La administración de paquetes de NixOS resuelve las dependencias de una manera que evita conflictos entre paquetes que requieren diferentes versiones de las mismas dependencias.
- Configuración declarativa: NixOS fomenta un enfoque declarativo para la configuración del sistema, donde el estado deseado del sistema se describe en un único perfil (
/etc/nixos/configuration.nix
).
Instalar openSSH en NixOS
Para instalar OpenSSH en NixOS, debe agregarlo a la configuración del sistema y luego reconstruir el sistema.
1.edita tu configuration.nix
Crea el archivo usando tu editor de texto favorito:
$ sudo nano /etc/nixos/configuration.nix
2. Busque la siguiente línea y descoméntela. Si no existe, simplemente agréguelo.
{ [...] # Enable OpenSSH daemon services.openssh.enable = true; [...] }
Opcionalmente, puede agregar las siguientes líneas. No olvides descomentar tus preferencias.
# Optional: Customize OpenSSH configuration # services.openssh.permitRootLogin = "no"; # services.openssh.passwordAuthentication = true; # services.openssh.port = 22; # services.openssh.protocol = "2";
Guarde los cambios y salga del editor de texto.
3. Reconstruya la configuración del sistema NixOS:
$ sudo nixos-rebuild switch
Este comando reconstruirá su sistema NixOS utilizando los cambios que realizó en configuration.nix
documento.
4. Una vez completado el proceso de reconstrucción, OpenSSH debería estar instalado y ejecutándose en su sistema NixOS.
5. Usemos el comando para verificar el estado del servicio openSSH:
$ sudo systemctl sshd status
Salida de ejemplo:
Sí, sshd
¡El servicio está habilitado y funcionando!
6. Luego puede conectarse a él mediante un cliente SSH.
Por ejemplo, utilicé el siguiente comando para conectarme a NixOS desde un sistema Debian a través de SSH:
$ ssh [email protected]
aquí, ostechnix
es el nombre de usuario y 192.168.1.23
es la dirección IP de mi sistema NixOS.
Le solicitará su contraseña de usuario de NixOS. Eso es todo. Comienza a usar tu NixOS.
Verifique la versión de NixOS
Verifique que realmente haya iniciado sesión en NixOS verificando la versión de NixOS. Para verificar la versión instalada de NixOS, ejecute el siguiente comando desde la terminal:
$ nixos-version
Este comando imprimirá información de la versión de NixOS, incluida la versión de lanzamiento de NixOS, el nombre en clave y el hash de revisión de Git.
Salida de ejemplo:
23.11.5541.56528ee42526 (Tapir)
En este ejemplo, la versión de NixOS es 23.11
(versión de lanzamiento), 5541.56528ee42526
es el hash de revisión de Git, y Tapir
es el nombre en clave de esta versión.
en conclusión
En este artículo te explicamos cómo Instalar y configurar openSSH en NixOS. Si bien el enfoque de NixOS puede parecer inicialmente más complejo, ofrece ventajas en términos de confiabilidad, repetibilidad e integridad del sistema.
Lectura relacionada: