Инструменты пользователя

Инструменты сайта


Боковая панель

Навигация

unix
notes
firmware
windows
Говнокод

Внешние ссылки

Внешняя ссылка

bareos

Минимальная установка и настройка Bareos на FreeBSD 12 + подключение клиента Windows

Что такое Bareos?
Bareos (Backup Archiving Recovery Open Sourced) это высоконадежное сетевое кроссплатформенное программное обеспечение для резервного копирования, архивирования и восстановления данных. Bareos, основанный в 2010 году как 100-процентное открытое ответвление проекта Bacula, активно развивается и пополняется многими новыми функциями.

Поддержка LTO Hardware-шифрования, ограничение используемой ширины канала, поддержка облачных технологий и новые практичные команды для консоли — вот далеко не полный перечень расширенных функций, предлагаемых на сегодняшний день проектом Bareos. Исходный код доступен на https://github.com/bareos/ и находится под лицензией AGPL v3. Bareos также предоставляет готовые пакеты через репозитории для всех распространённых дистрибутивов Linux и установочные пакеты для Windows.

Обновляемся

ini
portsnap fetch
portsnap extract
portsnap fetch
portsnap update

Установим СУБД Postgresql

ini
cd /usr/ports/databases/postgresql95-server

make install clean BATCH=yes
ini
mcedit /etc/rc.conf

postgresql_enable="YES"
ini
service postgresql initdb

Исправим конфигурационный файл:

ini
mcedit /usr/local/pgsql/data/postgresql.conf

listen_addresses = '*'
port = 5432

Запустим и проверим:

ini
/usr/local/etc/rc.d/postgresql start

sockstat -l4 | grep post
postgres postgres   99719 4  tcp4   *:5432                *:*

Изменим пароль, создадим пользователя, роль и добавим базу(тестовую. что бы было )) ).

ini
passwd pgsql
B4TA1Z1K

su pgsql

createuser -sdrP sector
password

createdb -O sector newdb

psql newdb
newdb=# \list

                             List of databases
   Name    |  Owner   | Encoding | Collate | Ctype |   Access privileges
-----------+----------+----------+---------+-------+-----------------------
 newdb     | sector   | UTF8     | C       | C     |
 postgres  | postgres | UTF8     | C       | C     |
 template0 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
 template1 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
(4 rows)



newdb=# \q
$ exit

Установим Apache

ini
cd /usr/ports/www/apache24
make install clean BATCH=yes

mcedit /etc/rc.conf
apache24_enable="YES" 

Исправим конфигурационный файл что бы запустился:

ini
mcedit /usr/local/etc/apache24/httpd.conf

ServerName 127.0.0.1:80

Запустим:

ini
/usr/local/etc/rc.d/apache24 start

Установим php

ini
cd /usr/ports/lang/php72
make install clean BATCH=yes

Установим расширения для php:

ini
cd /usr/ports/lang/php72-extensions/
make config

bz2
calendar
CURL 
GD
GETTEXT
MBSTRING
PDF
PDO_PGSQL
PGSQL
PSPELL
SQLITE3 - снял
XMLRPC
XSL
ZIP
ZLIB

остальное по умолчанию

# make install clean BATCH=yes

Установим мод php:

ini
cd /usr/ports/www/mod_php72 
make install clean BATCH=yes

Скопируем php.ini:

ini
cd /usr/local/etc/
cp php.ini-production php.ini

Настроим Apache для работы с php

ini
mcedit /usr/local/etc/apache24/httpd.conf

раскомментировать - mod_rewrite в httpd.conf

<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

Перезапустим:

ini
/usr/local/etc/rc.d/apache24 restart

Установим phpPgAdmin- это аналог phpMyadmin, но только для Postgresql

ini
# cd /usr/ports/databases/phppgadmin/
# make install clean

Пропишем Alias и перезагрузим Apache:

ini
mcedit /usr/local/etc/apache24/httpd.conf


Alias /phpPgAdmin "/usr/local/www/phpPgAdmin/"

<Directory "/usr/local/www/phpPgAdmin/">
        AllowOverride None
        Options None
        Require all granted
</Directory>


/usr/local/etc/rc.d/apache24 restart

Установим Bareos 17.2

# cd /usr/ports/sysutils/bareos-server/
# make install clean

Выбрал все кроме MTX (Ленточный носитель).
При установке сервера он тянет за собой клиента, там оставил все по умолчанию.

