aboutsummaryrefslogblamecommitdiff
path: root/content/operations/deploiement/noeud/SSH_sans_écran.md
blob: 510e5e0f9ed51edf1277d2e8fc35bba4641edb80 (plain) (tree)





















































                                                                                                                                                                                                                                                                                                                                                                                                                    
---
title: Installer NixOS en SSH
description: Installer NixOS en SSH sans écran ni clavier
published: true
date: 2022-08-24
tags: installation, serveur, infrastructure, réseau, sysadmin, site géographique, technique, administration
editor: markdown
dateCreated: 2021-08-24
weight: 10
---

Quick tip avant d'oublier pour installer une de nos machines ThinkCentre via SSH sous NixOS ; c'est la seule solution quand on a pas d'écran ni de clavier sous la main.
Pré-requis : une clé USB, un ordi sous NixOS.

On va créer une image d'installation nous même qui démarre le SSH et configure root avec notre clé. On créer un fichier `iso.nix` :

```nix
{config, pkgs, ...}:
{
  imports = [
    <nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix>

    # Provide an initial copy of the NixOS channel so that the user
    # doesn't need to run "nix-channel --update" first.
    <nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
  ];

  systemd.services.sshd.wantedBy = pkgs.lib.mkForce [ "multi-user.target" ];
  users.users.root.openssh.authorizedKeys.keys = [
    "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDT1+H08FdUSvdPpPKdcafq4+JRHvFVjfvG5Id97LAoROmFRUb/ZOMTLdNuD7FqvW0Da5CPxIMr8ZxfrFLtpGyuG7qdI030iIRZPlKpBh37epZHaV+l9F4ZwJQMIBO9cuyLPXgsyvM/s7tDtrdK1k7JTf2EVvoirrjSzBaMhAnhi7//to8zvujDtgDZzy6aby75bAaDetlYPBq2brWehtrf9yDDG9WAMYJqp//scje/WmhbRR6eSdim1HaUcWk5+4ZPt8sQJcy8iWxQ4jtgjqTvMOe5v8ZPkxJNBine/ZKoJsv7FzKem00xEH7opzktaGukyEqH0VwOwKhmBiqsX2yN quentin@dufour.io"
  ];
}
```

On construit l'image à partir de ce fichier de conf :

```bash
nix-build '<nixpkgs/nixos>' -A config.system.build.isoImage -I nixos-config=iso.nix

```

On le copie sur la clé USB :

```
dd if=result/iso/*.iso of=/dev/??? status=progress
sync
```

On branche la clé sur le serveur, on branche le serveur sur le réseau, on démarre le serveur et on surveille le routeur pour connaitre son IP (nom de domaine `nixos`).
Ensuite on se connecte dessus :

```
ssh root@192.168.1.X
```