3.7. Резервное копирование

Должен быть настроен SSH-доступ для использования sshfs. На сервере резервного копирования должен быть заведен пользователь – administrator.

3.7.1. Подготовка сервиса SSH

На сервере безопасности необходимо сгенерировать публичный ключ. Выполните команду:

ssh-keygen -t rsa

Далее скопировать ключ и добавить его на сервер резервного копирования в файл ~/.ssh/authorized_keys.

Выключить аутентификацию по паролю в конфигурационном файле /etc/ssh/sshd_config:

#Change to no to disable tunnelled clear text passwords
#PasswordAuthentication no

Перезапустить сервис SSH:

service ssh restart

3.7.2. Подготовка сервера

На сервере резервного копирования необходимо создать директории и назначить им права:

mkdir /opt/backup/tvdis_bu
mkdir /opt/backup/tvdis_logs_bu
chmod 777 tvdis_bu
chmod 777 tvdis_logs_bu

Для начала настройки резервного копирования необходимо выполнить подготовительную работу на сервере безопасности:

apt install sshfs
systemctl stop elasticsearch
mkdir -p /home/elk/backup
mkdir /home/elk/backup/tvdis_bu
mkdir /home/elk/backup/tvdis_logs_bu
usermod -d /home/elk -s /bin/bash elasticsearch
chown -R elasticsearch: /home/elk

Измените конфигурацию – отредактируйте файл /etc/tvdiss/api_config.json. В разделе backups укажите:

"base_dir": "/home/elk/backup/",
"local_repo_name": "tvdis_bu",
"logs_repo_name": "tvdis_logs_bu"

Выполните команду проверки КС (tvdisa checksum) из настроенного окружения:

export CONFIG=/etc/tvdiss/api_config.json
. /opt/tvdisa/env/bin/activate

tvdisa checksum

Либо, можно выполнить эту же команду в преднастроенном tmux:

tmux a

tvdisa checksum

В файл /etc/elasticsearch/elasticsearch.yml необходимо добавить строку:

path.repo: ["/home/elk/backup/tvdis_bu", "/home/elk/backup/tvdis_logs_bu"]

Далее, необходимо отредактировать файл /etc/fuse.conf:

...
#Allow non-root users to specify the allow_other or alow_root mount options
user_allow_other

3.7.3. Настройка sshfs и запуск

Выполните настройку sshfs [1]:

sshfs administrator@ip:/opt/backup_tvdis_bu /home/elk/backup/tvdis_bu/ -o allow_other

sshfs administrator@ip:/opt/backup_tvdis_logs_bu /home/elk/backup/tvdis_logs_bu/ -o allow_other

Запуск:

systemctl start elasticsearch
systemctl start tvdisa
[1]https://routerus.com/how-to-use-sshfs-to-mount-remote-directories-over-ssh/