Установим web- интерфейс:

ini
cd /usr/ports/www/bareos-webui 
make install clean 

скопируем Alias для Apache:

ini
# cat /usr/local/etc/bareos-webui/apache-bareos-webui.conf

И вставим его в httpd.conf, а так же исправим пути в Alias на /usr/local/www:

ini
# mcedit /usr/local/etc/apache24/httpd.conf

меняем права:

chown -R www:www /usr/local/etc/bareos-webui
chown -R www:www /usr/local/www/bareos-webui
chown -R bareos:bareos /usr/local/etc/bareos
find /usr/local/etc/bareos -type f -exec chmod 640 {} ';'
find /usr/local/etc/bareos -type d -exec chmod 750 {} ';'

Сделаем копию папки на всякий случай:

ini
cp -a /usr/local/etc/bareos /usr/local/etc/bareos.bck
ini
mcedit /etc/rc.conf

bareos_dir_enable="YES"
bareos_fd_enable="YES"
bareos_sd_enable="YES"

Перейдем к настройке.

Добавим пользователя bareos в группы pgsql и www:

ini
pw groupmod bareos -m pgsql
id pgsql
pw groupmod bareos -m www
id www

Выполним скрипты для создания пользователя, базы и таблиц:

ini
su pgsql
/usr/local/lib/bareos/scripts/create_bareos_database
/usr/local/lib/bareos/scripts/make_bareos_tables
/usr/local/lib/bareos/scripts/grant_bareos_privileges

Зайдем в PhpPgAdmin и изменим пароль для пользователя Bareos. Можно и через консоль.

Пропишем имя пользователя БД и пароль в конфиг bareos:

ini
mcedit /usr/local/etc/bareos/bareos-dir.d/catalog/MyCatalog.conf

Catalog {
  Name = MyCatalog
  dbdriver = "postgresql"
  #dbdriver = "XXX_REPLACE_WITH_DATABASE_DRIVER_XXX"
  dbname = "bareos"
  dbuser = "bareos"
  dbpassword = "bareos"
}

Перезапустим демоны Bareos:

ini
# /usr/local/etc/rc.d/bareos-dir restart
# /usr/local/etc/rc.d/bareos-fd restart
# /usr/local/etc/rc.d/bareos-sd restart

Создадим профиль для доступа через web:

ini
cp /usr/local/etc/bareos-webui/bareos-dir.d/profile/webui-admin.conf /usr/local/etc/bareos/bareos-dir.d/profile/

Создадим конфигурационный файл admin.conf и наполним его следующим содержимым:

ini
touch /usr/local/etc/bareos/bareos-dir.d/console/admin.conf

cat /usr/local/etc/bareos/bareos-dir.d/console/admin.conf
Console {
  Name = admin
  Password = ADMIN-PASSWORD
  Profile = webui-admin
}

По секциям, копируем из первого конфига пароль и вставляем в остальные:

ini
-------BAREOS-DIR-PASSWORD ----------------------
cat /usr/local/etc/bareos/bconsole.d/bconsole.conf
mcedit /usr/local/etc/bareos/bareos-dir.d/director/bareos-dir.conf
-------------------------------------------------
-------BAREOS-SD-PASSWORD------------------------
cat /usr/local/etc/bareos/bareos-dir.d/storage/File.conf - <написать вместо "localhost" ip адрес сервера
mcedit /usr/local/etc/bareos/bareos-sd.d/director/bareos-mon.conf 
mcedit /usr/local/etc/bareos/bareos-sd.d/director/bareos-dir.conf 

-------------------------------------------------
-------BAREOS-FD-PASSWORD------------------------
cat /usr/local/etc/bareos/bareos-dir.d/client/bareos-fd.conf 
mcedit /usr/local/etc/bareos/bareos-fd.d/director/bareos-dir.conf
-------------------------------------------------

-------BAREOS-MON-PASSWORD-----------------------
cat /usr/local/etc/bareos/bareos-dir.d/console/bareos-mon.conf
mcedit /usr/local/etc/bareos/bareos-fd.d/director/bareos-mon.conf

-------------------------------------------------

Зайдем в веб интерфейс http://ip компа/bareos-webui
там уже будет один клиент, т.е. сам сервер и задания по резервному копированию конфигурационных файлов, выполните любое, чтобы убедится, что все в порядке, если все прошло успешно, то приступаем к установке клиента.

Подключим клиента.

