Настройка BorgBackup-сервера

2024-07-29

Настройка Borg-сервера

  1. Добавьте системного пользователя 'borg', под которым borg-клиенты будут подключаться по ssh к серверу и запускать приложение borg. Пароль для этой УЗ не будет использоваться, так как borg-подключения будут производиться по ssh-ключу, но создать его требуется, иначе sshd не позволит подключиться к borg-аккаунту (даже по ssh-ключу). Сохранять пароль не обязательно.

    BORGUSERNAME="borg"
    PASSWORD="$(tr -dc 'A-Za-z0-9.,{}[]!@#$%^&*()=\|/;:"~' \
     </dev/urandom | head -c 51)"
    BORGHOMEDIR='/srv/borg'
    
    #useradd --system \
    #  --user-group \
    #  --shell /bin/sh \
    #  --create-home \
    #  --home-dir ${BORGHOMEDIR} \
    #  --password ${PASSWORD}  \
    #  ${BORGUSERNAME}
    
    useradd -r -U -s /bin/sh -m -d ${BORGHOMEDIR} -p ${PASSWORD} ${BORGUSERNAME}
  2. Создайте папку .ssh, где позже будут размещены файлы необходимые для подключения по ssh.

    sudo -u ${BORGUSERNAME} /bin/bash -c 'umask 077 && mkdir -p ~/.ssh'
  3. Установите borg-утилиту в домашний borg-каталог ~/.local/bin:

    sudo -u ${BORGUSERNAME} python3 -m pip install --upgrade --user pip
    sudo -u ${BORGUSERNAME} python3 -m pip install --user pkgconfig setuptools setuptools-scm wheel msgpack
    sudo -u ${BORGUSERNAME} python3 -m pip install --user borgbackup
  4. Проверьте работоспособность утилиты borg под УЗ 'borg':

    sudo -u ${BORGUSERNAME} /bin/bash -c '. ~/.bashrc && borg --version'

    Примерный ожидаемый вывод:

    borg 1.2.8