Как установить openSSH на NixOS

Установка SSH и включение sshd сервиса в NixOS отличается от традиционных дистрибутивов Linux благодаря уникальной системе управления пакетами и неизменяемой инфраструктуре NixOS.

В традиционных дистрибутивах Linux, таких как Debian или RHEL, для установки пакетов из централизованных репозиториев обычно используются менеджеры пакетов, такие как apt или dnf. Эти менеджеры пакетов устанавливают пакеты вместе с их зависимостями в работающую систему.

Однако в NixOS управление пакетами более декларативно и атомарно. Вместо непосредственной установки пакетов на работающую систему NixOS создает новую конфигурацию из указанных пакетов и их зависимостей в изолированном окружении. Затем происходит переход на эту новую конфигурацию, что делает всю операционную систему неизменяемой.

Основными причинами такого иного подхода в NixOS являются:

  1. воспроизводимость: NixOS стремится обеспечить воспроизводимый и надежный способ сборки всей системы из исходных текстов. Одна и та же конфигурация будет создавать идентичную систему, независимо от того, на какой машине она собрана.
  2. Атомарные обновления и откаты: Создавая новую конфигурацию вместо изменения работающей системы, NixOS обеспечивает атомарное обновление и откат. Если обновление прошло неудачно или возникли проблемы, вы можете легко откатиться к предыдущей конфигурации.
  3. Нет проблем с зависимостями: Управление пакетами в NixOS разрешает зависимости таким образом, чтобы избежать конфликтов между пакетами, требующими разные версии одной и той же зависимости.
  4. Декларативная конфигурация: NixOS поощряет декларативный подход к конфигурированию системы, при котором желаемое состояние системы описывается в одном конфигурационном файле – /etc/nixos/configuration.nix.

Установка openSSH на NixOS

Чтобы установить OpenSSH на NixOS, необходимо добавить его в конфигурацию системы, а затем пересобрать систему.

  1. Отредактируйте файл configuration.nix с помощью вашего любимого текстового редактора:
    sudo nano /etc/nixos/configuration.nix
  2. Найдите и уберите комментирование следующей строки. Если строки нет, просто добавьте ее.
    {
    [...]
      # Enable OpenSSH daemon
       services.openssh.enable = true;
      [...]
    }


    По желанию вы можете добавить следующие строки. Не забудьте откомментировать нужные вам настройки.
    Optional: Customize OpenSSH configuration
    services.openssh.permitRootLogin = "no";
    services.openssh.passwordAuthentication = true;
    services.openssh.port = 22;
    services.openssh.protocol = "2";

    Сохраните изменения и выйдите из текстового редактора.
  3. Перестройте конфигурацию системы NixOS:
    sudo nixos-rebuild switch

    Эта команда перестроит вашу систему NixOS с учетом изменений, внесенных в файл configuration.nix.
  4. После завершения процесса пересборки OpenSSH должен быть установлен и запущен в вашей системе NixOS.
  5. Проверим состояние службы openSSH с помощью команды:
    sudo systemctl sshd status

    Пример вывода:

    Да, sshd сервис включен и запущен!
  6. Затем вы можете подключиться к нему с помощью SSH-клиента.
    Например, я подключился к NixOS по SSH с моей системы Debian с помощью команды:
    ssh ostechnix@192.168.1.23

    Здесь ostechnix – это имя пользователя, а 192.168.1.23 – IP-адрес моей системы NixOS.
    Вы получите запрос на ввод пароля пользователя NixOS. Вот и все. Начинайте пользоваться NixOS.

Проверка версии NixOS

Убедитесь, что вы действительно вошли в NixOS, проверив ее версию. Чтобы проверить версию установленной NixOS, выполните следующую команду из терминала:

nixos-version

Эта команда выведет информацию о версии NixOS, включая версию выпуска NixOS, кодовое имя и хэш ревизии Git.

Пример вывода:

23.11.5541.56528ee42526 (Tapir)

В данном примере версия NixOS равна 23.11 (версия выпуска), 5541.56528ee42526 – хэш ревизии Git, а Tapir – кодовое имя этого выпуска.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен ostechnix.com

Похожие статьи

Комментарии (0)