Имя моего компа - desktop-vrt4qkq

версия клиента 17.2 не работает под Windows 10.
Скачиваем свежий, если у вас сервер 17.2 и не используется TLS, а клиент 18.2, то TLS нужно отключить, в 18-й версии он включен по умолчанию.

http://download.bareos.org/bareos/release/17.2/windows/ http://download.bareos.org/bareos/release/18.2/windows/

Step 1.

Step 2.

Step 3. + прописать ip компа

Step 4. Скопировать секцию клиент. она нам пригодится.

В клиенте 18.2 по умолчанию включено шифрование.
В данной инструкции мы не рассматриваем этот вариант, поэтому отключим его.

после установки:

ini
C:\ProgramData\Bareos\bareos-fd.d\director\bareos-dir.conf 


Director {
  ...
  TlsEnable = no
  TlsRequire = no
  ...
}

Далее перезапустите службы или комп :-)

С клиентом windows покончили =) вернемся в серверную часть:

ini
cd /usr/local/etc/bareos/bareos-dir.d/client

touch desktop-vrt4qkq-fd.conf

Вставим секцию Client из того что нам сгенерировало приложение под Windows:

ini
mcedit desktop-vrt4qkq-fd.conf

Client {
  Name = desktop-vrt4qkq-fd
  Address = 192.168.88.242
  Password = "ek/X5veq4LiO6w0JGoXpVF2Hb2zeGK29lUd81Cdrgy6h"
  # uncomment the following if using bacula 
  # Catalog = "MyCatalog"
}

Продолжим добавление клиента:

ini
 
cd /usr/local/etc/bareos/bareos-dir.d/job

cp backup-bareos-fd.conf desktop-vrt4qkq.conf

root@bareos:/usr/local/etc/bareos/bareos-dir.d/job # cat desktop-vrt4qkq.conf
Job {
  Name = "desktop-vrt4qkq"
  JobDefs = "desktop-vrt4qkqJob"
  Client = "desktop-vrt4qkq-fd"
}
ini
cd /usr/local/etc/bareos/bareos-dir.d/jobdefs
cp DefaultJob.conf desktop-vrt4qkqJob.conf

cat desktop-vrt4qkqJob.conf

JobDefs {
  Name = "desktop-vrt4qkqJob"
  Type = Backup
  Level = Incremental
  Client = desktop-vrt4qkq-fd
  FileSet = "Workstation"                     # selftest fileset                            (#13)
  Schedule = "WeeklyCycle"
  Storage = File
  Messages = Standard
  Pool = Incremental
  Priority = 10
  Write Bootstrap = "/var/db/bareos/%c.bsr"
  Full Backup Pool = Full                  # write Full Backups into "Full" Pool         (#05)
  Differential Backup Pool = Differential  # write Diff Backups into "Differential" Pool (#08)
  Incremental Backup Pool = Incremental    # write Incr Backups into "Incremental" Pool  (#11)
}
ini
cd /usr/local/etc/bareos/bareos-dir.d/fileset 

cp WindowsAllDrives.conf Workstation.conf


cat Workstation.conf

FileSet {
  Name = "Workstation"
  Enable VSS = yes
  Include {
    Options {
      Signature = MD5
      Drive Type = fixed
      IgnoreCase = yes
      WildFile = "[A-Z]:/pagefile.sys"
      WildDir = "[A-Z]:/RECYCLER"
      WildDir = "[A-Z]:/$RECYCLE.BIN"
      WildDir = "[A-Z]:/System Volume Information"
      Exclude = yes
    }
    File = "c:/totalcmd" - тестовая директория. 
  }
}

Отключим поддержку TLS

ini
mcedit /usr/local/etc/bareos/bareos-dir.d/client/bareos-fd.conf

Client {
  ...
  TlsEnable = no
  TlsRequire = no
  ...
}

Перезапустим все это дело:

ini
# /usr/local/etc/rc.d/bareos-dir restart
# /usr/local/etc/rc.d/bareos-fd restart
# /usr/local/etc/rc.d/bareos-sd restart

Вход в консоль - bconsole -c /usr/local/etc/bareos/bconsole.d/bconsole.conf

конфиг bareos в windows лежит в %ProgramData%\Bareos

Закончили. Этого достаточно для того что бы выполнить ваш 1-й Backup. остальное в документации =)

bareos.txt · Последнее изменение: 2019/02/19 08:34 — sector

Яндекс.Метрика